Skip to content

Recover experimental entrant schedules with explicit support boundaries - #438

Draft
MaxGhenis wants to merge 1 commit into
masterfrom
dynamics-entrant-seam-20260909
Draft

Recover experimental entrant schedules with explicit support boundaries#438
MaxGhenis wants to merge 1 commit into
masterfrom
dynamics-entrant-seam-20260909

Conversation

@MaxGhenis

Copy link
Copy Markdown
Contributor

Recover the existing local entrant schedule and support-boundary source into a separate experimental path. The previous implementation allocated zero-weight people for zero inflows and could preserve claim state that contradicted its exclusion contract. Zero controls now retain alignment records without allocating rows or IDs; unsupported existing entrant claim state is rejected before the incumbent claiming step runs.

The recovered schedule consumes explicit donor rows and controls. Native donor/control readers, snapshots, build script, and run artifacts remain deferred. Numeric validation uses float donor weights consistently and rejects unrepresentable scaling, fractional demographic ages, invalid activation keys, and ambiguous flags. Provenance guards reject unknown or lost synthetic markers and invalid exclusion selectors. An explicit helper delegates to the historical birth materializer and labels only its newly allocated children.

The claiming wrapper preserves incumbent behavior and random consumption while keeping excluded entrants outside its behavioral draws. Possible observed entrant entitlement is not erased or adjudicated. Benefit-output suppression represents unsupported values as missing. Fertility/disability helpers remain inventories; the report explicitly records execution_verified=False. The historical fertility API does not enforce exclusions merely by receiving a complement ID set, and no such enforcement is claimed here.

The registered assembly, engine steps, loop, and scientific gates remain unchanged. Exact source exclusions and reachability assertions keep these two experimental modules outside historical birth-evidence execution. This does not establish entrant fitted-law support, native source admission, a national benefit estimate, or DynaSim parity.

Validation: 92 focused tests pass, comprising 78 entrant cases, 11 existing engine-step cases, and three exact source-identity/reachability selectors. Real-loop tests use explicitly synthetic other steps and cover zero flow, extinction followed by later entry, mortality-before-ageing, unknown benefit outputs, claiming support, and ID separation. Birth tests compare the actual historical materializer with the provenance helper and exercise keyed incumbent claiming. Black79, Ruff, and source diff checks pass. Independent source review identified numerical, selector, birth-provenance, and documentation issues; all findings are fixed and final source re-review is clean. Full local collection and native-data execution were not run.

Recovered source provenance: local commit 61bbf1c7e25a7e55033c134bbc2e846022b8850b, limited to the two engine files and two synthetic test files. The donor-reader round-trip test is deferred with its source path. This PR is separate from annual mortality #436 and the disability-conversion claiming successor #437; shared test-count/source-exclusion bookkeeping must be combined when integrating those PRs.

@vercel

vercel Bot commented Sep 9, 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 Sep 9, 2026 6:27pm UTC

Request Review

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