feat: establish zara-server lifecycle boundary via RAGE #140
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/zara!140
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "rage/139-daemon"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
RAGE issue
Consumes #128 under TASK #139 and daemon epic #127.
Immutable RAGE start commit:
12d28bcb28a2b48750875050ad7c21ebbbd636d8.Architecture
zararemains the client-facing executable.zara-serveris the long-lived service executable.ZaraClientis the transport-neutral client seam.RuntimeSupervisorowns principal-explicitRuntimeHostslots.flockin an owner-private runtime directory.RAGE evidence
rage/daemon-128-research.orgrage/daemon-128-design.orgrage/daemon-139.orgTDD evidence
The TDD/maximum-meaningful-coverage policy was strengthened during this already-running iteration. The initial implementation scaffold predates that instruction and is not used as completion evidence by itself.
Observed red gates include:
2bf98ace0629c0ece015ef53aea7f5f0ebe39e63: 6 failed / 737 passed, proving the new principal-whitespace and close-before-start requirements; one unrelated test assumption was corrected without changing production behavior.45cf53d8f2afa6b104f6579f211710ba6ae6322b: 1 failed / 743 passed, with the sole failure proving thatflake.nixlacked the requiredzara-serverpackage/app contract.9a46128da4d84a549f421ba14841e8cd35b25905: canonicalscripts/test-all.shpassed (744 passed; server lifecycle 37 passed), but CI #233 exposed one pre-existing hermetic Nix-check defect in the real MCP Streamable HTTP regression:FileNotFoundErrorbecause the isolated pytest derivation did not provide the system CA path required by MCP v2/httpx2.The MCP regression was not skipped or weakened.
5d141ae456e7edef219bd3e21061d828855650c1wires Nixcacertinto the isolated pytest check and exports the explicit CA bundle path.Production changes for feature behavior were made only after their red tests were observed. Coverage exercises success, startup/degraded paths, explicit principal ownership/mismatch/caps, shutdown and timeout/failure paths, late-result suppression, lease ownership/duplicate/symlink behavior, real SIGTERM process shutdown, client event isolation, wheel entrypoints, and Nix packaging/wrapper behavior.
Packaging and gate integrity
zara-server=zara.server:main.packages.zara-serverandapps.zara-serverand includes it in the aggregate environment.zara-server --help.scripts/test-server-lifecycle.shis part of the canonicalscripts/test-all.shgate.nix flake checkbefore the packagednix build.Exact-head merge gate
Current head:
0a961fa21dbc339affdd87b46831ee94c5871d7b.CI #235 is the authoritative exact-head run and must pass all of:
scripts/test-all.shnix flake checknix buildzara-serverwrapper/app checksThe PR remains draft and must not merge unless all required checks are green for this exact head.