writeonce/runtime/src
shoney.arickathil 734ddfe2d6 feat: installable toolchain — version, wovm self-locate, dist tarball
Close the 3 gaps between "builds in the repo" and "installs from a tarball
like Go", so writeonce can ship to other developers.

- VERSION file at repo root single-sources the toolchain version (0.1.0).
- `woc version` -> "writeonce 0.1.0 linux/amd64"; `wovm --version` -> "wovm
  0.1.0" (stamped by the Makefile from VERSION; --version handled only in the
  plain-wovm path so a built app never shadows its own `version` arg).
- wo.toml `[runtime] wo = ">= X.Y"` is now ENFORCED: woc refuses a project
  requiring a newer toolchain than itself (>= and bare version parsed;
  unknown operators accepted forward-compatibly). Was parsed-and-ignored.
- woc self-locates wovm: --runtime > [build] runtime > $WO_RUNTIME > a `wovm`
  beside the woc binary (Sys.executable_name) > runtime/wovm rel CWD. An
  installed woc in <prefix>/bin finds its sibling wovm from any cwd.
- `just dist` (scripts/mkdist.sh) packages writeonce-<ver>-linux-amd64.tar.gz,
  Go-shaped (archive root writeonce/, bin/{woc,wovm}, README, VERSION), with a
  drift guard asserting VERSION == woc == wovm. dist/ gitignored.
- `just install-accept` (scripts/install-accept.sh) is the gate: extract, PATH,
  version, build+run a project from an unrelated cwd, constraint refusal — 6/0.

Verified: install-accept 6/0; woc-test 565/0; wovm suites + cli_smoke;
log-watcher 7/0. Linux-amd64 only (a cross matrix is future work).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-18 01:19:20 +02:00
..
.gitkeep feat(runtime): wovm VM core (Iteration 2) 2026-08-10 09:35:55 +02:00
borrow.c feat(runtime): wovm VM core (Iteration 2) 2026-08-10 09:35:55 +02:00
borrow.h feat(runtime): wovm VM core (Iteration 2) 2026-08-10 09:35:55 +02:00
builtin.c feat(compiler): query order-by + take (9b cont.) 2026-08-16 05:20:17 +02:00
builtin.h fix: a stopping program stops (executable plan, Task 4) 2026-08-14 23:58:21 +02:00
CODE-LOGIC.md docs: status board on the compile-and-run milestone + CODE-LOGIC beside the code 2026-08-14 17:20:59 +02:00
cont.c feat(runtime): wovm VM core (Iteration 2) 2026-08-10 09:35:55 +02:00
cont.h feat(runtime): wovm VM core (Iteration 2) 2026-08-10 09:35:55 +02:00
gc.c feat(runtime): wovm VM core (Iteration 2) 2026-08-10 09:35:55 +02:00
gc.h feat(runtime): wovm VM core (Iteration 2) 2026-08-10 09:35:55 +02:00
json.c fix: close per request, soak the daemon, kill five soak-found leaks (Tasks 5+6) 2026-08-15 00:32:49 +02:00
loader.c feat(compiler): query order-by + take (9b cont.) 2026-08-16 05:20:17 +02:00
loader.h feat: secondary indexes + @unique trap (iteration 9, Task 4; wob v3) 2026-08-15 12:57:32 +02:00
main.c feat: installable toolchain — version, wovm self-locate, dist tarball 2026-08-18 01:19:20 +02:00
obj.c fix: copy-on-push closes the container double-free; line-buffer program output 2026-08-14 18:50:18 +02:00
obj.h feat: insert executes (iteration 9, Task 3) -- DB_STUB retires for insert 2026-08-15 11:15:06 +02:00
sysio.c fix: a stopping program stops (executable plan, Task 4) 2026-08-14 23:58:21 +02:00
vm.c fix: a stopping program stops (executable plan, Task 4) 2026-08-14 23:58:21 +02:00
vm.h fix: a stopping program stops (executable plan, Task 4) 2026-08-14 23:58:21 +02:00
wob.h feat: FK restrict on delete + employee sample runs; group-by parked (9b) 2026-08-16 18:37:23 +02:00