Repository navigation
Canon / spine lockstep red on main: constitution hash drift since #1041 + rsr spine dogfood red #1094
Copy link
Copy link
Closed
Labels
scaffoldingRSR templates, repo init, instantiation, project skeletonsRSR templates, repo init, instantiation, project skeletonstech-debtKnown shortcut, drift, or hygiene owed - includes cleanupKnown shortcut, drift, or hygiene owed - includes cleanup
Description
What is red
Canon / spine lockstep (Gate A, scripts/check-canon-lockstep.sh) fails on standards main itself (5fb9ad19), not only on PRs that wake it. Surfaced by #1088 (run 36737173709, job 109961819824); reproduced locally against a clean checkout of main and a fresh clone of rsr-template-repo at 8256a6e7:
FAIL constitution 0-canon/constitution/
declared e0f2c790f01b05bd…
actual be48496f7f786d9a…
FAIL dogfood-gate is 'failure' at spine@8256a6e
GATE A FAILED — the canon and the spine are not in lockstep.
The gate is path-filtered, so main never runs it and the drift stayed invisible until a PR touching the filtered paths woke it.
Cause (measured)
- Constitution hash drift.
canon.lockwas last bumped by release(canon): canon-v2.1.1 — ADR-0003 ratification (lifecycle flip) #861 (canon-v2.1.1, 2026-09-19).0-canon/constitution/was then edited by docs(canon): open CHANGE-PROCEDURE step 1 for "Always leave it working" (PROVISIONAL — merging opens the proposal, does not adopt it) #1041 (2026-09-23, CHANGE-PROCEDURE step 1 for "Always leave it working") without a matchingcanon.lockversion bump and hash rewrite. - Spine dogfood red.
rsr-template-repomainat8256a6ehas its dogfood gate infailure. Related: julia-library archetype: children cannot go green (invalid actions.lock ⇒ startup_failure, linter, allowlist, canon lockstep) + arrival pack still CLADE-only rsr-template-repo#211 (archetype children cannot go green, canon lockstep among the listed causes).
Acceptance criteria
-
canon.lockcarries the current0-canon/constitution/hash under a bumped canon version, per the canon CHANGE-PROCEDURE (not a bare hash rewrite). - The rsr-template-repo dogfood gate is green on its
main, or the lockstep gate's spine pin moves to a spine commit whose dogfood gate is green. -
bash scripts/check-canon-lockstep.sh --canon . --spine <rsr-template-repo checkout> --base origin/mainexits 0 on standardsmain. - Positive control: the same command, with one byte of
0-canon/constitution/changed andcanon.lockleft alone, exits non-zero namingconstitution. - Follow-up decided: should this gate also run on
pushtomain(or on a schedule), so drift is caught at the commit that causes it instead of by the next unrelated PR?
Per the standing stopping rule this is an issue, not a blocker for #1088.
🤖 Generated with Claude Code
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
scaffoldingRSR templates, repo init, instantiation, project skeletonsRSR templates, repo init, instantiation, project skeletonstech-debtKnown shortcut, drift, or hygiene owed - includes cleanupKnown shortcut, drift, or hygiene owed - includes cleanup
Activity
chore(canon): PATCH 2.1.1 -> 2.1.2, record the missed constitution bump
chore(canon): PATCH 2.1.1 -> 2.1.2, record the missed constitution bump