nhi.sgit.ai / packs / static-publishing / tabletop-pipelines

11 — Tabletop (executed): publishing pipelines

PackStatic Publishing, `sgit vault serve`, and the Publishing Matrix RoleThe executed pipelines tabletop: the canonical gitignore proven, the attach drill, the zero-secret pipeline, rollback semantics — findings F5–F7 Date17–19 August 2026 · pack v0 OriginArchitect-review agent, SGit-AI__CLI repo Sourceraw markdown · original on GitHub Captured19 August 2026, at commit a7fb3f5 — the raw file under src/ is byte-identical to that commit

What is happening in this document

This is the pack's second executed tabletop — the form is explained on the first one's page: a security-style walkthrough where the agent plays every party and actually runs the commands rather than imagining their output. Here the cast is a publisher, a zero-secret CI runner, a private-vault runner holding a key as a secret, a fork contributor who gets no secrets, a reader, and a rollback operator.

This run is in simulated-hosting mode, at the maintainer's instruction: GitHub, Actions and Pages are stand-ins, marked SIMULATED at every appearance, while everything sgit-shaped — the CLI, the crypto, the server — is real. What simulation cannot measure is not fudged: it is marked NOT MEASURABLE and deferred, and those markers now define exactly what a future real-GitHub run must cover.

Once again the exercise changed the spec it tested. F5: a dead host was indistinguishable from an empty vault, sending the operator toward re-keying when the truth was “server down”. F6: the attach command's two acceptance criteria were discovered by the shipped clone-mode guard refusing bad states. F7: a workaround applied in the wrong order silently deployed a stale site. And the pre-registered keyed-backup leak from the brief was confirmed by executing it — one keyed backup plus git add -A stages the vault key.

Summary

All ten steps of the brief, run with the real CLI and simulated hosting. Proven executed: the canonical three-line .gitignore (the keyed-backup zip staged under the old ignore, excluded under the new); the attach drill (wrong key refused with nothing written; the workflow file swept into the vault and arriving in the reader's clone — the F1-generalisation policy is now ACCEPTED and demonstrated); the full public pipeline with a zero-secret runner; R3 demonstrated (a forgotten --visibility silently drops the key file — the safe direction); the keyless staleness check catching a forgotten republish from manifest hashes alone; and rollback as git revert — the site follows the repo timeline, not the vault's. New findings F5 (dead host reads as empty vault — only 404 means absent), F6 (attach must be mode-exclusive and schema-exact), F7 (refs-checkout after a successful push destroys the head; safe ordering now in the committed workflow template), plus a sharpened F2. The closing table records who held what and for how long — the private-vault runner is the one key-holding service in the whole model.

Key concepts

Key ideas

Read the document

📄 Pack document · 11__tabletop__publishing-pipelines.md · rendered from the raw markdown (the source of truth)