Commit Graph
18 Commits
Author SHA1 Message Date
surma 65464069d3 Merge v3-t22: init as a WASI systemd subset, file watchers, exit pollables (T22) 2026-11-06 23:15:39 +00:00
surma 47948d7047 Frame curl requests and scope the test fixture lifecycle 2026-11-06 22:41:47 +00:00
surma 6c9eccaa21 Add WASI curl CLI and native HTTP comparisons 2026-11-06 22:31:22 +00:00
surma f234b2d1e2 Merge v3 with T15 into v3-t22 2026-11-06 22:20:05 +00:00
surma cd324678fe Preserve indexed executable modes in WASI git 2026-11-06 20:04:06 +00:00
surma 457a966068 Isolate watcher queues and selectively reload resolved service binaries 2026-11-06 20:00:29 +00:00
surma 3e33a85a6c Merge branch 'v3' into v3-t15 2026-11-06 19:50:23 +00:00
surma 4f9919d8dd Share compilation and copy independent commands and source into new worlds 2026-11-06 19:50:23 +00:00
surma b39bbd4f18 Run world service policy in WASI init with pollable process observation 2026-11-06 19:49:19 +00:00
surma 99a8e3a8be Add WASI SSH CLI and in-process Git SSH transport 2026-11-06 19:42:00 +00:00
surma 6daa53cca4 git: match native agent workflows 2026-11-06 19:07:28 +00:00
surma ec6e20a9d7 host: sausage run with the userland bundle, real shell and services (T13)
- userland/bundle.nu builds the userland and assembles target/userland/bin
  (bin names, tools.txt aliases, brush as sh and bash).
- run and sh take --userland (default SAUSAGE_USERLAND); /bin is read-only.
- The console's bash tool runs through the process table with the
  conversation id; large output spills to the world's /tmp.
- sausage run starts the services supervisor.

P1 exit session (openai/gpt-6.1-sol, fresh world): write, read, edit, git
init/add/commit/diff/log, grep -rn, rg, find and a sed|sort|uniq|wc pipeline.
2026-11-06 17:34:11 +00:00
surma b9e3e3677d userland: search and exec tools, spawn library (T14)
rg (ripgrep 15.2), grep (ours, on ripgrep's regex crates), find and xargs
(ours), sed (uutils 0.3 wrapper), diff and cmp (uutils diffutils 0.6 with -r),
fd 10.5, jaq 2.3, env and timeout. userland/spawn is a small Command-like
client of the process interface. search-test.nu: 42 cases match native tools.
2026-11-06 17:21:51 +00:00
surma 665b8a2a03 host: wasip1 processes, wasi:http, identity, stdio options, services (T12)
- Core modules run on the host-side preview1 over the shared VFS (D41).
- wasi:http default handler in the linker; anonymous HTTPS git clone works.
  Sockets stay denied until P2.
- Each process carries the conversation (from Exec, inherited by children,
  shown in /proc/processes) and a host-assigned SAUSAGE_PID.
- Spawn requests choose pipe, inherit or null per stream.
- /config/services.yaml supervisor: live edits, restarts, crash limit 5/10 s,
  graceful stop (stdin EOF, then kill after 5 s) (D44).
- Compile caches keyed by content; PATH=/usr/local/bin:/bin.

world.rs also carries T13's optional read-only /bin mount (D43).
2026-11-06 17:21:51 +00:00
surma afff3ccda5 userland/git: --version and commit --no-gpg-sign (no-op) 2026-11-06 16:57:38 +00:00
surma 57a47b069e host: process table, shell, coreutils and harness (T8, T9)
T8: sausage:process WIT (spawn, wait, kill), one store per process over the
shared root, /proc/processes, /run, pipeline and cancellation groups, Exec.
brush and 78 uutils commands; the shared cwd-init object sets the cwd from PWD
and keeps numeric exit codes. The corpus matches native bash.

T9: V8 (deno_core) runs pi-durable, pi-ai and chord; SQLite storage in
<dir>/host/harness.sqlite (WAL, synchronous=FULL); file tools on the VFS, bash
through Exec; resumes after SIGKILL.
2026-11-06 16:34:34 +00:00
surma 4b27e9afd5 userland/git: git-compatible CLI on v2's gix code (T10)
Local workflow, smart-HTTP clone/fetch/push and public HTTPS clone/fetch match
native git in stdout and exit codes. Only WASI imports (wasi:http, exit-with-code).
2026-11-06 16:07:57 +00:00
surma 409da85124 v3: host crate skeleton, userland workspace, AGENTS.md for v3
The workspace is now host/ and vfs/. v2 crates leave the workspace as reference.
host/src/exec.rs is the contract between the process table and the harness.
2026-11-06 15:14:49 +00:00