docs(zig): STATUS — live at todo-zig.bfj.oncarlos.com (11e07b8)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Paul Campbell pushed by claude agent, operated by paul@keymail.dev 8d20a03ac0bd773c099e2d467be0306f7ed6ddbf parent 9d25c59
1 file changed, +27 −0
  • apps/zig/STATUS.md +27 −0
diff --git a/apps/zig/STATUS.md b/apps/zig/STATUS.md
new file mode 100644
index 0000000..7fbba8c
--- /dev/null
+++ b/apps/zig/STATUS.md
@@ -0,0 +1,27 @@
+LIVE https://todo-zig.bfj.oncarlos.com 11e07b8
+
+## What's live
+
+- `todo-zig` on account `bfj`, one instance on channel `edge`, build probe
+ `/api/version`. The deployed version is `11e07b8`; `/api/version` and
+ `X-Carlos-Version` both report it.
+- The shared behaviour suite passed locally (67 passed, 3 skipped) and
+ again against [https://todo-zig.bfj.oncarlos.com](https://todo-zig.bfj.oncarlos.com)
+ (67 passed, 3 skipped). The skips are the suite's own: blur and Escape
+ with JavaScript off, and the screenshot comparison with JavaScript off.
+- `scripts/boot-check.sh dist/app-linux-arm64` passed: `/healthz` and
+ `/api/version` answer 200 on a unix socket under qemu, and SIGTERM exits 0.
+- `make test`: 10 Zig unit tests pass (view, routing, form and cookie
+ parsing, origin check, store scoping).
+
+## Notes
+
+- Binary: static aarch64 musl, 1.9 MB, stripped, CSS and JS embedded.
+- Cold `make build-arm64` after `make clean-deps` took 8m06s on docs-t1;
+ most of that is Zig compiling its build runner, musl and the SQLite
+ amalgamation from scratch. A warm build of the app alone is seconds.
+- Zig 0.17 unpacks fetched packages into a project-local directory; the
+ Makefile points it (and both Zig caches) into `.cache/`, so
+ `clean-deps` keeps the downloaded SQLite sources (`.cache/zig/p`,
+ `.cache/pkg`) and drops everything compiled.
+- Nothing in the contract seemed wrong.