Repository navigation
Open population design: births, migration, alignment and the long horizon - #557
Merged
Merged
Conversation
A priced design for the open-population lane (d1802) of the DYNASIM parity plan: births with both parent links, immigration and emigration, alignment to OACT's demographic and labor targets, and projections past 2030. Sixteen milestones in two phases (130-199 engineer-days, an estimate), the entrant-initialization price Track B section 3.3 left open, data sources per gate, interfaces with Track B (H, B4, J) and the Microcosm start, risks and kill criteria. Docs only; nothing is built. Adds an invented-data script showing that scheduled entrants make a projection's early years depend on its end year. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
OP3 and OP4 also unlock OP2(c); the horizon record is defined in section 5.2; section 11 lists the files cited from search matches. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Entrant initialization, which Track B's design section 3.3 left unpriced, is now one milestone row (OP8, 25-39 engineer-days, an estimate) with its data sources and what it delivers to each Track B milestone, so Track B's B0.2 audit (draft PR #554) can cite it. The former OP8 and OP9 merge into it with a new sub-part for starting states in Track B's schemas; later rows are renumbered. The economic schedule now assumes B0.2 freezes before a B2 successor passes, and section 6.4 adds the two restricted-files entries of 21 October. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The insured-status rule has an owner: under d1802, Track B's rules lane builds it as a separate PR once #530 merges. OP8(d) now consumes it through an interface in section 6.1 that states how the pre-entry covered-work convention enters the quarters-of-coverage count (zero- and four-filled calls, with an undetermined status where they differ). Drops revision 2's decision 7 and its scale estimate for the rule. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The insured-status interface now follows the rules lane's design: per-year provenance (OBSERVED, CONVENTION_FILLED with a convention id, UNKNOWN), with the rule bounding UNKNOWN years and refusing by name where the bounds disagree. OP0 and section 5.2 adopt the shared holdout registry in Track B's B0.2 exposure record: J's candidate years first, OP0.2 picks gate_ssa_totals' years from what remains, and shared years are disclosed by name in both registrations. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Cites the shared holdout registry by path, commit and SHA-256 (docs/design/track_b_holdout_registry.json at e1c3c1e, schema v1), records the supplement-2023, DI ASR 2023 and Census 2023 tables gate w1 already used as exposure for gate_ssa_totals, and adds the insured-status rule's relayed flag and refusal names to the single-call interface. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Answers the twelve findings of review r5 (REVISE): corrects the M6 fertility mechanism and OP2's differential test; treats gate_birth as regression evidence by default because NCHS's 2016-2024 rates are already in the repository; adds OP3's timing and exposure bridge; names the non-quarter facts insured status needs (section 214(c), blindness, prior disability periods), checked against the statute and POMS; fences the EPUF arm of gate_young_earn; makes OP12 gate unaligned totals so every gate stays unaligned unless Max makes an exception; narrows ledger closure; adds OP5/OP7 date and link conventions and source-specific tolerance classes. Total 140-216 engineer-days (estimate). Section 12 maps each finding to its resolution. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Revision 8 reverts revision 7; no milestone is blocked and no estimate changes. Section 2.10 notes that PSID use follows the project's data-access record. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Answers review r6 (REVISE; four major, five minor): section 214(c) applies only to noncitizens whose first SSN was assigned on or after 1 January 2004 (POMS RS 00301.102, checked), with the date as an input with provenance; candidate-side uncertainty is set per gate; the young- earnings gate admits ages 18-24 only and leaves the hand-off at 25 open; OP12 and OP11b respect the Microcosm start's hold on spouse and survivor results; OP9's final replay waits for OP8; plus the review's minor wording, invariant and citation fixes. No estimate changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Answers review r7 (REVISE; one major, four minor): the original SSN assignment date stays UNKNOWN under both pre-entry earnings conventions, since first entry does not establish it; the POMS RS 00301.102 citation covers B.1-B.5 and workers not yet assigned a number; the summary and section 8 state OP0's wait for J's reservation and OP0.2's earlier finish; the widowhood invariant is limited to surviving spouses; and OP11b's withheld outputs are limited to spouse and survivor types. No estimate changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MaxGhenis
added a commit
that referenced
this pull request
Oct 23, 2026
1. Preparation artifacts as scored evidence (medium). Scored runs are now a
controlled list in code, SCORED_RUNS {path: (gate, sha256)}. Evidence must
name a listed run that belongs to the entry's gate, and the committed
blob must match the pinned SHA-256. Floor builders, candidate lists and
dry runs are not listed, so they are rejected.
2. Import cutoff by pathname (medium). Historical imports are limited to
HISTORICAL_IMPORT_GATES, a code-level list, and start as used. Content
is pinned by hash, so renames, re-adds and merge-created registries
cannot launder a future gate's evidence into an import.
3. Registration after scoring (medium). Committed.registered_at walks the
registry's first-parent history; a registration must be on record at a
commit where its scored run was not yet committed.
4. History checks (medium). history_problems validates each snapshot
against its own commit's tree (evidence, citations, identifiers,
completion record), admits a new registry against empty_like, and skips
invalid snapshots as predecessors.
5. Rebase merging (medium). The committed module now checks every commit
on the pull request branch (full=False), so a rebase cannot introduce
an unchecked change and restoration.
6. Terminal-status mutant (low). The unit tests enumerate the permitted
transitions independently (EXPECTED_TRANSITIONS) and check terminal
statuses; used -> withdrawn is now killed.
7. Malformed inputs (low). Decoding, NUL and '..' paths, oversized line
numbers, non-mapping registries and malformed predecessors return
problems instead of raising.
Seeded entries: H005 cites gates.yaml:4311-4327 for its Census labels;
H003 cites the open-population design as PR #557 (draft).
Mutations: 53 of 53 killed (restored source sha256 aae22b1d...).
Tests: 98 passed, 2 skipped. Tier counts: unit 10,048 (+16), artifact
4,263 (+2).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review r8 returned APPROVE on revision 10 and asked for two minor clarifications, added here in its words: the economic schedule assumes Track B's I and any required observational timing gate are ready, and OP11b's estimate covers beneficiaries, benefits and Social Security income only. No other change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… boundary Max approved revision 11 (ruling d1925, "Approve as recommended"). This revision records his answers and the coordinator's rulings in §10, and states the death-alignment boundary of ruling d1922: the mortality lane's SM owns death alignment, so OP6 selects no deaths and consumes SM's mortality as given (§3.1, §3.3, §4, §5.4, §6.4, §7). It also lists the entrant attributes the mortality lane's design (#558 §7.2) asks for as unpriced. No estimate changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MaxGhenis
marked this pull request as ready for review
October 24, 2026 11:32
This was referenced Oct 24, 2026
MaxGhenis
force-pushed
the
open-population-design-20261021
branch
from
October 24, 2026 11:54
08846cf to
5c82dbd
Compare
The status line again cites the file hash Max approved at revision 11 (ruling d1925), and notes that the branch's rewritten revision-11 commit differs from that text only in four data-access lines. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Applies the minor findings of the two delta reviews of revisions 11 and 12 (GPT-6.1 Sol, APPROVE; Opus 5.5, one finding the coordinator ruled minor): - cite #558 by path, section 7.2 and the file hash Max approved, not by commit; - keep Max's ruling d1922 apart from the coordinator's death-alignment boundary in section 10, section 6.4 and the revision log; - state the section 7 death property per year, on each replay's own roster, and limit fidelity to the margins OP6 or OP9 selects or scales; - name #558's newborn and immigrant attribute requests separately and say where its other requests are met; - drop section 8's preapproval wording; - add the revision-12 reading record and amend the revision log; - add section 12's table for both reviews. No estimate changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MaxGhenis
added a commit
that referenced
this pull request
Oct 24, 2026
- Landscape: public HRS counts as available for the estimands it supplies, and its use follows the project's data-access record. Restricted HRS-SSA access, eligibility and lead time remain to be verified. - Plan: the open-population design approved in d1925 (PR #557, question 5) publishes every projected year past 2030 as conditional on named assumptions, with drift diagnostics, never as a validated forecast, and registers its 2050, 2065 and 2070 DYNASIM comparisons as report-only and blind. This bears on B7's target years and J's record. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
Author
|
Merged by the Microcosm Dynamics coordinator at head 9b38c64 (merge commit f8ffc7d), 2026-10-24 15:46Z. Gates at merge:
Follow-up owed by the lane: a revision-14 PR for r10's five minor wording findings, with its own review. |
MaxGhenis
added a commit
that referenced
this pull request
Oct 24, 2026
…known gaps - Tracking and next-step cells for the twelve rows the mortality, groups and financing (#558), income-and-resources (#559) and open-population (#557) designs cover, citing their merged files. - The poverty row records U2's completed second structural pass and its ratification by #556's merge; next are the evidence file, a fresh forecast and the #42 registration. - Known gaps keeps only what no issue, PR or approved design plans. - Rulings d1922, d1923 and d1925; link refs for #556, #566–#568, #570. - Scorecard: the wealth row names the approved design; progress page regenerated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch was successfully deployed
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.
Approved design. Nothing is built in this PR. Max authorized the open-population lane on 21 October 2026 (d1802) and approved this design on 23 October 2026 (d1925, "Approve as recommended") at revision 11, file SHA-256
b5496c13a7f768b504226ff374d8c23ded3daa26b39aa16d89c0fe750988e8f7. Revision 12 records his rulings and the coordinator's in §10, and states the death-alignment boundary (the mortality lane's SM owns death alignment; OP6 selects no deaths). Revision 13 applies the two delta reviews. The demographic phase is authorized; its builds run in separate PRs (OP1 #566, OP0.1 #567).What it adds
docs/design/open_population.md(revision 13): the design for four parity-ledger rows (births; immigration and emigration; alignment and a representative population; projections beyond 2030), modeled on Track B revision 3.docs/design/open_population_evidence/horizon_dependence.pyand its output: an invented-data run of the existing loop showing that scheduled entrants make a projection's early years depend on its end year (closed runs do not).Reviews
805e478f;376e7e25after the branch's 24 October rewrite). Revision 11 added that review's two clarifications in its words.9b38c64awith five minor wording findings, left for a follow-up.~/reviews/open-population-20261021/review-r5toreview-r9.Checks
src/,tests/,gates.yaml,runs/ortests/tier_counts.jsonchange.🤖 Generated with Claude Code