Repository navigation
Publish complete ACS-local WIC participation and remove the temporary .py assumption #1154
Description
Problem
The certified local-area release populace-us-2024-buildo-acs-local-767312d60-20260923T074941Z stores donor WIC participation under would_claim_wic, but its ACS person records have no generated participation decisions. The current US model consumes takes_up_wic_if_eligible. The wrapper's strict old-name mapping therefore refuses the incomplete ACS column.
PolicyEngine/policyengine.py#560 temporarily sets only missing, explicitly identified ACS decisions to True: every eligible affected ACS person claims WIC. Existing decisions and model eligibility remain unchanged. This is a disclosed temporary modelling assumption, not generated or observed participation.
Related: #1026 (renamed WIC input); #1031 (release rejection of obsolete stored input names).
Prepared code changes
- Temporary
.pycompatibility draft: Temporarily handle missing ACS WIC participation inputs policyengine.py#566 - Separate
.pyremoval draft: Remove temporary ACS WIC assumption after replacement certification policyengine.py#563 — blocked until the replacement is actually published and certified. - Microcosm code-repair draft: Generate complete ACS WIC participation and reject missing release inputs #1156 (fixes the narrowly scoped code issue Generate complete WIC participation in the ACS local-area build #1155, not this parent issue).
Generation/validation changes and focused unit/H5/country-engine tests are implemented in those drafts. No full dataset rebuild, publication, or replacement certification has been performed.
Completion checklist
- Merge the Microcosm repair: run the existing source-backed WIC generator after ACS demographic inputs are populated and before combining populations; preserve donor decisions.
- Require complete valid current-name participation before calculation/export and reject default filling missing WIC decisions.
- Add unit and small H5/country-engine workflow tests.
- Separate dataset owner: choose a qualified donor with complete current-name participation; rebuild ACS-local inputs and affected calculation/calibration outputs, without reusing pre-fix calculations.
- Separate dataset owner: pass all existing release checks, record generation provenance, and publish a new immutable local-area release, including its revision and hashes. Do not overwrite the old release or change the national default/latest pointer.
- Certify that actual replacement release in the separately opened policyengine.py removal PR; preserve the national dataset and verify preparation against the replacement.
- Merge removal of the ACS
True-fill exception. Keep ordinary old-name mapping while other certified datasets require it.
Boundaries
The code implementation does not rebuild, calibrate or publish the full dataset, launch paid compute, or deploy API services. Rebuilding/publication is performed by another owner. Passing code PR checks does not certify a dataset. Do not close this issue on code-PR merge; it remains open until publication, certification and compatibility removal are complete.
Activity