The whole argument, on one whiteboard
Sixteen seconds, and nothing in it is staged
The nine acts of the control layer, recorded as they ran. The act to watch is the gates refuse — each gate has the thing it protects deliberately broken, and must go red.
A recording of the real session, not a simulated terminal. If a gate had failed during the take, the recording would show it. The CI half is here →
The claim
Most agentic-SDLC material describes a workflow. This describes a control layer, and then runs it. Three things follow from that, and each one is checkable on this site:
No model in the gate
Models diagnose, propose, draft and review. The decision to allow or block is arithmetic over version-controlled YAML — the same tables governance signed off.
Evidence as a by-product
Every gate writes a JSON record as it runs. Nothing is reconstructed at audit time, because a reconstruction is a story about a control, not the control.
Survives a change of vendor
make swap RUNTIME=claude — one line of diff, and the gates, evals
and Substitution Test re-score identically under every vendor. Executed, not claimed.
Try it in two minutes
git clone https://github.com/olafkfreund/agentic-sdlc-showcase
cd agentic-sdlc-showcase
python -m venv .venv && .venv/bin/pip install -e '.[dev]'
make build test lint gates # the closed loop plus the control layer
make substitution # Appendix C, scored from the repository
make eval # 24 configuration regression cases
make negative # break each protected thing; watch every gate refuse
make negative is the one that matters.
A gate verified only by passing is indistinguishable from a gate that cannot fail.
The question this exists to answer
Which production changes touched control
SEC-API-01, which were agent-authored, at what autonomy tier, and who approved each one?
python scripts/query_evidence.py --control SEC-API-01
Seconds, from the repository. The playbook calls answering that in minutes rather than a week the single highest-value output of the whole programme. It works because every artifact in the chain opens with a machine-readable header, and every gate emits a record keyed to a control id.
Where to go next
One change, end to end
A user story from the sentence someone said in a meeting to a signed artifact — and what stays identical when you change vendor.
Two organisations adopt this
Step by step at a tier-1 bank and a growth-stage payments firm — and why everything that differs between them lives in four YAML files.
Watch it run
Two recordings of the real session — the control layer, and the same control layer running in CI. Nothing re-typed, simulated or spliced.
The gates that refuse
Twelve deliberate violations and the gate that stops each one.
The Substitution Test
Twelve checks executed against the tree — no marks for a document that claims.
Switching the agent vendor
Copilot, Claude, Gemini, Codex — one command, and the proof that nothing else moved.
The playbook itself
The full v1.1 text this repository implements, published as it is on disk.