PolicyEngine / PolicyEngine/microcosm
Build N epic: CD target surface + base rebuild bundle (quartet, assets, QRF fix, feed regen, gate hardening)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 0
- Forks
- 4
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 94
Description
Max greenlit (2026-07-17) the congressional-district target surface as the next build after the Build M certification: "yes do it."
What
Turn on --include-congressional-district-targets for the next certified US build (Build N), expanding the calibration surface from the national+state class (~5,667 compiled targets in Build M) to the full geographic feed surface: the v8 Ledger feed carries 23,968 congressional-district facts alongside 11,191 state and 2,101 national — a ~30k-target-class surface.
Mechanics already in place
- The builder flag exists and is opt-in-off; the compile path translates CD facts via
--congressional-district-vintage-crosswalk(source vintage → current districts) and hard-requireshousehold.congressional_district_geoidon the support frame — which the Build M frame already carries (export parity tracks it at +2.3% drift). gate_congressional_district_targetscurrently records False in build manifests; Build N flips it to a gated surface.
Work items
- Crosswalk provenance: pin the source-to-119th crosswalk artifact (sha-pinned input, #288 alignment); the checkpoint identity and materialization-cache context already carry its sha.
- Preflight sizing (no solve): compile the CD-included registry, run the #436 preflight zero-support/support-expressibility pass over the 57k sparse selection — CD cells are exactly where a frozen sparse support goes thin (the Build G #299 exclusion class). Expect a batch of per-cell reviewed exclusions or a reselection decision; adjudicate BEFORE burning a run (the campaign's attempt-9/10/11 lesson, now tooled).
- Solve-cost calibration: ~5.4× more constraint rows; measure a bounded-epoch dense probe before committing the full ladder. Loss-weighting review for the CD family (11k state rows already dominate counts; 24k CD rows will need family-level weighting the same way state rows got it).
- Gate adjudication pass: within-10% and zero-support baselines will move on a 30k surface; set expectations from the probe, not Build M's 90.2%.
- Scorecard: report Build N vs Build M on the shared national+state subset AND the CD surface separately, so the flip decision compares like with like.
Sequencing
After the Build M cert (policyengine.py#475) lands. Interacts with the geography-ladder/ACS lane (#288, Build L plan): the CD vintage story should be settled once and shared between calibration targets and the geography assignment.
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 the Build M certification reference at policyengine.py#475, then inspect the existing congressional-district builder flag and the #436 preflight flow. Review the #288 crosswalk alignment and #299 exclusion precedent before compiling the CD-included registry. Done means a provenance-pinned crosswalk, preflight findings, bounded solve-cost and weighting measurements, gate expectations, and shared-subset plus CD scorecards.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system, data-engineering, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100