PolicyEngine / PolicyEngine/microcosm
c-26 stacked pool: emergent undocumented population 18.9M vs the 11.0M anchor (1.72x; gate band [0.5, 1.6])
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 0
- Forks
- 4
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 94
Description
Found by the candidate-26 dense-evidence arm (release id populace-us-2024-onesurface-pkg3-legacy-dense-scoring-b8819b3f-20260902T184743Z, base pool populace-us-2024-stacked-f025-s578-asec42213-acs382903-20260831T162338Z-e14b24e8, builder at 5ef9237e). The pre-export immigration composition gate (us_immigration_composition_gate, invoked from tools/build_us_fiscal_refresh_release.py after the pool's immigration inputs load) failed:
Immigration composition failed: emergent undocumented population 18,919,043 is 1.72x the published anchor 11,000,000 (band [0.5, 1.6], https://www.pewresearch.org/short-reads/2024/07/22/what-we-know-about...)
Context, stated carefully:
- This is, as far as the run records show, the first time this gate has been exercised against a stacked pool through
--base-h5(pool_frame is not None, so immigration inputs come from the pool itself rather than being derived in-build). Whether 1.72x is a c-26 regression, a general property of the stacked assembly at design weights, or a gate whose anchor comparison needs an origin-aware basis on stacked pools is exactly the open question. - The c-26 pool is already
gate_failedon the by-origin battery (63/135; #781, #783 hold the adjudication context). This failure is additional evidence for the candidate-26 ruling, not a substitute for it. - Related but distinct: #767 (humanitarian statuses absent from the imputation) concerns statuses computing $0, not the undocumented total.
This issue is the adjudicated owner for the failure pattern Immigration composition failed: in the dense-evidence arm's --evidence-failure-owners file (microcosm#506 evidence-tier contract), so the evidence build can mint its scoring artifact with the failure recorded in known_failures rather than dying before calibration. Owning it here means: whoever closes the c-26 ruling either explains this number on the stacked basis or fixes the assembly.
🤖 Generated with Claude Code
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with tools/build_us_fiscal_refresh_release.py and the us_immigration_composition_gate invocation after immigration inputs load. Compare the --base-h5 stacked path, where pool_frame is not None, with the published anchor and the gate band, using the c-26 release and pool records named in the issue. Review #781 and #783 for adjudication context; done means explaining the stacked-basis result or fixing the assembly and recording the failure appropriately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100