Load certified annual projection datasets by year

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

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
data

Research direction

Start by tracing the wrapper's annual-data loading, bundle certification, and derived-cache paths in the repository; no specific files or tests are named. Compare those paths with the production data interface and existing country auto-extension behavior. Done means certified annual H5 files are selected and verified, provenance-aware caches remain isolated, dependencies load without unwanted future years, and regional filtering and projected weights are preserved.

Written by the indexing model from the issue text.

Description

Microcosm's static-aging operator now supports independent annual cross-sections (PolicyEngine/microcosm#957; design tracking in PolicyEngine/microcosm#333). The production data interface will publish one native single-year H5 per supported year.

The wrapper currently extracts future-year inputs from one base file and reuses derived cache files by dataset basename and year. It needs to select explicitly published annual artifacts and preserve their projection provenance.

Required behavior:

  • Validate producer metadata.dataset_years mappings during bundle certification and retain exact revision/hash pins.
  • Load the requested annual H5 and verify its embedded year, entity layout, and source identity.
  • Keep cache entries separate across data revisions and relevant model/runtime identities.
  • Prevent country auto-extension from substituting unpublished years; preserve genuine internal historical dependencies.
  • Load requested years plus the earlier published input years required for those dependencies, without fetching future years by default.
  • Preserve native-ID regional filtering and projected household weights.

This issue covers consumer integration. A separate certification change will select the published annual release and the model version containing the Medicaid/SNAP cycle fix (PolicyEngine/policyengine-us#9539).

Dominant language
Python
Stars
7
Forks
9
Avg merge
15h 51m
Merged PRs (30d)
9

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.

More from PolicyEngine/policyengine.py

All issues in PolicyEngine/policyengine.py

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.