Gate the SSI swap delta at a runaway cap, not assignment granularity#431
Merged
Conversation
Attempt 8 proved what the fresh-pair swap delta actually measures: the age-blind, loss-balanced solve's equilibrium residual on the SSI-recipient family (~419k on 7.4M), which the fresh assignment resolves back to the official counts. Gating that at one source-identity weight per band (~112k) demanded solve precision no other target family faces, dressed as a consistency check — the residual is already published as the family's error in the calibration diagnostics. The delta is now recorded alongside the granularity reference and gated only against runaway at a tenth of the fresh national total, which still fails closed if the solve abandons the family. Tests updated to the new semantics; the runaway breach still raises with the delta in the terminal message. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
MaxGhenis
added a commit
that referenced
this pull request
Jul 17, 2026
…e and record (#448) populace#447: the Build M dense arm failed the #431 runaway cap after 3 passes (delta 749,467 vs cap 658,513, 11.4% vs 10%), and nothing survived the raise except the final line - no artifacts, no per-pass deltas. Converging-but-over-cap (cap mis-sized for the dense frame's equilibrium) and oscillating/diverging (real defect) demand opposite remedies, and the trajectory is the only way to tell them apart. Record each pass's national_swap_delta / sanity cap / within_bound in a pass_history that rides BOTH the success reconciliation record and the terminal RuntimeError message ("Pass trajectory: pass 1: delta=... cap=... within_bound=...; pass 2: ..."), so a failed run's log carries the adjudication evidence. No gate behavior changes - same cap, same raise condition. Both reconcile tests extended and fail without the instrumentation: the fail-closed test asserts the trajectory in the raise message, the fresh-pair test asserts pass_history in the reconciliation record. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
MaxGhenis
added a commit
that referenced
this pull request
Jul 18, 2026
…ation) (#452) Fixes populace#447. The #431 cap (0.10 x fresh national) was sized on sparse behavior: measured sparse deltas run 7.1-8.0% across attempts 9-16. The dense arm's #448-instrumented trajectory (af02c91, full pool) converges monotonically 11.97% -> 11.64% -> 11.38% with decelerating decrements (asymptote ~10.6%) - not a runaway, but structurally above 0.10 on the same #424-undercounted candidate universe, and unreachable by more passes alone. Per the maintainer's adjudication: the dense arm gates at 0.12 x fresh national; sparse keeps 0.10. The delta and the ratio used are recorded in the reconciliation payload, the pass trajectory rides both the success record and the terminal raise (#448), and both caps converge back to one number when #424 restores the candidate universe. Tests: the fail-closed reconcile case recalibrated above BOTH ratios (+1.1M ~ 14.9%, so the dense ratio cannot flip it); a new delta-level test pins the measured dense equilibrium class (11.42%) as in-bound on 0.12 and out-of-bound on 0.10, with >12% still refused on dense. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
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.
Overnight sparse attempt 8 passed the reconciliation loop's fresh-pair exit gates and failed the swap-delta bound I specified in #430: delta 418,816 vs bound 112,137.
The bound was mis-specified. The delta doesn't measure assignment granularity — it measures the solve's equilibrium residual on the SSI-recipient family: calibration balances that family against 5,692 other targets and lands ~5.7% short of the national total; the fresh assignment then restores recipiency to the official counts. That residual is already published as the family's target error in the calibration diagnostics, so gating it at granularity (~1.5% of the family total) was a calibration-quality bar no other target faces.
Change: the delta is recorded in the reconciliation manifest (with the granularity sum as a reference quantity) and gated only against runaway at a tenth of the fresh national total — a solve that effectively abandons the SSI family still fails closed, with the delta in the terminal message.
Tests updated: residual-beyond-granularity-within-cap passes with the record; runaway breach raises. Full builder suite green; CI-ruff and format clean.
🤖 Generated with Claude Code