Skip to content

DESIGN.md and .gitignore had drifted from their generators: hoist the hand-added doctrine back into the .dag authorities - #8930

Merged
briansrls merged 1 commit into
mainfrom
session/valiant-heron-211
Aug 22, 2026
Merged

briansrls merged 1 commit into
mainfrom
session/valiant-heron-211

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

Regenerating the committed artifacts from dag/tools/generated_artifact_gate.dag
main_wet over a clean tree produced a two-file divergence, which is the full
census:

  • .gitignore — four hand-added negations (!docs/probes/shadow_direct_call_arg_conformance_2026-08-22/{summarize,adjudicate,join_board}.py and !docs/probes/e0308_classify_sites.py) exist only in the committed file. Regeneration deleted all four, which would have re-ignored four committed probe scripts.
  • DESIGN.md — two paragraphs. The Recurring-failure-modes line had gained the authority substitution and reachability read as occupancy entries by hand; the CI bullet had been re-pointed to run 32553487573 (967b5bc1b92) with the updated counters, the 11.6% decline figure, and the closing sentence about transcribed receipt counters being positional citations. Regeneration reverted both to the older text — doctrine deleted silently, since neither gate runs in CI today.

The hand content is now the authority's content:

  • gunbc.design_document carries both paragraphs verbatim.
  • The four probe scripts are modeled as IgnoreArtifact variants in gunbc.gitignore_model, rendered in gunbc.gitignore_emit, and enrolled in the PythonLocalDevScript group in gunbc.gitignore_authority — one row per path, in the position the committed file already had them.
  • gitignore_gate_test witness_has_probe_script_allowlists asserts all four, so a future regeneration that drops them goes red rather than quiet.

Verified by execution: after the change, main_wet over a clean tree leaves
DESIGN.md and .gitignore byte-identical to HEAD (git status reports only
the four .dag edits), where before it reported both artifacts modified.

Co-Authored-By: Claude Opus 5 noreply@anthropic.com

🤖 Generated with Claude Code

… hand-added doctrine back into the .dag authorities

Regenerating the committed artifacts from `dag/tools/generated_artifact_gate.dag`
`main_wet` over a clean tree produced a two-file divergence, which is the full
census:

- `.gitignore` — four hand-added negations (`!docs/probes/shadow_direct_call_arg_conformance_2026-08-22/{summarize,adjudicate,join_board}.py` and `!docs/probes/e0308_classify_sites.py`) exist only in the committed file. Regeneration deleted all four, which would have re-ignored four committed probe scripts.
- `DESIGN.md` — two paragraphs. The Recurring-failure-modes line had gained the `authority substitution` and `reachability read as occupancy` entries by hand; the CI bullet had been re-pointed to run `32553487573` (`967b5bc1b92`) with the updated counters, the `11.6%` decline figure, and the closing sentence about transcribed receipt counters being positional citations. Regeneration reverted both to the older text — doctrine deleted silently, since neither gate runs in CI today.

The hand content is now the authority's content:

- `gunbc.design_document` carries both paragraphs verbatim.
- The four probe scripts are modeled as `IgnoreArtifact` variants in `gunbc.gitignore_model`, rendered in `gunbc.gitignore_emit`, and enrolled in the `PythonLocalDevScript` group in `gunbc.gitignore_authority` — one row per path, in the position the committed file already had them.
- `gitignore_gate_test` `witness_has_probe_script_allowlists` asserts all four, so a future regeneration that drops them goes red rather than quiet.

Verified by execution: after the change, `main_wet` over a clean tree leaves
`DESIGN.md` and `.gitignore` byte-identical to HEAD (`git status` reports only
the four `.dag` edits), where before it reported both artifacts modified.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@briansrls
briansrls merged commit f75ac44 into main Aug 22, 2026
1 check passed
@briansrls
briansrls deleted the session/valiant-heron-211 branch August 22, 2026 22:40
gunbai-bot Bot pushed a commit that referenced this pull request Aug 22, 2026
… this branch was in review

TWO CONFLICTS, AND ONE OF THEM IS THE SEAL DOING ITS JOB.

extdeps.tools.gnu_coreutils -- textual. main (#8930) deleted the
`gnu_coreutils_diff_flags_dissolve_on` row and its `std.dissolution` import,
replacing the row with a leading annotation on `grep_recursive_numbered_flags`
that says why a `diff` flags literal must not come back. This branch had added
argv builders and widened the `std.types` import in the same two regions. Took
main's deletion whole -- the row and the import are gone -- and kept this
branch's builders and its `{ NonEmptyStr, String, List, FilePath }` import,
which is the union both sides need. Nothing in the tree still references the
deleted row.

gunbc.fabric_witness_run -- SEMANTIC, and git merged it cleanly, which is
exactly why it needed reading rather than trusting. main added
`cited_symbol_run_command`, a NEW hand-built `ArgvCommand { argv: [...] }`
record literal with the binary path and mode flag spelled inline, landed while
this branch was in review. That construction does not exist any more: this
branch splits the carrier into `program` / `arguments` and seals it behind the
`argv_command` mint. Auto-merge produced a file that would refuse.

Converted it the same way as the other 58, and to the builder this branch
introduced for precisely this shape -- `claim_executor_command(mode_flag:,
operands:)` from `gunbc.claim_executor_cli`, which already owns "where the
release binary lives" for `floor_run_command` two functions below it. The
inline `"target/release/claim_executor"` is gone with it, so the path is one
fact again rather than two that agree. No admit-list change: the caller reaches
`argv_command` through `claim_executor_command`, which is already admitted.

That is the deletion-as-census working across a merge rather than within one
diff -- a new construction of a removed shape cannot arrive quietly, because the
constructor it needs is gone.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DhAfyPkuxnjZaTzPn5PyE1
gunbai-bot Bot pushed a commit that referenced this pull request Aug 22, 2026
#8930 ("DESIGN.md and .gitignore had drifted from their generators") landed
at 22:40Z and edits dag/gunbc/design_document.dag -- the file this PR is
about. It hoisted the same three entries this PR was hoisting: authority
substitution, reachability read as occupancy, and the refreshed floor
counters. Main now carries all three in BOTH the authority and the
projection.

So most of this PR became redundant rather than conflicting, and resolving
it as a textual merge would have landed TWO COPIES of one hoist -- the
duplicated-authority shape, in the file that defines the rule against it.
Resolved as a deletion instead: main's row plus only this PR's remaining
unique content, the "total at the level examined" entry.

DESIGN.md was NOT taken from this branch. The generated-artifact merge
driver refuses rather than picking a side: it left our stale copy in the
worktree with no conflict markers and printed the regeneration recipe. That
copy predates #8929's edit to the section 4b attainable-ceiling line, so
committing it would have silently reverted another lane's work in a file
whose diff shows only additions. Rebuilt from main's DESIGN.md with this
PR's one entry appended, so the only line differing from main is the
failure-modes row.

Verified rather than asserted:
  each of the four entries appears EXACTLY ONCE in each file
  authority row unescaped == projection row, 7748 == 7748
  DESIGN.md differs from main on exactly one line

Merged rather than rebased, per the repo's merge policy.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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