The gate list contradicted itself across AGENTS.md, instructions/gates.md and the command records' gate names. The Rebase-Review Gate is now listed, `new project`'s exit 42 is no longer a pseudo-gate, gates.md and the explanation page link to the one list instead of counting, and a register plus a docs verify check keep the three in step. Files changed: - AGENTS.md - CHANGES.md - VERSION - docs/explanation/why-gates-are-code.md - docs/reference/commands/pages.md - docs/reference/commands/types-instructions-and-docs.md - docs/reference/exit-codes.md - instructions/gates.md - tools/CONTRACT.md - tools/chemenu/cli_contract.py - tools/chemenu/commands/docs_verify.py - tools/chemenu/commands/doctor.py - tools/chemenu/commands/git_publish.py - tools/chemenu/commands/new_page.py - tools/chemenu/errors.py - tools/chemenu/mcp/server.py - tools/chemenu/tests/test_cli_contract.py - tools/chemenu/tests/test_docs_verify.py - tools/chemenu/tests/test_git_publish.py - tools/chemenu/tests/test_reference_doc.py Co-Authored-By: Claude Code <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
Explanation
Why the stack is built the way it is. These pages are background for humans and agents alike:
read by link or on request, never as instruction, and they carry no normative sentence - a rule
lives in AGENTS.md or a CONTRACT.md, and a page here only gives its reasons.
- architecture.md - what the stack is made of, and how its parts divide the work
- telemetry-and-evaluation.md - how the stack observes what an agent did, and how that record turns into a score
- pipeline-rationale.md - why the pipeline has four stages
- ownership-and-templates.md - why a
.templatesplit exists, and why an instance comes only from a release - language-boundaries.md - why the control plane is English everywhere and the KB language is a value
- why-gates-are-code.md - why the gates are code rather than instruction
- version-model.md - why a version number answers a compatibility question and a migration question separately
- knowledge-and-commitment.md - why commitments live in a task
tracker rather than in
kb/ - model-and-effort-selection.md - which model and effort suit which kind of session, for the harness that has to choose