Skip to content

Dissolve the commit-workflow sketch (merge AFTER #7251 — its trigger fires when that lands) - #7254

Merged
briansrls merged 4 commits into
mainfrom
plans/dissolve-commit-workflow-sketch
Jul 26, 2026
Merged

briansrls merged 4 commits into
mainfrom
plans/dissolve-commit-workflow-sketch

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Jul 25, 2026 •

Copy link
Copy Markdown
Contributor

gunbc.plans.commit_workflow carried an explicit delete condition:

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.

⚠️ Merge ordering — this PR is downstream of #7251

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:

conjunct on origin/main evidence
sole roster authority ✅ TRUE ci_spec.dag gate lists and local_tidy_spec.dag:14 local_tidy_checks both project from commit_gate_roster
both handlers emit from it ❌ FALSE until #7251 lands origin/main:dag/gunbc/githooks_pre_push_emit.dag imports only extdeps.git and never references commit_gate_roster — the pre-push handler still hand-builds its bash
superseded by the landed model ✅ TRUE checkpoint 2's stated dissolution target commit_workflow_projection_scaffold is gone from the corpus; the sketch's own prose was its last mention

So 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:

  1. The prose cited 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.
  2. It asserted the hook "was slimmed to fmt-only" and that handler re-expression had landed. Neither holds on main — hence the conjunct-2 correction above.

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 GitPrePushHook enrollments on commit_gate_roster and 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_roots bind row, and the ROADMAP shelf-sketch link. docs/plans/commit-workflow.md was hand-authored (HandAuthoredDocBind), not a registered generated artifact — confirmed by its absence from the heal_generated_artifacts staging list — so it deletes with its authority rather than needing a registry withdrawal.

The neighbouring branch_merge_admission_model sketch 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 — all true, re-run after the prose fix.
  • generated_artifact_gate main_wet reaches a byte-idempotent fixed point with ROADMAP.md the only projection delta.
  • The corpus compiles clean through each run, which is what proves no module still imports gunbc.plans.commit_workflow.

Deliberately not fixed

docs/probes/unlisted_import_use_census_2026-07-24.tsv:1244-1245 still 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's cli_run.rs has all 8. target/release/claim_executor was 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 the ensure_bins path #7251 deletes: it rebuilt only when a binary was absent, never when stale.

briansrls and others added 3 commits July 25, 2026 22:30
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>
@gunbai-bot gunbai-bot Bot changed the title namespace Dissolve the commit-workflow sketch — its own dissolution trigger fired Jul 25, 2026
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review July 25, 2026 22:45
@gunbai-bot gunbai-bot Bot changed the title Dissolve the commit-workflow sketch — its own dissolution trigger fired Dissolve the commit-workflow sketch (merge AFTER #7251 — its trigger fires when that lands) Jul 25, 2026
@gunbai-bot

gunbai-bot Bot commented Jul 25, 2026

Copy link
Copy Markdown
Contributor Author

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. githooks_pre_push_slimmed_to_fmt_disposition exists only on the unmerged #7251 branch. Citing it from main was a forward reference to a row that isn't there.

Finding 2 (hook scope misstated): correct, and it invalidates more than the sentence. You noted the roster still enrolls doc-reachability and CommitCargoFmtCheck on GitPrePushHook. Checking further: origin/main:dag/gunbc/githooks_pre_push_emit.dag imports only extdeps.git and never references commit_gate_roster at all — so on main the pre-push handler doesn't project from the roster, it hand-builds its bash.

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 origin/main: conjunct 1 TRUE, conjunct 2 FALSE until #7251 lands, conjunct 3 TRUE.

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 GitPrePushHook enrollments on commit_gate_roster plus the dispositions recorded there — true on main today and true after #7251, so it holds regardless of merge order.

Not changed: docs/probes/unlisted_import_use_census_2026-07-24.tsv still names the deleted file. It's a dated measurement receipt; rows describing the corpus as of 07-24 are correct for that snapshot, and editing them to match a 07-25 deletion would falsify the measurement.

— sent from clever-pike-49

@briansrls
briansrls merged commit 995ff6b into main Jul 26, 2026
5 checks passed
@briansrls
briansrls deleted the plans/dissolve-commit-workflow-sketch branch July 26, 2026 00:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant