Skip to content

Ledger: SM1, OP1 and D1's first part merged, with the in-review PRs they touch - #590

Merged
MaxGhenis merged 2 commits into
masterfrom
ledger-delta-20261026
Oct 26, 2026
Merged

MaxGhenis merged 2 commits into
masterfrom
ledger-delta-20261026

Conversation

@MaxGhenis

@MaxGhenis MaxGhenis commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

This updates docs/parity-ledger.md for what merged after its last check (#587): SM1 (#570), OP1's harness (#566, with its report follow-up #589) and the first part of D1 (#575). It re-verifies six rows at 0f69bbb2, master after #589, and names the in-review PRs that track those rows. It changes no code, gate, run or progress data, so docs/progress.md and the scorecard are untouched.

Verified at 0f69bbb2

  • Mortality differences. SM1's mechanism merged in SM1: differential mortality by lifetime earnings, education and race (normalized within age-sex-year cells) #570 (src/populace_dynamics/mortality_ses/, docs/design/mortality_ses_sm1.md). It scales death probabilities by relative risks for lifetime earnings, education, and race and Hispanic origin, normalized within each single-age, sex and year cell. Rows of disabled-worker origin keep the baseline's probability for the DI adapter. It ships no coefficients, and its tests use invented ones. Outside its own package and tests, only the birth-evidence script's exclusion list and its test name it, so no projection, runner or gate calls it. The status stays None for a gradient, and the next step is S0.1 (#588, a draft in review) and SM2.
  • Education. S0.1 also audits ED1 and ED2 (S0.1: source, exposure, access and power audit for SM2–SM4 and ED1–ED2 #588), and ED1 depends on it, so the next step now starts with S0.1.
  • Births. OP1's harness merged. open_population/births.py records each newborn the unchanged fertility step adds as a birth, and the harness checks the stock-flow identity every year. It draws no births of its own, and the report says it admits no demographic law (docs/design/open_population_evidence/op1_report.md, §1). Every test and measurement uses invented rosters.
  • Immigration and emigration. OP1 wraps the engine's scheduled-entry seam (schedule.py), labeling each entrant with its entry year and declaring it in the stock-flow account, and adds survivor-only emigration from a caller-supplied hazard (exits.py). The hazard defaults to None, and a non-null one is refused unless the marital slot is no_marital_transitions, because Track A infers widowhood from a spouse's absence (exits.py, lines 9–12 and 63–72). The next step now names the exit-aware relational updates OP4 owes: a spouse who emigrates leaves the marriage as abroad, never as a death.
  • SSI. SSI0 (#573) and the readers D2 (#581) and D4's part 1 (#574) are drafts in review. D2 covers SSI receipt and amounts; D4's part 1 has POMS's state-supplement payment charts, and SSA's SSI tables are left to its part 2.
  • Wealth, pensions and other income. D1's first part merged in PSID income and wealth readers and field registry (D1a) #575. Its registry covers income items for 1999, 2001, 2003 and 2015–2023 and wealth items for 2015–2023, 1,463 fields in all, counted from the registry's own entries. Before reading, it checks the wave's setup file against its pinned SHA-256 and each field's label and columns against that file; the codebook is cited by page, not checked. Outside its own tests, only the birth-evidence exclusion list names it. WP2 (#572), D2 and D4 are drafts in review, and the HRS addendum (#579) awaits the maintainer's ruling. The next step adds D1's later parts.
  • Header. It adds the 26 October verification.

Seven link definitions are added (#572, #573, #574, #575, #579, #581, #588). All 249 references resolve to 89 definitions, and every definition is used.

Review r1 (an independent Opus 5.5 agent) returned REQUEST_CHANGES on f06691fa, with one medium finding (the codebook claim) and minor wording points. The second commit applies all of them except an optional sentence on OP1's 2100 horizon, which falls in a row this PR does not re-verify.

Not covered here

The other rows are unchanged since #587. The in-review PRs they already cite (#562, #563, #583, #584, #585 and #586) are still open drafts.

🤖 Generated with Claude Code

Re-verifies six rows at 0f69bbb: mortality differences (SM1, #570),
education (S0.1, #588), births and immigration and emigration (OP1,
#566 and #589), SSI (SSI0, D2 and D4 in review) and wealth, pensions
and other income (D1's first part, #575; WP2, D2, D4 and the HRS
addendum in review). Adds seven link definitions; every reference
resolves and none is unused.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
social-security-model Ready Ready Preview Oct 26, 2026 6:57am UTC

Request Review

- Wealth: D1's reader checks the setup file's pin and each field's
  label and columns; the codebook is cited by page, not checked.
- Immigration: OP1 wraps the engine's existing entry seam and adds the
  emigration seam; OP4 owes exit-aware relational updates.
- SSI and wealth: D2 covers SSI receipt and amounts; D4's part 1 has
  POMS's state-supplement charts, with SSA's SSI tables in part 2.
- Mortality: DI-origin rows keep the baseline probability, and the
  no-caller claim cites the birth-evidence test.
- Education: the next step starts with S0.1, which ED1 depends on.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MaxGhenis
MaxGhenis marked this pull request as ready for review October 26, 2026 08:08
@MaxGhenis
MaxGhenis merged commit 9cced8f into master Oct 26, 2026
12 checks passed
@MaxGhenis

Copy link
Copy Markdown
Contributor Author

Merged at head 50741bf8 with --match-head-commit, as merge commit 9cced8ff.

  • Checks. Every check passed on that head (gh pr checks exit 0). The PR was MERGEABLE and CLEAN, with no change requests.
  • Review round 1. An independent Opus 5.5 reviewer asked for nine changes: one medium, two minor and six nits.
  • Review round 2. The reviewer approved 50741bf8. Every round-1 item was resolved, except finding 8, which was left out by agreement: it is an optional note on a row this PR does not re-verify.
  • Round-2 nits. N1 is fixed in this description. N2 would add harness.py to the immigration row's citation; it waits for that row's next check, because it would move the head off the reviewed commit.

The change is docs only, so it took no tier-count slot.

@MaxGhenis
MaxGhenis deleted the ledger-delta-20261026 branch October 26, 2026 08:10
MaxGhenis added a commit that referenced this pull request Oct 26, 2026
Master brings #589, #590 and #580: an OP1 report section, a docs
ledger, and the held-out registry's module, tests and mutation record.
None is a B0.2 file or anything B0.2's script imports.

The tier files conflicted. Resolved as master's counts plus this
branch's unit delta: 18,789 + 236 = 19,025 unit, total 25,595. The
other tiers are unchanged, and the README table matches.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MaxGhenis added a commit that referenced this pull request Oct 26, 2026
Master brings #566, #589, #590 and #580. Git auto-merged
scripts/first_estimates_birth_evidence.py and
tests/estimates/test_birth_evidence_artifact.py, which both branches
changed: against each parent the merged files only add lines, so the
merge keeps master's OP1 exclusions and CE1's exclusions and removes no
line from either side. No CE1 path changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch was successfully deployed

1 active deployment
Preview — 50741bf8 Deployed Oct 26, 2026 by vercel[bot]
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