Skip to content

Bump policyengine_core to >=3.25.0#283

Merged
MaxGhenis merged 1 commit intomainfrom
bump-pe-core-3.25
Apr 18, 2026
Merged

Bump policyengine_core to >=3.25.0#283
MaxGhenis merged 1 commit intomainfrom
bump-pe-core-3.25

Conversation

@MaxGhenis
Copy link
Copy Markdown
Contributor

Summary

Fixes #1628.

Bumps `policyengine_core` minimum to `>=3.25.0` to pick up the `set_input` preservation fix from PolicyEngine/policyengine-core#475.

Why

PE-core 3.24.0–3.24.3 introduced a cache-invalidation cascade that wiped `set_input` values whenever a reform was applied during simulation construction. For policyengine.py this manifested as UK household-impact calculations returning zero — `income_tax`, `universal_credit`, `child_benefit` all came back as £0 even for households with substantial earnings, because the country subclass's dataset inputs got wiped by the reform apply that runs during init.

3.25.0 preserves user-provided inputs (including `holder.set_input` via `SimulationBuilder.finalize_variables_init`) while still invalidating formula-output caches.

Test plan

  • All 11 `tests/test_household_impact.py` cases pass on the new pin (previously all returned zero)

Generated with Claude Code

PE-core 3.24.0-3.24.3 cache-invalidation wiped set_input values across
apply_reform, causing UK household-impact calculations to return zero
(#1628). 3.25.0 (PolicyEngine/policyengine-core#475) preserves user
inputs while still invalidating formula-output caches.

All 11 tests/test_household_impact.py cases pass on the new pin.

Closes #1628

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@MaxGhenis MaxGhenis merged commit 33f6568 into main Apr 18, 2026
11 checks passed
@MaxGhenis MaxGhenis deleted the bump-pe-core-3.25 branch April 18, 2026 11:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant