Certify policyengine-us 2.15.17 in the US bundle
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 42/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- python
- Domain
- build-system, data
Research direction
Read docs/engineering/skills/data-certification.md and inspect the certified release manifest and scripts/bundle.py. Start by auditing stored inputs, comparing population aggregates and running the test suite for the pinned versions. Done means the evidence supports compatibility, the 2.15.17 claim is appended, certification succeeds, and policyengine-core is bumped to 3.32.8.
Written by the indexing model from the issue text.
Description
Problem
The certified US bundle in policyengine 6.1.2 pins policyengine-us==2.2.1 and policyengine-core==3.32.5. The newest policyengine-us on PyPI is 2.15.17, which requires policyengine-core>=3.32.8.
2.2.1 still has SNAP rounding defects that later releases fix. PolicyBench recomputed its 1,984 US household reference outputs (tax year 2026) under both versions:
- 22 outputs disagree: 13 SNAP, 8
federal_income_tax_before_refundable_creditsand 1 state income tax. - Under 2.2.1, 12 of 19 positive annual SNAP amounts are not whole dollars. One NJ household gets 15,309.53 under 2.2.1 and 15,273 under 2.15.17.
- Under 2.15.17, all 18 positive SNAP amounts are whole dollars.
PolicyBench records whether its reference model matches the policyengine.py certified bundle. Until policyengine.py certifies a current policyengine-us, every reference it builds on the newest model is flagged as uncertified.
Constraint
The certified data release populace-us-2024-spm-20260915 was built with policyengine-us 2.2.1. Its release manifest's publisher claim covers >=2.0.0,<2.3. Under the certification gate (docs/engineering/skills/data-certification.md), 2.15.17 needs either a new data build or a published compatibility claim for it.
Plan
- Build the evidence that the certified H5 means the same thing to 2.15.17 as to 2.2.1:
- stored-input audit, covering renamed, removed and now-computed inputs and enum members;
- population aggregates under both versions, with every move explained;
- the test suite on the pinned pair.
- If the evidence holds, append a
policyengine-us==2.15.17claim to the release manifest, as #491 and #536 did for UK. - Certify with
scripts/bundle.py certify-data --country us --data-producer populace --model-version 2.15.17, and bumppolicyengine-coreto 3.32.8.
- Dominant language
- Python
- Stars
- 7
- Forks
- 9
- Avg merge
- 16h 16m
- Merged PRs (30d)
- 8
Getting set up
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.
More from PolicyEngine/policyengine.py
-
Difficulty 2/5 Half a day Newbie friendliness 84/100
PolicyEngine/policyengine.py#533 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
PolicyEngine/policyengine.py#473 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
PolicyEngine/policyengine.py#436 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
PolicyEngine/policyengine.py#408 ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
PolicyEngine/policyengine.py#537 ·
Maintainers usually reply within 1 day
All issues in PolicyEngine/policyengine.py
Similar issues
-
customer-reported
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Azure/azure-cli#34150 · 1 comment ·
Maintainers usually reply within 1 day
-
community-request
Difficulty 1/5 Under an hour Newbie friendliness 95/100
NVIDIA-NeMo/Curator#2464 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
WeblateOrg/translation-finder#1099 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
trezor/trezor-firmware#7997 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day