Skip to content

Repair the three remaining floor-band refusals #9608 exposed: two source defects and one frontier-row key written in the renderer's old spelling - #9658

Closed
gunbai-bot[bot] wants to merge 2 commits into
mainfrom
session/sharp-lynx-794
Closed

gunbai-bot[bot] wants to merge 2 commits into
mainfrom
session/sharp-lynx-794

Conversation

@gunbai-bot

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

Copy link
Copy Markdown
Contributor

Main's required floor has refused at strict-preparation since fb9fa04e2 (#9608) landed. #9645/#9646/#9650 closed most of the diagnostic set; this closes the remaining three subjects (five diagnostics), which are all latent defects that commit's new walls exposed, not regressions in the touched files. Attribution is by run bisection — the parent commit's floor executed (run 33198301968), #9608's run refused with exactly this diagnostic set (run 33198310614) — and by #9608's own diff.

1. dag/extdeps/bmc/pid_control_program.dag:322 — curve_points_agree compared DemandCurvePoint.output through decimal_measures_agree, whose parameters are Measure<Q,S,ExactDecimal>. ZoneDemandValue is deliberately not a Measure (its own comment: the zone's output units are not fixed by the schema). The new direct-call inhabitance wall refused it. Fix: a peer zone_demand_values_agree over the same exact_decimal_equal rule, on the carrier that holds the value.

2. dag/test/claim/fabric/fabric_terminal_contract_witness_test.dag — the positive control's receipt was the one inline Receipt literal in the file, so P inferred String from the bare principal literal against fixture_grant: ExecutionGrant<NonEmptyStr>. Hoisted to an annotated data like every sibling receipt.

3. src/v1/04_infer.dag unresolved_method_frontier — the gunbc.source_integration_landing_spine row's key was measured when node_type_shape had no arm for a named node with children, so the receiver rendered as bare Node(Optional). #9608 added the Node(name<args>) arm; the identical receiver now renders Node(Optional<Primitive(LandingNormativeOption)>), the equality dropped observed to zero against declared one, and both ratchet directions fired. The site is exactly as unresolved as when the row was measured — only the spelling changed — so the row is re-keyed, not deleted, and the re-key narrows the admission (an unresolved map on an Optional of any other payload now refuses). The bisection receipt is recorded on the row's cause. The committed stage0 mirror carries the identical edit for regen convergence. v1-band touch is under the operator's v2-self-host admission test: this repairs the required floor that gates everything.

Verification, by execution (remote, compiler built from this tree): entry-scoped gunbc compile --entry on each subject — pid rc=0 / 0 hard errors, fabric rc=0 / 0, spine rc=0 with 541:9 now the counted advisory MethodExistenceFrontierAdmitted; clean control extdeps/vendor/arm.dag rc=0. The pre-fix tree refused on all three under the same instrument, so the instrument discriminates.

Floor caveat: the floor refuses on the whole diagnostic set, so whatever the fold itself finds once preparation clears is still unmeasured — this PR unblocks preparation, it does not promise a green fold.

🤖 Generated with Claude Code

https://claude.ai/code/session_01KH3G4UzMgvQobyNgHYy4GU

gunbc-ci-auto-heal and others added 2 commits August 29, 2026 00:15
…nd its shape rendering: repair two at the source, re-key the spine's frontier row to the shape the renderer now spells

- pid_control_program: curve_points_agree compared ZoneDemandValue through the
  Measure comparator; ZoneDemandValue is deliberately not a Measure, so it gets
  its own agreement fn over the same exact_decimal_equal rule.
- fabric_terminal_contract witness: the positive control's receipt was the one
  inline literal in the file, so P inferred String against the grant's
  NonEmptyStr; hoisted to an annotated data like every sibling.
- unresolved_method_frontier: the spine row's key was measured before #9608
  added the Node(name<args>) arm to node_type_shape; identical receiver, new
  spelling. Re-keyed to the observed shape, which narrows the admission.
  Attribution by run bisection and #9608's own diff, recorded on the row.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KH3G4UzMgvQobyNgHYy4GU
@gunbai-bot

gunbai-bot Bot commented Aug 29, 2026

Copy link
Copy Markdown
Contributor Author

Superseded: main landed independent fixes for all three subjects while this was in review — #9655 hoisted the fabric receipt (same shape, same fixture name), the pid comparator was fixed inline on .magnitude, and the spine frontier row was deleted rather than re-keyed (the site no longer refuses on current main). Resolved the conflicts to main's side; the branch carries zero delta, so there is nothing left to merge. The attribution in the PR body (all five diagnostics traced to #9608 by run bisection) stands as the record.

Two live notes for whoever picks main up next:

  1. The floor now refuses on a NEW set — unresolved examples.js_site/examples.js_site_emit imports in gunbc.generated_artifact{,_emit}.dag plus DesignArtifact undefined in generated_artifact_assessment_witness_test.dag:350 (run 33223454863).
  2. Main is rustfmt-dirty again: src/v1/stage0/examples/prep_profile.rs (landed with Precompute unit-variant index to eliminate per-lookup phantom-match scans #9656) fails cargo fmt --all --check, so the pre-commit/pre-push hooks refuse on any clone of current main — same class as Main is rustfmt-dirty at seven sites and the pre-push hook refuses on all of them #9652.

@gunbai-bot gunbai-bot Bot closed this Aug 29, 2026
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.

0 participants