094-one-gate-and-the-boundaries-it-holds
One gate, and the boundaries it holds
The governed loop has one definition and three boundaries where it is enforced: the commit, the pull request, and the merge. Five specs described that, each written against a copy the repository distributed. 020 put the merge driver in `.githooks/`; 064 wrote the composite gate as `kit/Makefile` and the workflow as `kit/govern.yml`; 089 fixed the guard that conflated a skip with a failure; 090 added the commit-boundary hook; 114 gave the target its controls and made the workflow call it instead of restating it. Spec 092 removed the copies and moved the gate to the repository root. This spec is the gate, in one place: the target and its controls, the two CI legs that call it, the commit-boundary hook that refuses without repairing, and the merge driver that resolves a same-shard conflict by regenerating rather than by leaving markers.
Read the full pinned specification ↗Relationships
depends on
depended on by
- 095-the-corpus-describes-what-exists
- 099-a-merged-acceptance-is-asked-again
- 117-the-gate-resolves-the-binary-it-documents
- 122-a-commit-refuses-an-unresolved-merge
- 123-a-startup-verdict-names-its-reader
- 134-the-suite-runs-on-windows
- 135-the-toolchain-floor-and-dependencies-are-checked
- 156-statecraft-profile-10-governs-this-repository
Claimed units
- establishes
{ "kind": "file", "path": "Makefile" } - establishes
{ "kind": "directory", "path": ".githooks/" } - establishes
{ "kind": "file", "path": ".github/workflows/ci.yml" } - establishes
{ "kind": "file", "path": "crates/spec-spine-core/tests/gate.rs" }
Source headings
- 094: One gate, and the boundaries it holds
- 1. Purpose
- 1.1 One chain, five documents, and a copy in each
- 1.2 Three boundaries, one definition
- 1.3 The five this replaces
- 2. Territory
- 3. Behavior: the one definition
- 3.1 The target
- 3.2 The language targets are guarded on a manifest, and the guard is an `if`
- 3.3 The ownership assertion is conditional, and every skip is announced
- 3.4 The coupling step has explicit controls
- 3.5 The gate holds on a corpus with no code
- 4. Behavior: the boundaries
- 4.1 The pull-request and push legs call the target
- 4.2 The commit boundary refuses; it does not repair
- 4.3 The merge boundary regenerates rather than marking
- 5. The tests
- 6. What the five said that is not carried here
- 7. Out of scope
- 8. Resolved decisions
- Verification
Frozen anchors
No frozen anchors declared.