Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Load the ACS local-area dataset for US state and district runs

Abierto
#717 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@anth-volk ya está trabajando en esto.

Desde el 6/10/2026.

  • #726 de @anth-volk — abierto

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
python

Línea de trabajo

Start with _region_parent_dataset_reference and _resolve_region in projects/policyengine-simulation-executor/src/policyengine_simulation_executor/simulation_runtime.py, then inspect runtime_dataset_uri(...) and the linked build_populace_state_slices.py approach. Done means state and district runs use validated local-area extracts with linked groups and unchanged weights, while the resolved URI preserves the overlay revision and sha256.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Problem

Every US state/xx and congressional-district run executes on the national default file. In projects/policyengine-simulation-executor/src/policyengine_simulation_executor/simulation_runtime.py:

  • _resolve_region (lines 317–360) uses region.dataset_path when it is set.
  • Otherwise _region_parent_dataset_reference (lines 276–301) walks up to the national region and returns its dataset.

policyengine.py state and district regions carry no dataset_path, so the fallback always applies (PolicyEngine/policyengine.py#551).

What changes once regions carry the local-area dataset

PolicyEngine/policyengine.py#551 proposes resolving state and district regions to populace_us_2024_acs_local.h5. The executor would then receive that file for every state run:

  • Size: 9.8 GB. It covers 1,588,854 households (Sep 23 build 767312d60).
  • Memory: our Modal jobs needed a 64 GB container to load it and extract one state.
  • Per-state counts: Pennsylvania alone is 64,981 households. Child-poverty-impact-dashboard slices range from 3.4k households (WY) to 163k (CA).

Suggested direction

  • Build per-state extracts once per local-area release, keeping every linked person, tax unit, SPM unit, family and marital unit, with weights unchanged. Run state and district requests on the extract.
  • PolicyEngine/child-poverty-impact-dashboard scripts/build_populace_state_slices.py does this for 51 states. It checks that slices partition the frame exactly and that no group straddles a state boundary. It also verified a 2021-CTC reform on all 51 slices against masked full-file runs (population and transfer total within 1e-6, poverty rates within 1e-4).
  • Confirm the resolved URI keeps the overlay's own revision and sha256. Today runtime_dataset_uri(...) passes bundle.data_artifact_revision (the national artifact's revision) as the artifact revision, so check that it does not override the local-area pin.

Related

  • Region wiring: PolicyEngine/policyengine.py#551
  • API v1 state reports: PolicyEngine/policyengine-api#3864
  • Weight concentration on the local-area build: PolicyEngine/microcosm#403

🤖 Generated with Claude Code

Lenguaje dominante
Python
Estrellas
1
Forks
1
Merge medio
1 d 6 h
PR fusionados (30 d)
24

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de PolicyEngine/policyengine-sim-api

Todos los issues de PolicyEngine/policyengine-sim-api

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.