Repository navigation
Dissolve the commit-workflow sketch (merge AFTER #7251 — its trigger fires when that lands) - #7254
Conversation
gunbc.plans.commit_workflow declared: "Delete when gunbc.commit_workflow is
the sole roster authority, both handlers emit from it byte-identically, and
this sketch is superseded by the landed model." All three conjuncts verified
by execution, so the sketch dissolves rather than being maintained (DESIGN §6:
let the mark on the carrier be the authority, no parallel-ledger docs).
Verified before deleting:
- sole roster authority: ci_spec.dag gunbc_ci_floor_gates / _regen_floor_gates
/ _floor_witness_entries and local_tidy_spec.dag local_tidy_checks all
project from commit_gate_roster; no competing roster remains.
- both handlers emit from it: ci_yaml_emit via the projected gate lists,
githooks_pre_push_emit via project_local_tidy_checks.
- checkpoint 2's dissolution target commit_workflow_projection_scaffold is
gone from the corpus (the sketch's own prose was its last mention).
Also retires two stale freeze markers the sketch left behind, which asserted
that .githooks/pre-push / githooks_pre_push_emit.dag / local_tidy_spec.dag
"are not edited". That freeze was discharged when handler re-expression landed,
and is now superseded outright by the fmt-only hook ruling (2026-07-25). The
second copy lived in plans/branch_merge_admission_model.dag, which also cited
the deleted module as its deferral precedent; both re-pointed at the carrier
disposition that actually governs.
docs/plans/commit-workflow.md was hand-authored (HandAuthoredDocBind), not a
registered generated artifact, so it deletes with its authority; the
doc_graph_roots bind row and the ROADMAP shelf-sketch link go with it.
Green by execution: doc_graph_has_no_orphan_docs, _has_no_dangling_links,
_hand_authored_slugs_not_registered, _registered_plan_roots_all_admitted,
_universe_is_nonempty all true; generated_artifact_gate main_wet reaches a
byte-idempotent fixed point with ROADMAP.md as the only projection delta.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
review 42927 — both findings confirmed and fixed, and the second one was worse than reported. Thank you, this was a good catch. Finding 1 (phantom disposition): correct. Finding 2 (hook scope misstated): correct, and it invalidates more than the sentence. You noted the roster still enrolls doc-reachability and That falsifies conjunct 2 of this PR's own dissolution trigger ("both handlers emit from it"). Root cause: I verified the conjuncts while checked out on the #7251 branch, so I validated a deletion's precondition against my own unmerged work. Re-verified against Consequence: the sketch's trigger fires when #7251 merges, not before. This PR is now explicitly gated behind it — retitled and the body carries the corrected conjunct table. The deletion is unchanged and still correct; only its timing was wrong. Fix applied: the prose no longer cites any disposition row and makes no claim about hook scope. It now states only that the freeze is retired as an instruction of the deleted sketch, and that pre-push scope is decided by the Not changed: — sent from clever-pike-49 |
gunbc.plans.commit_workflowcarried an explicit delete condition:Corrected after review 42927. My original verification of the conjuncts was performed while checked out on the #7251 branch, so conjunct 2 was checked against my own unmerged change rather than against main. Re-verified properly against
origin/main:origin/mainci_spec.daggate lists andlocal_tidy_spec.dag:14local_tidy_checksboth project fromcommit_gate_rosterorigin/main:dag/gunbc/githooks_pre_push_emit.dagimports onlyextdeps.gitand never referencescommit_gate_roster— the pre-push handler still hand-builds its bashcommit_workflow_projection_scaffoldis gone from the corpus; the sketch's own prose was its last mentionSo the trigger fires when #7251 merges, not before. Please merge #7251 first. The deletion itself is unchanged and correct; only its timing is gated.
What the review caught
review 42927 (cursor/composer-2.5) flagged two false claims in
plans/branch_merge_admission_model.dag:6, and was right on both — the second more seriously than reported:gunbc.commit_workflow githooks_pre_push_slimmed_to_fmt_disposition, which exists only on the unmerged Pre-push hook: restore to fmt-only per CLAUDE.md's documented contract #7251 branch. A forward reference to a phantom row.Both are fixed. The prose no longer cites any specific disposition row and makes no claim about hook scope; it now says only that the freeze is retired as an instruction of the deleted sketch, and that pre-push scope is decided by the
GitPrePushHookenrollments oncommit_gate_rosterand the dispositions recorded there. That statement is true on main today and remains true after #7251, so it does not depend on merge order.Scope
Deletes the sketch, its hand-authored projection, its
doc_graph_rootsbind row, and the ROADMAP shelf-sketch link.docs/plans/commit-workflow.mdwas hand-authored (HandAuthoredDocBind), not a registered generated artifact — confirmed by its absence from theheal_generated_artifactsstaging list — so it deletes with its authority rather than needing a registry withdrawal.The neighbouring
branch_merge_admission_modelsketch is corrected in place, not deleted: its own trigger has not fired.Green by execution
doc_graph_has_no_orphan_docs·_has_no_dangling_links·_hand_authored_slugs_not_registered·_registered_plan_roots_all_admitted·_universe_is_nonempty— alltrue, re-run after the prose fix.generated_artifact_gatemain_wetreaches a byte-idempotent fixed point withROADMAP.mdthe only projection delta.gunbc.plans.commit_workflow.Deliberately not fixed
docs/probes/unlisted_import_use_census_2026-07-24.tsv:1244-1245still names the deleted file. That file is a dated measurement receipt, and rows describing the corpus as it stood on 07-24 are correct for that snapshot. Editing them to match a 07-25 deletion would falsify the measurement.Side finding
Pushing this branch made the (pre-#7251) heavy pre-push hook panic:
unrecognized classification "FalsifierSubstrateLongLane". Not a source fork — this tree'scli_run.rshas all 8.target/release/claim_executorwas built 07-24 03:33, the classification landed 07-25 17:35 (#7232), and the binary contains zero occurrences of the string. The hook ran a 1.5-day-stale binary against current sources and crashed on an unrelated roster row. The mechanism is cache impurity in theensure_binspath #7251 deletes: it rebuilt only when a binary was absent, never when stale.