gate_m6 lock: temporal-holdout gate added locked (ratified 1818784)#177
Conversation
Adds gates.gate_m6 as a NEW LOCKED top-level gate (the gate_w1 / gate_m4 pattern -- added locked, NOT an in-place unlocked->locked flip). The block is docs/design/gate_m6_block_draft.yaml (the ratified v3 draft) carried VERBATIM with exactly three lock-time deltas: `locked: true`, `status: locked`, and a `history` ceremony entry. Every sibling gate (gate_1 / gate_2 [2a + 2b + 2c] / gate_3 / gate_m4 / gate_w1) is untouched; gate_m6 is the sole new key. Ceremony (gate_m6.history entry 2026-07-13-m6-gate-lock): the v1 OC-before-lock floor fired the PAUSE honestly (1 gated flow cell, combined p_gate 0.8449 -- a both-directions failure); the candidate-blind pinned-ladder redesign (coarsening + earnings decompounding, truth-side power arithmetic only) was adjudicated on the public record; v2 cleared 0.9067; the adversarial referee AMEND x4 (comment 4958425437) found the marital-ladder enumeration incomplete (the asymmetric age-2 rung where remarriage.18-64 clears at 0.403); fixes + the orchestrator's adjudicated v3 (comment 4958956779) landed 11 gated cells (5 flow + 6 earnings), p_seed 0.8934 / p_gate 0.9087; re-check PROCEED TO LOCK (comment 4959310892); ratified 2026-07-13 by merge of PR #172 (squash 1818784) under the maintainer's standing campaign directive of 2026-07-07. The headline not_certified declaration names mortality drift FIRST; the SSA/NCHS report-only mortality anchor is required before any M7-seeding claim; ZERO mortality / widowhood cells are gated on verified power grounds. ZERO threshold movement vs the frozen floor: the flip READS runs/m6_holdout_floors_v3.json (sha256 e931c886...) and rewrites nothing. Bindings go LOCKED-HOT: tests/test_gate_m6_derivations.py binds the live gates.yaml gate_m6 block to the v3 floor (11-cell registry equality, every tolerance recompute round(mean + k*sd, 3) capped, OC recompute 0.8934 / 0.9087 from the realized sigmas, not_certified ordering [mortality first], year pins / shock-window exclusions bound to design_pins, v1/v2/v3 lineage shas, SSA/NCHS anchor, presence / F6 / split-unit declarations) with >= 6 mutation checks (tolerance digit, cell add/drop, OC drift, not_certified reorder, year pin, history sha). Sibling / manifest hygiene: - tests/test_gate_m6_floors.py: the draft's untouched-guard inverts at the flip to assert gate_m6 is now LOCKED in gates.yaml (+ a verbatim-fidelity check: the live block equals the draft modulo the three deltas), mirroring the gate_w1 floors-test flip. - tests/test_gates_derivations.py + tests/test_gate_w1_derivations.py: the added-locked-gate master-compare tolerance extended with {"gate_m6"} (the a1-era generalization), with attribution. - tests/test_gate_w1_amendment2_proposal.py: the section-7 subset master-compare relaxed to master-side (tolerates the gate_m6 addition; every master gate stays present-and-equal in live except gate_w1). - runs/legacy_manifest_v1.json: recorded via build_legacy_manifest.py --transition (only contract_revision + the gates.yaml entry move; the frozen legacy gate-2 entries stay byte-identical). - tier recount (CI-equivalent full collection): artifact 928 -> 944 (+16, the new derivations file), total 2,668 -> 2,684 (tests/tier_counts.json + tests/README-tiers.md). Depends on the #175 block-draft amendment (forward-law first-certification in covers / not_certified + a design_commit re-pin), which lands before the flip-fidelity round; a follow-up commit will re-apply the updated draft verbatim + these same three lock-time deltas. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
…design pin Follow-up to the #175 block-draft amendment (merged to master as ce9893b: the design 2.7 forward-earnings law -- first-certified by gate_m6, gate_1 does NOT cover it). Merges origin/master and RE-APPLIES gates.gate_m6 from the UPDATED docs/design/gate_m6_block_draft.yaml, still VERBATIM, with the lock-time deltas: - `locked: false -> true` - `status: draft_cleared_ready_for_lock_flip -> locked` - + the `2026-07-13-m6-gate-lock` history entry - `design_commit` FINALIZED per the draft's own design_commit_note from PR #175's design commit `d6abb16b` to the #175 squash-merge `ce9893b` (`design_pr: "175"` carried verbatim). The amendment carries into the live block verbatim: the extended `covers` (forward-law first-certification framing) and the new `not_certified` margin `forward_earnings_law_not_gate1_certified` (9 -> 10 margins). The history entry records the finalization (`design_commit_finalized`: from / to / rule / note) and narrates it in `content`. Binding updates (`tests/test_gate_m6_derivations.py`): `design_pr "175"`, `design_commit ce9893b`, the 10-margin `not_certified` count + the forward-law margin, and the history finalization record are now bound; +2 mutations (un-finalized design_commit; dropped forward-law margin) -> 12 mutation checks. `tests/test_gate_m6_floors.py` verbatim-fidelity check extended to tolerate the design_commit delta (live == draft modulo locked / status / history / design_commit; design_pr stays "175"). `runs/legacy_manifest_v1.json` re-recorded via `build_legacy_manifest.py --transition` (contract_revision + the gates.yaml entry only). Tier counts unchanged (artifact 944, total 2,684 -- CI-equivalent recount confirms no drift from the merge). Sibling gates byte-identical to origin/master (ce9893b); gate_m6 the sole new key. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ash-merge Final re-finalization. §2.7.6 (PR #178, squash-merge 4c6a0f6, twice-verified -- VERIFIED comment 4960583620) COMPLETED the forward rank-to-level + re-ranking laws -- the forward earnings law the gate_m6 `covers` references. Per the block draft's own design_commit_note (finalize the pin to the squash-merge at the lock flip), the live design_commit is RE-FINALIZED from the interim #175 squash (ce9893b) to the #178 squash (4c6a0f6), so the lock references the COMPLETE law. Merges origin/master (#178, the §2.7.6 design-doc completion) and regenerates gates.gate_m6 from the (unchanged) draft VERBATIM with the four lock-time deltas (locked / status / +history / design_commit). The history design_commit_finalized record now carries from d6abb16 -> to 4c6a0f6 with refinalized_from ce9893b and the §2.7.6 reason; the content narrates the two-step finalization. Binding updates (tests/test_gate_m6_derivations.py): design_commit 4c6a0f6, the design_commit_finalized.refinalized_from + the §2.7.6 reason; the design-commit mutation now drifts the stale interim ce9893b. tests/test_gate_m6_floors.py asserts live design_commit == 4c6a0f6 (draft d6abb16 unchanged). runs/legacy_manifest_v1.json re-recorded via build_legacy_manifest.py --transition (contract_revision + the gates.yaml entry only). Tier counts unchanged (artifact 944, total 2,684). Sibling gates byte-identical to origin/master (4c6a0f6); gate_m6 the sole new key. Both design dependencies now satisfied: #175 (forward-law margin + re-pin) and #178 (§2.7.6 forward-law completion). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
# Conflicts: # tests/tier_counts.json
Flip-fidelity referee — gate_m6 lock flip (PR #177), full independent recomputationVerdict: MERGE. The live Delta census — exactly four (item 1)Programmatic deep-diff of master
No fifth delta. Pin-finalization chain legitimate: draft's Path census — every hunk mapped (item 2)
Block content vs the frozen v3 artifact (item 3) — all recomputed from
|
…d C2
Proposal (DRAFT) to demote the four family-A household-size cells
hh_size_share.{1,3,4,5plus} to report-only (uniform machine reason
no_permitted_entry_state_lever_reaches_cell) and re-scope the family-C gated
binary C2 from the full 4-element ordering to the pair-scoped elim<->+2pp swap
(the cap_150k/+1pp legs report-only,
anchor_ordering_internally_inconsistent_under_certified_swap). hh_size_share.2
stays gated (candidate 3 clears it 5/5). Zero threshold movement; gates.yaml
UNTOUCHED -- the flip is a separate ratified PR.
Evidence: W1 forensics 3 (runs/gate_w1_forensics3_v1.json, registration 4959668253,
grading 4960691167). Q10 -- the cap_150k entailment: the same above-wage-base
compression correction that certifies the elim<->+2pp swap mechanically lifts
cap_150k to rank 2 (deployed A/B 1.694 PV), so the 4-element ordering is internally
inconsistent as a representative-frame transport target (elim>+2pp <=> A/B>0.1613 vs
the Smith-adjacency window A/B in (0.1613, 0.184), overshot ~10x); the above-cap
share owns 0.9925 of the gap; contract-permitted lever restoration enumerates EMPTY;
the pair-scoped C2 is anchor-supported (Smith 2015 p.3: elim +21yr > +2pp +18yr) and
realised 3/3 across c1/c2/c3. Q11 -- the hh_size levers are exhausted: the roster-
ceiling probe reaches terminal coresidence only 0.111 (capped by the certified
parental-exit hazard, not the seed) and does not close size-1; three candidates
deep, all named levers deployed; the residual needs a non-entry-state household
model. Both surfaces were pre-named in the ratified amendment-2 series forecast
before c3 ran.
The whittling question, head-on (section 3): the post-amendment 44-cell surface (43
family-A joints + the pair-scoped C2) would be PASSABLE by the already-committed
candidate-3 model -- c3 lands 43/43 of the surviving family-A cells in-band on all
five seeds and realised the elim<->+2pp swap -- a first for this gate. The demotion
boundary is the permitted-lever line applied prospectively (pre-named before c3
ran), not a post-hoc fit to c3; candidates 1 (PR #162), 2 (PR #167), and 3 (PR #176)
all STAND FAIL (no self-rescue; c3's committed FAIL was scored under the current
contract). A candidate-4 registration of the unchanged c3 model follows the flip,
subject to the standing independent bit-exact reproduction addendum.
OC recompute (frozen floor sigmas): family A 47 -> 43 gated, p_seed 0.9344 ->
0.9403, p_gate 0.9623 -> 0.9684; the gate OC moves from 0.9623 x I(C2) to 0.9684 x
I(pair-swap) on the residual 44-cell surface (48 -> 44 gated, 84 -> 88 report-only;
cube shape [20,47,5] -> [20,43,5]).
Machine-checkable ledger + section-7 flip text string-bound to
tests/test_gate_w1_amendment3_proposal.py (23 artifact-tier tests binding every
load-bearing figure -- forensics-3 shares/mirror/ceiling, per-cell pass records from
all three cubes, OC before/after, partition roll-ups; mutation battery >=6 incl. the
blanket-impossibility-reintroduction and whittling-section-deletion guards). Tier
manifest recount: artifact 965 -> 988 (rebased onto the gate_m6 lock, #177). gates.yaml
byte-identical to origin/master.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…d after five-round ceremony) (#180) * gate_w1 amendment 3 (ceremony pending): hh_size demotion + pair-scoped C2 Proposal (DRAFT) to demote the four family-A household-size cells hh_size_share.{1,3,4,5plus} to report-only (uniform machine reason no_permitted_entry_state_lever_reaches_cell) and re-scope the family-C gated binary C2 from the full 4-element ordering to the pair-scoped elim<->+2pp swap (the cap_150k/+1pp legs report-only, anchor_ordering_internally_inconsistent_under_certified_swap). hh_size_share.2 stays gated (candidate 3 clears it 5/5). Zero threshold movement; gates.yaml UNTOUCHED -- the flip is a separate ratified PR. Evidence: W1 forensics 3 (runs/gate_w1_forensics3_v1.json, registration 4959668253, grading 4960691167). Q10 -- the cap_150k entailment: the same above-wage-base compression correction that certifies the elim<->+2pp swap mechanically lifts cap_150k to rank 2 (deployed A/B 1.694 PV), so the 4-element ordering is internally inconsistent as a representative-frame transport target (elim>+2pp <=> A/B>0.1613 vs the Smith-adjacency window A/B in (0.1613, 0.184), overshot ~10x); the above-cap share owns 0.9925 of the gap; contract-permitted lever restoration enumerates EMPTY; the pair-scoped C2 is anchor-supported (Smith 2015 p.3: elim +21yr > +2pp +18yr) and realised 3/3 across c1/c2/c3. Q11 -- the hh_size levers are exhausted: the roster- ceiling probe reaches terminal coresidence only 0.111 (capped by the certified parental-exit hazard, not the seed) and does not close size-1; three candidates deep, all named levers deployed; the residual needs a non-entry-state household model. Both surfaces were pre-named in the ratified amendment-2 series forecast before c3 ran. The whittling question, head-on (section 3): the post-amendment 44-cell surface (43 family-A joints + the pair-scoped C2) would be PASSABLE by the already-committed candidate-3 model -- c3 lands 43/43 of the surviving family-A cells in-band on all five seeds and realised the elim<->+2pp swap -- a first for this gate. The demotion boundary is the permitted-lever line applied prospectively (pre-named before c3 ran), not a post-hoc fit to c3; candidates 1 (PR #162), 2 (PR #167), and 3 (PR #176) all STAND FAIL (no self-rescue; c3's committed FAIL was scored under the current contract). A candidate-4 registration of the unchanged c3 model follows the flip, subject to the standing independent bit-exact reproduction addendum. OC recompute (frozen floor sigmas): family A 47 -> 43 gated, p_seed 0.9344 -> 0.9403, p_gate 0.9623 -> 0.9684; the gate OC moves from 0.9623 x I(C2) to 0.9684 x I(pair-swap) on the residual 44-cell surface (48 -> 44 gated, 84 -> 88 report-only; cube shape [20,47,5] -> [20,43,5]). Machine-checkable ledger + section-7 flip text string-bound to tests/test_gate_w1_amendment3_proposal.py (23 artifact-tier tests binding every load-bearing figure -- forensics-3 shares/mirror/ceiling, per-cell pass records from all three cubes, OC before/after, partition roll-ups; mutation battery >=6 incl. the blanket-impossibility-reintroduction and whittling-section-deletion guards). Tier manifest recount: artifact 965 -> 988 (rebased onto the gate_m6 lock, #177). gates.yaml byte-identical to origin/master. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * gate_w1 amendment 3 fixes round 1: scope the C2 impossibility to the pinned frame Addresses the adversarial referee round (PR #180 comment 4962052314, verdict AMEND THE AMENDMENT -- recommendation survives on every recomputed probe P1/P2/P4/P5/P6). Two grounds-precision findings; the demote-quad + pair-scope-C2 recommendation is UNCHANGED. F1 (primary -- the a2 defect class re-instantiated in the C2 argument): sections 2a/1/4b-c-c/8/10 asserted as a UNIVERSAL that "a frame cannot both realise the certified swap and reproduce Smith's cap_150k rank / the 4-element ordering is internally inconsistent as a representative-frame transport target". False as a universal: the order-survival window is f-conditional (0.1613, 0.0806/f), widening to ~(0.1613, 0.37) at the near-band fraction f~=0.22, and forensics-3's own order_at_f_deployed_0p22 = [elimination, payroll_plus_2pp, payroll_plus_1pp, cap_150k] exhibits a representative frame (A/B~=0.22, f~=0.22) that realises the swap AND reproduces the full 4-element Smith order (tau 1.0). Fix: scope the impossibility to the PINNED certified frame throughout, and lead with the two dispositive grounds that carry it -- (1) the pinned/deployed frame measures cap at rank 2 bit-identically (A_band/B 0.373, cap 16.7yr, reproduced c1/c2/c3), so the pinned transport target VIOLATES the full order while realising the swap; (2) no published anchor supports the 4-element order on a representative frame. The f-conditional window arithmetic is retained as analysis with the caveat stated plainly (a swap-consistent full-order frame exists at other f -- forensics-3 order_at_f_deployed_0p22). The machine reason anchor_ordering_internally_inconsistent_under_certified_swap is retained (the referee ruled its under_certified_swap qualifier already scopes correctly) with a new pinned-frame ledger definition (cap_150k_impossibility block, scope pinned_certified_frame). F2 (minor): the fertility lever's "support floor" now reads "support ceiling"/maxed consistently (it is maxed at the 15-entry certified support, not at a floor); the lever-exhaustion claim is unaffected. Bindings: +3 tests (26 total), incl. the pinned-frame-scope + f-conditional refutation binding, a universal-C2-phrasing mutation guard, and a fertility- terminology guard. Full mutation battery re-run: all previously-caught still caught + the two new guards (16 distinct). Tier recount artifact 988 -> 991 (+3). Suite green (unit+artifact 1217 passed / 41 skipped, 0 failed). gates.yaml UNTOUCHED (byte- identical to origin/master). Ceremony record updated (section 8 referee_round + section 11 checklist). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * gate_w1 amendment 3 fixes round 2: scope the §2a restoration clause to the pinned frame + extend the universal-phrasing guard Responds to verification comment 4962578395 (verdict FURTHER FIXES x2 -- both grounds-precision text edits, recommendation untouched). V1 (PR-body squash message; a GitHub edit, not in this commit): the Evidence Q10 bullet carried the round-1 universal ("internally inconsistent as a representative-frame transport target ... overshot ~10x", f-fixed window, no caveat) verbatim; rewritten to the pinned-frame grounds (cap at rank 2, A_band/B 0.373 bit-identical; no published representative-frame anchor) with the f-conditional window (0.1613, 0.0806/f) kept as analysis and the order_at_f_deployed_0p22 counterexample stated -- mirrors the section-8 history entry. V2 (this commit -- section-2a restoration clause): "no unimodal earnings distribution makes it small enough while landing A/B in the window" was an unscoped frame-level universal that the fix's own caveat ten lines above contradicts. Rescoped to the pinned frame's binding constraint: the pinned A/B 1.694 would need f < 0.0476 (= (0.01/r)/AB = 0.01/d_bal_elim, recomputed from the artifact) to land in-window, far below the measured deployed f 0.220; the artifact's "small enough (<0.5)" gloss and the "no contract-permitted lever" conjunct are restored, and the only construction that could move a pinned A/B that far (tail back-solving) is named as the prohibited identity-in-disguise. Bindings/guard: - Ledger field pinned_A_over_B_needs_f_below_round4 0.0476, recomputed from the forensics-3 revenue components in test_q10_impossibility_scoped_to_pinned_frame_not_universal. - BANNED_UNIVERSAL_C2_PHRASINGS extended past the round-1 slots to the earnings-distribution / representative-frame synonym class -- the verifier's M4 ("no earnings distribution of any shape ...") and M4b ("no representative frame whatsoever ...") mutations are now caught, along with the section-2a slot's "no unimodal earnings distribution makes it small enough". - The caveat-existence binding tightened from OR to AND (verifier soft spot 2: M2b-style deletion of the existence sentence is now caught). 26 module bindings (unchanged function count; +1 bound figure, f<0.0476), tier artifact 991 unchanged (no new collected item), always-runnable suite 1217 passed / 41 skipped / 0 failed, black -l 79 + ruff clean. gates.yaml byte-identical to origin/master; only the doc + test changed. Stays DRAFT. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
What this does
Adds
gates.gate_m6as a NEW LOCKED top-level gate — thegate_w1/gate_m4pattern (added locked, not an in-place unlocked→locked flip). No sibling gate moves;gate_m6is the sole new key. Rebased onto both M6 design amendments (#175 and #178 — see Dependencies).Block ↔ draft mapping
The block is
docs/design/gate_m6_block_draft.yaml(the ratified v3 draft, as amended by #175) carried VERBATIM with exactly these lock-time deltas:gates.gate_m6statusdraft_cleared_ready_for_lock_fliplockedlockedfalsetruehistory2026-07-13-m6-gate-lockceremony entrydesign_commitd6abb16b…(PR #175's design commit)4c6a0f6…(the #178 §2.7.6 squash-merge)The
design_commitchange is prescribed by the draft's owndesign_commit_note— finalize the pin to the squash-merge commit at the lock flip. It was first finalized to the #175 squash (ce9893b), then re-finalized to the #178 squash (4c6a0f6) once §2.7.6 completed the forward law (the historydesign_commit_finalizedrecordsfrom d6abb16b → to 4c6a0f6,refinalized_from ce9893b, rule + reason).design_pr: "175"is carried verbatim. Everything else is string-for-string identical. Verified programmatically: the parsed live block equals the parsed draft block modulo exactly those four deltas (tests/test_gate_m6_floors.py::test_gates_yaml_gate_m6_locked_by_the_flip_and_design_amended).Ceremony (recorded in
gate_m6.history, entry2026-07-13-m6-gate-lock)p_gate 0.8449. Evidenceruns/m6_holdout_floors_v1.json(16c28d8c…), frozen.0.9067(3f273d47…, frozen).4958425437): the marital-ladder enumeration was incomplete — the asymmetric age-2 rung[18-64],[65+]whereremarriage.18-64clears at0.403.4958956779): 11 gated cells (5 flow + 6 earnings),p_seed 0.8934 / p_gate 0.9087(flows0.9822, earnings0.9626).runs/m6_holdout_floors_v3.json(e931c886…).4959310892).1818784) under the maintainer's standing campaign directive of 2026-07-07.flipped_live: this pull request.Headline
not_certifiednames mortality drift FIRST; the SSA/NCHS report-only mortality anchor is required before any M7-seeding claim; ZERO mortality / widowhood cells are gated on verified power grounds. The #175 amendment addsforward_earnings_law_not_gate1_certified: the gated{2016,2018}earnings cells ride the design §2.7 forward earnings law, first-certified by gate_m6 — gate_1 does not cover it. #178 (§2.7.6) completed that forward law (forward rank-to-level + re-ranking laws), which is whydesign_commitfinalizes to4c6a0f6.ZERO threshold movement vs the frozen floor: the flip READS
runs/m6_holdout_floors_v3.jsonand rewrites nothing.Locked-hot bindings
tests/test_gate_m6_derivations.py(16 tests, artifact tier, unconditional) binds the livegates.yamlgate_m6block to the v3 floor: 11-cell registry equality, tolerance recomputeround(mean+k·sd,3)capped, OC recompute0.8934 / 0.9087from realized sigmas,not_certifiedordering + the 10-margin count + the forward-law margin, year pins / shock-window exclusions bound todesign_pins, v1/v2/v3 lineage shas, the SSA/NCHS anchor, presence/F6/split-unit,design_pr "175"+design_commit 4c6a0f6and the historydesign_commit_finalizedre-finalization record (from d6abb16b → to 4c6a0f6,refinalized_from ce9893b, §2.7.6 reason). 12 mutation checks, each fails a binding: tolerance digit, cell add/drop, OC drift,not_certifiedreorder, year pin, history sha, floor-sha, lock-delta, family-tally, stale-interim design_commit (ce9893b), dropped forward-law margin.Sibling / manifest hygiene
tests/test_gate_m6_floors.py— the draft's untouched-guard inverts at the flip to assert gate_m6 is now locked (+ the four-delta verbatim-fidelity check), mirroring thegate_w1floors-test flip.tests/test_gates_derivations.py+tests/test_gate_w1_derivations.py— the added-locked-gate master-compare tolerance extended with{"gate_m6"}, with attribution.tests/test_gate_w1_amendment2_proposal.py— the section-7 subset master-compare relaxed to master-side (tolerates the gate_m6 addition).runs/legacy_manifest_v1.json— recorded viabuild_legacy_manifest.py --transition(onlycontract_revision+ the gates.yaml entry move;n_bytes 305709 → 336495; frozen legacy entries byte-identical; idempotent).tier_counts.jsonmerge conflict was resolved by CI-equivalent recount, not by taking a side.Verification
black . -l 79 --check✓,ruff check .✓.-m "unit or artifact", 1191 passed / 41 skipped, exit 0). Branch is current withorigin/master(481d452, incl. W1 forensics 3: cap_150k adjacency decomposition + hh_size residual quantification (registered 4959668253) #179); sibling gates byte-identical to it; gate_m6 the sole new key.Dependencies — both satisfied
design_commitre-pin) merged asce9893b; this branch merged it and re-applied the block verbatim.4960583620) merged as4c6a0f6, completing the forward law thecoversreferences. This branch merged it and re-finalized thedesign_commitpin to4c6a0f6, so the lock references the complete law.Draft — ready for the flip-fidelity referee. Do not merge or mark ready until that review passes.
🤖 Generated with Claude Code