Align triple lock with published DWP / OBR uprating rates (#953)#1635
Align triple lock with published DWP / OBR uprating rates (#953)#1635
Conversation
The previous triple lock formula computed each year's uprating from calendar-year OBR average earnings, but DWP actually uses May-July AWE growth, leaving every year off by 0.5-1.2pp. Override the formula with published outturn rates for 2022-2026 and correct the hard-coded April 2025 basic and new state pension amounts (£176.45 / £230.25) plus add April 2026 (£184.90 / £241.30). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
MaxGhenis
left a comment
There was a problem hiding this comment.
Verified all six state-pension weekly amounts and both uprating rates against gov.uk benefit-and-pension-rates publications and the April 2026 DWP announcement. 176.45, 184.90, 230.25, 241.30 all match published outturn; 0.041 (2025-26) and 0.048 (2026-27) round cleanly to the published amounts.
Minor inaccuracy in the comment that doesn't block merge: the outturn.yaml description and the code comment imply the triple lock uprating follows a single methodology, but DWP's choice between AWE total-pay and regular-pay varies year to year — 4.1% for 2025-26 matches AWE total pay per the Sept 2024 DWP announcement, while 4.8% for 2026-27 matches AWE regular pay (excl. bonuses) per the 2025 uprating. Worth a follow-up to soften the methodology claim to 'AWE (measure DWP selects each year)'. Numbers are right either way.
Approach (outturn override + formula fallback for forecast years) is clean and exactly right.
Summary
outturn.yamllisting the published triple lock rates for 2022-2026 (3.1%, 10.1%, 8.5%, 4.1%, 4.8%) and updatecreate_triple_lock.pyto prefer outturn over the max-of formula when available.Closes #953.
Test plan
python -m pytest policyengine_uk/tests/test_triple_lock_outturn.py -v— 11 new tests pass (5 triple lock yoy, 3 basic SP weekly, 3 new SP weekly).make format— clean.gov.economic_assumptions.indices.triple_lockfor 2027+ years.🤖 Generated with Claude Code