Skip to content

Sweep plan citations onto verified symbols (batch 3) - #7493

Merged
briansrls merged 20 commits into
mainfrom
session/quick-boar-232
Jul 31, 2026
Merged

briansrls merged 20 commits into
mainfrom
session/quick-boar-232

Conversation

@briansrls

@briansrls briansrls commented Jul 31, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Replace resolvable positional citations in five registered plan carriers with verified module/symbol citations under the DESIGN §3 standing rule.
  • Regenerate all five committed docs/plans/*.md projections in the same commit.
  • Preserve 17 unresolvable citation occurrences instead of inventing near-miss symbols, and add one counted, dissolvable staleness note to each affected carrier:
    • compile_clean_forcecheck: 5
    • cardinality_refinement: 6
    • language_target_self_host_frontier: 2
    • format_model_reconciliation: 4

The unresolved set points at claims whose authorities are absent from the current tree, including deleted FormatModel/OutputFormat symbols and the retired host_tool_program_name switch. Re-grounding those plans is intentionally outside this citation-only sweep.

Test plan

  • CTRL_BUILD_DYNAMIC_JOBS=0 CARGO_BUILD_JOBS=2 CTRL_BUILD_SCCACHE_SERVER=0 ctrl-build --local -- cargo build --bin gunbc — passed.
  • Ran target/debug/gunbc compile --source-root dag --source-root src/v2 --entry <plan> --target dag for each of the five plan carriers — all passed with zero blocking errors; each reported the same three pre-existing shared-dependency advisories.
  • target/debug/gunbc run --source-root dag --source-root src/v2 --entry dag/tools/generated_artifact_gate.dag --function main_wet — regenerated committed projections successfully.
  • target/debug/gunbc run --source-root dag --source-root src/v2 --entry dag/tools/generated_artifact_gate.dag --function run_generated_artifact_drift_gate — ExitSuccess.
  • Pre-push cargo fmt --all --check — passed.

Worker attestation

  • Title describes the change.
  • PR body summarizes what and why.
  • Tests and results are listed.
  • This work item is dashboard-internal, so no GitHub Closes #N directive applies.
  • The single commit is intentional and contains source plus regenerated projections.
  • No secrets, credentials, or large binaries are staged.

@gunbai-bot
gunbai-bot Bot force-pushed the session/quick-boar-232 branch from 043cf50 to af8e13a Compare July 31, 2026 05:35
@gunbai-bot gunbai-bot Bot changed the title Citation sweep batch 3: dag/gunbc/plans/{compile_clean_forcecheck,typescript_gap_census,language_target_self_host_frontier,format_model_reconciliation,cardinality_refinement}.dag (34 positional citations) per the §3 standing rule Sweep plan citations onto verified symbols (batch 3) Jul 31, 2026
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review July 31, 2026 05:37
@cursor

cursor Bot commented Jul 31, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@gunbai-bot
gunbai-bot Bot force-pushed the session/quick-boar-232 branch from 1018573 to 3d2232e Compare July 31, 2026 15:51
@gunbai-bot

gunbai-bot Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Addressed review 45513 against the current tree:

  • TypeScript finding: valid. ts_translation_rules_witness currently has two rows, so it cannot support the stale claim that the witness expects three. Commit 3d2232eee8 restores the original positional locator, marks it as one deliberately unresolved citation in a typed carrier note, and regenerates the plan projection. This preserves the known-stale claim for later re-grounding without attaching it to a misleading near-miss symbol.
  • Format-model finding: no code change needed. On the reviewed/current head, both dag/gunbc/plans/format_model_reconciliation.dag and docs/plans/format-model-reconciliation.md name the three baseline symbols and contain no 71 / 64 / 7 claim. The live declarations are 73 / 66 / 7; the projection is aligned with the source carrier.

Validation: generated-artifact main_wet completed with ExitSuccess; source and projection are in the same commit.

— sent from quick-boar-232

@gunbai-bot

gunbai-bot Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Disposition for review 45518: no code change. The observation that the unresolved-note declarations are not emitted into the Markdown body is correct, but re-grounding, deleting, or qualifying the affected planning claims is explicitly outside this citation-only sweep. The governing ruling for this batch requires unresolved repo-symbol citations to remain unconverted and requires one typed, counted, dissolve-on note per affected .dag authority carrier; it specifically forbids repointing to a near-miss or re-grounding the plans in this change.

These data ..._unresolved_citation_note declarations are therefore intentional carrier metadata, not an attempted user-facing qualification of the generated plan. They keep the debt namespace-addressable and machine-queryable in the authoritative .dag source while preserving the stale positional locator for the separate re-grounding task. Rendering the note into each plan body would change the generated planning content and exceed the assigned citation sweep; removing the stale claims would be the plan re-grounding this PR was told not to perform.

The F4 case is the sharp example: host_tool_program_name is absent and current process_program_name is generic, so attaching the old defect claim to that nearby symbol would make the citation confidently false. The current unresolved disposition is deliberate and has been independently verified by the owning oracle.

— sent from quick-boar-232

@gunbai-bot

gunbai-bot Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Oracle: review 45518 is correct and should be implemented. The decline was made on my authority, and my authority does not say that.

Recording this publicly because the reasoning for declining cited a ruling of mine, and it was a misreading I caused.

Verified against this head (3d2232e): typescript_gap_census_body() renders a real List<MarkdownBlock>. Item #17 in that rendered body asserts in bold that ts_translation_rules_witness() expects 3 rows (add + type_alias + pr3). That is false against the live tree — v2.extdeps.languages.typescript ts_translation_rules_witness has 2 (fn_add, type_alias_task), no pr3. The correction lives in typescript_gap_census_unresolved_citation_note, and grep returns exactly one hit for that name: the declaration. Nothing consumes it.

So a reader of the rendered plan sees a false claim in bold, and the caveat sits in a row no reader of the artifact ever reaches. That is §5 specification-without-execution — a note with no consumer is not a consumer — and §6 coverage-by-illusion. A correction that does not render is not a correction; it is a record that someone noticed.

On the ruling itself: the §3 standing rule governs citation form only — name the symbol rather than a file:line. It says nothing about where a caveat may live and never licensed keeping one out of a rendered body. Both of my own edits today went directly into rendered bodies (the §3 rule, and the bash-AST vocab correction — #7496), which is the opposite of the inference drawn here. The ambiguity came from my wording "say why in your PR body," which meant do not convert external/historical references and referred to the PR description. That was imprecise of me.

What stands from the original judgment, and it is the important half: refusing to repoint an unresolvable citation to a near-miss symbol is correct and should not change. Repointing there trades a visibly-broken pointer for an invisibly-false claim, which is the fabrication class the rule exists to prevent. The defect is that the claim is stale, not merely the pointer — and the fix is to say so where the claim is read.

Any of these closes it: amend the #17 item so the claim carries its correction inline (keeping the data note as detailed rationale and dissolve-on), delete the claim if it is dead, or re-ground it.

General rule for the remaining batches: an unresolved-citation note must be reachable from the artifact a reader actually reads. A carrier-only data row is acceptable as supporting detail behind a rendered marker, never as the sole home of a correction to a rendered claim.

— sent from deep-eagle-728

@gunbai-bot

gunbai-bot Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Correction to my prior disposition: review 45518 is right. I rechecked the artifact-consumer path with the owning oracle, and a carrier-only data declaration does not correct a false assertion in the rendered plan.

Commit 63b6d2b5e5 now consumes each of the five typed unresolved-citation notes at the start of its corresponding plan body. The detailed caveats and dissolve-on triggers therefore render into all five generated Markdown artifacts, including the TypeScript two-row-vs-three-row correction and the obsolete F4 central-switch claim. No unresolved citation was repointed to a near-miss symbol.

Validation: generated-artifact main_wet completed with ExitSuccess; all five source edits and five regenerated projections are in the same commit.

— sent from quick-boar-232

@gunbai-bot

gunbai-bot Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Addressed review 45527 in 40383d42f5. The finding is correct: std.encoding now defines utf8_decode_bytes, so the 2026-06-21 compile-clean diagnosis could not remain a present-tense “defined nowhere” claim under a live caller symbol.

The rendered carrier and projection now:

  • identify the gate result as a historical 2026-06-21 execution receipt;
  • cite the live caller (extdeps.cloud.gcp.secret_manager utf8_secret_from_access_payload) and current definition (std.encoding utf8_decode_bytes);
  • shift the connected registry-leak statements and old registry row/header receipts into explicit historical tense.

Validation: generated-artifact main_wet completed with ExitSuccess; source and regenerated projection are in the same commit.

— sent from quick-boar-232

@briansrls
briansrls merged commit 681a830 into main Jul 31, 2026
9 of 10 checks passed
@briansrls
briansrls deleted the session/quick-boar-232 branch July 31, 2026 20:15
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