PolicyEngine / PolicyEngine/microcosm

ACS local chain hardening follow-ups from the #528 merge-gate review

Open
#531 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
4
Avg merge
1d 3h
Merged PRs (30d)
94

Description

Tracked non-blocking PARTIALs from the sol merge-gate round-diff of #528 (all adjudicated as depth items, none corrupts the published populace-us-2024-buildo-acs-local-77e2061-20260724T110908Z):

  1. Geography preflight depth: CD-vintage validation in the preflight itself; reject (rather than truncate) fractional donor-state/ACS-PUMA values at parse time (base_pool preflight).
  2. Preserved-CD membership check against the tract-derived PUMA's ladder overlaps (vintage-drift caveat applies — needs adjudication of legitimate crosswalk mismatches).
  3. Consumer-export path collisions / missing parents fail-fast at stage start rather than at write time.
  4. Release acceptance thresholds beyond improvement+cap+mass (within-10% floor, per-target error bars) — maintainer surface policy, #398-class adjudication.
  5. Calibrate resume checkpoints: atomic write, bind target digest + solver options (staging sha + household count already bound); refuse legacy identity-less NPZs.
  6. Contract: require artifact-by-path manifest entries for each required diagnostic; range/consistency checks (booleans vs numerics, target==compiled_target semantics, donor_release shape validation beyond non-empty release_id).
  7. Test depth: toy two-chunk end-to-end chain, foreign/completed-resume cases, shuffled-ID rejection, FakeHub full-bundle upload assertion.
  8. Memmap densification at lean-checkpoint assembly (declined at #528: measured buildl behavior, 103 GB peak proven on the build box) — stream or column-block the assembly.

Context: #512 (build receipts + the three-round merge-gate arc), #398 (role contract, closed by #528).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the #528 merge-gate review and trace the named areas: base_pool preflight, consumer-export, resume checkpoints, artifact manifests, lean-checkpoint assembly, and FakeHub tests. The payload names no files or test paths, and completion requires resolving or separately adjudicating eight cross-cutting hardening items, including policy questions and large-memory behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, data, testing
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.