Skip to content

gate_m6 lock: temporal-holdout gate added locked (ratified 1818784)#177

Merged
MaxGhenis merged 6 commits into
masterfrom
m6-lock-flip
Jul 13, 2026
Merged

gate_m6 lock: temporal-holdout gate added locked (ratified 1818784)#177
MaxGhenis merged 6 commits into
masterfrom
m6-lock-flip

Conversation

@MaxGhenis

@MaxGhenis MaxGhenis commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

What this does

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). No sibling gate moves; gate_m6 is 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:

delta draft live gates.gate_m6
status draft_cleared_ready_for_lock_flip locked
locked false true
history (absent) the 2026-07-13-m6-gate-lock ceremony entry
design_commit d6abb16b… (PR #175's design commit) 4c6a0f6… (the #178 §2.7.6 squash-merge)

The design_commit change is prescribed by the draft's own design_commit_notefinalize 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 history design_commit_finalized records from 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, entry 2026-07-13-m6-gate-lock)

  • v1 OC-before-lock floor fired the PAUSE honestly — 1 gated flow cell, combined p_gate 0.8449. Evidence runs/m6_holdout_floors_v1.json (16c28d8c…), frozen.
  • candidate-blind pinned-ladder redesign adjudicated → v2 cleared 0.9067 (3f273d47…, frozen).
  • adversarial referee AMEND ×4 (comment 4958425437): the marital-ladder enumeration was incomplete — the asymmetric age-2 rung [18-64],[65+] where remarriage.18-64 clears at 0.403.
  • fixes + the orchestrator's adjudicated v3 (comment 4958956779): 11 gated cells (5 flow + 6 earnings), p_seed 0.8934 / p_gate 0.9087 (flows 0.9822, earnings 0.9626). runs/m6_holdout_floors_v3.json (e931c886…).
  • re-check PROCEED TO LOCK (comment 4959310892).
  • ratified 2026-07-13 by merge of PR gate_m6 floors: temporal-holdout truth-side floors (v1 pause -> v2 redesign clears) #172 (squash 1818784) under the maintainer's standing campaign directive of 2026-07-07. flipped_live: this pull request.

Headline not_certified 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. The #175 amendment adds forward_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 why design_commit finalizes to 4c6a0f6.

ZERO threshold movement vs the frozen floor: the flip READS runs/m6_holdout_floors_v3.json and rewrites nothing.

Locked-hot bindings

tests/test_gate_m6_derivations.py (16 tests, artifact tier, unconditional) binds the live gates.yaml gate_m6 block to the v3 floor: 11-cell registry equality, tolerance recompute round(mean+k·sd,3) capped, OC recompute 0.8934 / 0.9087 from realized sigmas, not_certified ordering + the 10-margin count + the forward-law margin, year pins / shock-window exclusions bound to design_pins, v1/v2/v3 lineage shas, the SSA/NCHS anchor, presence/F6/split-unit, design_pr "175" + design_commit 4c6a0f6 and the history design_commit_finalized re-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_certified reorder, 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 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"}, 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 via build_legacy_manifest.py --transition (only contract_revision + the gates.yaml entry move; n_bytes 305709 → 336495; frozen legacy entries byte-identical; idempotent).
  • tier recount (CI-equivalent full collection): artifact 928 → 965, integration_psid 797 → 800, total 2,668 → 2,708. This PR's new derivations file contributes +16 artifact; the remainder (+21 artifact, +3 integration_psid) is W1 forensics 3: cap_150k adjacency decomposition + hh_size residual quantification (registered 4959668253) #179's forensics-3 tests, merged in and reconciled — the tier_counts.json merge conflict was resolved by CI-equivalent recount, not by taking a side.

Verification

Dependencies — both satisfied

Draft — ready for the flip-fidelity referee. Do not merge or mark ready until that review passes.

🤖 Generated with Claude Code

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>
@vercel

vercel Bot commented Jul 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
social-security-model Ready Ready Preview, Comment Jul 13, 2026 5:35pm

Request Review

MaxGhenis and others added 2 commits July 13, 2026 12:09
…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>
MaxGhenis and others added 2 commits July 13, 2026 13:12
…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>
@MaxGhenis

Copy link
Copy Markdown
Contributor Author

Flip-fidelity referee — gate_m6 lock flip (PR #177), full independent recomputation

Verdict: MERGE. The live gates.gate_m6 block is the master-ratified draft (docs/design/gate_m6_block_draft.yaml, #175-amended) carried VERBATIM modulo exactly the four sanctioned lock-time deltas, bound string-for-string to the frozen v3 floor. Zero fifth deltas, zero unmapped hunks, zero threshold movement, every sibling gate byte-identical. CI green on the current HEAD, MERGEABLE. The merge is the orchestrator's act; this is approval only.

Delta census — exactly four (item 1)

Programmatic deep-diff of master gate_m6_block_draft.yaml (gates.gate_m6) vs live gates.yaml (gates.gate_m6): total deltas = 4, with exact values:

# path draft live
1 status draft_cleared_ready_for_lock_flip locked
2 locked false true
3 history (absent) (added list)
4 design_commit d6abb16b… 4c6a0f69…

No fifth delta. Pin-finalization chain legitimate: draft's design_commit_note prescribes finalize-at-lock-flip; the live history.design_commit_finalized records from d6abb16b → to 4c6a0f69, refinalized_from ce9893b1, §2.7.6 reason — matching the branch sequence e0240c7 (1d83a22) → 8758e80 (finalize→ce9893b, #175 squash) → aa0740c (re-finalize→4c6a0f6, #178 squash) → ceeef19. All three hashes resolve: d6abb16b=PR #175 design commit, ce9893b1=#175 squash on master, 4c6a0f69=#178 squash (§2.7.6, twice-verified comment 4960583620).

Path census — every hunk mapped (item 2)

git diff master...HEAD = 9 files, all attributed:

  • gates.yaml — single pure insertion of 539 lines (gate_m6:LOCKED-HOT (…)); deleting that range reproduces master byte-identically. No other edit. Parsed: master gate keys + {gate_m6}, every sibling (gate_1/2/3/m4/w1) and every non-gates top-level key deep-equal to master.
  • tests/test_gate_m6_derivations.py (+605) — new LOCKED-HOT bindings.
  • Four guard changes, each minimal and attributed: test_gate_m6_floors.py floors-test flip (absent→locked, the gate_w1-pattern inversion); test_gate_w1_derivations.py + test_gates_derivations.py added-gate tolerances ({gate_m6} added to the a1-era added in (…) sets + skip lists); test_gate_w1_amendment2_proposal.py a2-proposal master-side relaxation (==set(master_doc) <= set(live_doc), tolerating the addition).
  • Tier filestier_counts.json (artifact 949→965), README-tiers.md (artifact 928→965, integration_psid 797→800, total →2,708); verified against live collection (unit 267 / artifact 965 / integration_psid 800 / reproduction_legacy 520 / oracle 156; markers partition to 2,708 exactly).
  • runs/legacy_manifest_v1.jsoncontract_revision + gates.yaml entry sha/n_bytes only (the transition-permitted fields).

Block content vs the frozen v3 artifact (item 3) — all recomputed from floor.cells raw mean/sd/σ

  • 11-cell registry == v3 partition.gated (5 flow + 6 earnings); each derivations.rules key/k=3/rounding=3 intact; every view pins runs/m6_holdout_floors_v3.json.
  • Tolerances = round(mean+3·sd, 3) capped, recomputed independently — all 11 match, e.g. remarriage.18-64 0.402651→0.403, incidence.20-66 0.403611→0.404, divorce.18-44→0.379, first_marriage.18-29|female→0.356, recovery.20-66→0.314, earn_p10.prime→0.221, earn_dlog_sd.older→0.269, earn_zero_rate.older→0.163, earn_mob_h1_diag→0.052, earn_dlog_mean.prime→0.043, earn_autocorr_lag2→0.087. n_gated_tolerances_at_cap = 0 confirmed (weakest incidence.20-66 = 99.6% of the ln(1.5)=0.40546 cap).
  • OC on the half-normal basis (2Φ(t/σ)−1; gate = p⁵+5p⁴(1−p)): combined p_seed 0.893413→0.8934, p_gate 0.908729→0.9087; flows 0.9822; earnings 0.9626. All match block + oc_before_lock (p_gate_combined 0.9087 ≥ 0.90, 5 flow cells ≥ 4-min).
  • not_certified = 10 margins, mortality_drift FIRST, forward_earnings_law_not_gate1_certified present, no dupes.
  • Year pins == v3 design_pins (T*=2014, seed 2015, flow [2015–2019], earnings [2016,2018], shock earnings [2020,2022]/flow [2020,2021], seeds [0,99]/[0,1,2,3,4], mixed_k {flow3,stock4,margin3}, cap=ln(1.5)).
  • Lineage — v1 16c28d8c…/0.8449/1-cell, v2 3f273d47…/0.9067/4-cell, v3 e931c886… (all sha256 recomputed off the committed files); SSA/NCHS report-only anchor + presence/F6/split-unit declarations present. covers cites the §2.7 forward law; §2.7.6 exists in the design at 4c6a0f6 (spot-checked).
  • mortality/widowhood zero-gated recomputed from the ladders: no death or widowhood rung clears any cell; best-with-power tolerances mortality 0.472 (death.25-84, 127 ev), widowhood 0.474 (widowhood.18+, 75 ev), both > cap; remarriage clears ONLY at the new sex_pooled_age2p rung (remarriage.18-64, tol 0.403, 143 weaker-half events).

History / ceremony record (item 4)

Every id, sha, and date verified against GitHub. Chronology coherent (all 2026-07-13): design adjudication 4953722912 01:49 (PR #170, under the standing issue-#42 process delegation — the design doc uses #42 throughout as the M6 process issue, incl. its own canonical block at line 1426) → design VERIFIED 4953958949 02:44 → floors AMEND×4 4958425437 13:25 → fixes-v3 4958956779 14:20 → PROCEED TO LOCK 4959310892 14:55 → merge PR #172 squash 1818784f… 15:03:56Z → §2.7.6 VERIFIED 4960583620 17:09. Narrative faithful: v1 pause honest-fire (1 flow cell / 0.8449), candidate-blind redesign, v2 0.9067, referee amendments, adjudicated v3, zero mortality/widowhood gated on verified power grounds.

Zero threshold movement (item 5)

Every sibling gate + every non-gates top-level key deep-equal to master. No v3 tolerance differs from the frozen artifact. gate_w1 untouched. The locked block moves no number the ceremony didn't ratify.

Bindings + mutations (item 6)

  • Always-runnable suite (unit+artifact) in a clean disposable venv: 1191 passed, 41 skipped, 0 failed (1,476 deselected = the data/oracle tiers). The two M6 files: 39 passed.
  • Lane's 12 mutations (test_mutations_are_caught): all caught (tolerance digit, cell drop, cell add, OC drift, not_certified reorder, year-pin→shock, history-sha, floor_run_sha, unlock, family-tally, stale M6 design amendment: forward earnings generator spec (unblocks #173) #175 pin, forward-margin drop).
  • 11 referee-authored mutations against the LIVE block via the committed binding functions — all raised: restore-draft-status, stale-pin ce9893b-in-history, v3-sha-lineage-tweak, mortality-moved-last reorder, drop the amendment-2 remarriage.18-64 cell, edit ratifying squash 1818784, drop refinalized_from, flow-subfamily OC drift, seed_wave→2013, shock-year-into-gated, anchor status report_only→gated. A CONTROL asserting the unmutated live block passes all 13 checks also passed (no false-positive guard).

--transition idempotency (item 7)

build_legacy_manifest.py --transition on the committed tree = zero diff (idempotent); contract_revision f1a96e68… == git rev-parse HEAD:gates.yaml.

Fresh CI (item 8)

gh pr checks 177 exit 0 — lint / build / pytest 3.11 / pytest 3.13 all pass, both test runs' head_sha == ceeef19 (current, not stale). mergeable: MERGEABLE, mergeStateStatus: CLEAN.

No blockers. MERGE.

@MaxGhenis MaxGhenis marked this pull request as ready for review July 13, 2026 18:28
@MaxGhenis MaxGhenis merged commit c7af699 into master Jul 13, 2026
7 checks passed
MaxGhenis added a commit that referenced this pull request Jul 13, 2026
…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>
MaxGhenis added a commit that referenced this pull request Jul 13, 2026
…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>
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