Repository navigation
Live-condition the enrolment Roster ground; retire the stored cost-debt reading - #11700
Merged
Merged
Conversation
…bt reading. A typed cost-debt admission now carries identity and reason only. The enrolment-margin gate decides the Roster ground from THIS run's live reading against the per-subject CPU line: over the line admits, at or under it is stale and blocks (the row must delete), a planned identity with no cost row is NotMeasured exactly as an undeclared one is, and a lower bound admits only if the bound itself clears the line. Long-home is unchanged (declared drop long_home_enrolment_margin_observed_only). Replacement migration at the root (gunbc#11622 review 68363): the stored reading and the live one answered the same question and could disagree, and the stored one decided nothing once the gate went live. The constructor, reading and verdict axis are removed with it; their behaviours are re-homed onto the live arms in floor_enrolment_margin_test, and a Rust unit test covers the seed realization in required_floor_runner. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2 of 3 tasks
…the live ground. Review 68380: the seed's Roster match ended in a wildcard that defaulted any new reading shape to admit; the admitting arms are now spelled, matching the exhaustive .dag mirror. floor_cost_claim_qualification_unavailable (and its docs projection) and the eval-step denomination plan still named cost-debt admission as a CPU-line consumer; that comparison is gone, and they now name the live Roster ground in floor_enrolment_margin. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
Author
|
Review 68380: both findings fixed in 454c4d7.
— sent from calm-eagle-42 |
gunbai-bot Bot
pushed a commit
that referenced
this pull request
Sep 19, 2026
…11574 rebase Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The enrolment-margin Roster ground (typed cost-debt admission) is now live-conditioned, and the stored reading that used to justify an admission is retired. Split out of #11622 so a change to a load-bearing floor gate is reviewed as one.
The defect (review 68363 on #11622).
enrolment_margin_standing_foradmitted any declared identity and decided nothing from its cost. A typed row therefore held by authorship: a stored figure was compared against the line once, when the row was written, and never again. There was also a hole: a planned identity with no cost row was refused asNotMeasuredif undeclared but admitted if declared, so a declaration bought an exemption from being measured at all.The change, on both the decider and its mirror:
expensiveness_declaredroster_ground_stale(new; the row must delete)not_measured, the existing causeno_claim_cost_row_for_a_planned_identityexpensiveness_declaredbound_without_ceiling/ceiling_censored, the undeclared armsLong-home is unchanged, under the declared drop
long_home_enrolment_margin_observed_only, and its prose now says the drop does not cover Roster.Retiring the stored reading (DESIGN §3, replacement migration). Once live, a stored reading and the live one answer the same question and can disagree (a stored 681 says admit while a live 200 says stale), with nothing to say which wins. The stored reading also decides nothing and is a figure transcribed into source. So
FloorCostDebtReadingAttempt,floor_cost_debt_row, the verdict axis and the admission fold are deleted. A row is nowFloorCostDebtTypedAdmission { identity, reason }, and the list is empty on this PR.Test dispositions (DESIGN §4b(4)). The climb deletes production machinery, never evidence:
v2.test.floor_enrolment_margin):a_roster_admission_at_325ms_is_stale_and_blocksa_roster_admission_over_the_line_stays_declared, plus the boundary row..._exactly_at_the_line_is_stalea_roster_admission_with_a_bound_over_the_line_stays_declareda_roster_admission_with_a_bound_under_the_line_blocks_on_its_own_arma_roster_admission_with_no_reading_is_not_measured, with long-home as its control (the same absent reading is still only reported there).Seed edit, framed correctly. This is v1 maintenance, not seed growth. It repairs the logic of an existing function (
v1_compiler.cli_runrequired_floor_runnerenrolment_margin_standing_for) that decides the v2 required floor, which serves the v2 self-host program.floor_per_subject_cpu_line_msis the existing policy read, pulled out so the budget and the Roster ground share one read.Which side CI executes. The decider is Rust.
cargo test -p v1-compiler --libis off the merge path, under the standing declared droprust_unit_tests_off_the_merge_path, which this inherits rather than adding a new one. So:.dagmirror rows, which the floor runs.the_roster_ground_admits_only_on_a_live_reading_over_the_lineis local diligence. It was run remotely: it passes, and so do the otherenrolment/declared_identitytests.service#11622 rebased onto this, when it adds its identity-plus-reason row. That claim belongs to that head, not this one.Long-home no-reading exposure: population 0 in the observed run, reachable whenever a long-home module is touched. In floor run 35432097694, joining its
required-floor-dispositionandrequired-floor-claim-costartifacts againstlong-home-storage-agreementgives this: all 380 long-home identities weredeclined_long_module, because that run touched no long-home module, and 0 were planned without a cost row. The 0 describes that sample, not the design. A PR that touches atest/claim/longfile makes the floor plan those rows as changed witnesses (gunbc#11004 measured exactly this onaccumulator_copy_compile_gate_test.dag). A planned long-home identity that produces no cost row then reaches the declared branch and is admitted as Absent instead of refused as NotMeasured. Re-derive the count per run from those three artifacts; don't trust this one. Follow-up for the long-home lane; not widened here.Unrelated pre-existing red, noted.
cli_run::nfr_tests::nfr_roster_receiptfails with 69 unrostered and 1 stale non-fold-residue sites, all in.dagfiles this PR does not touch. It is also off the merge path.🤖 Generated with Claude Code