Skip to content

Add the September 2026 CPI claims and PE-UK benefit-rate read-backs - #223

Merged
PavelMakarchuk merged 1 commit into
mainfrom
uk-uprating-readback
Oct 23, 2026
Merged

PavelMakarchuk merged 1 commit into
mainfrom
uk-uprating-readback

Conversation

@PavelMakarchuk

Copy link
Copy Markdown
Contributor

Summary

New lane uk-benefit-uprating: the CPI rate that sets the April 2027 uprating of most working-age benefits, and PolicyEngine-UK's benefit rates against every published April uprating. It gives a baseline check for the Autumn Budget 2026 question "will any working-age benefit be cut or uprated below CPI?".

  • Claims (2):
    • ONS September 2026 CPI, 3.5% (D7G7, release of 21 October 2026).
    • OBR's March 2026 forecast for 2026 Q3, 2.08% (EFO detailed forecast tables, economy, Table 1.7). obr.uk refuses scripted fetches, so the workbook is a Wayback copy, with its sha256 recorded.
    • The ONS rate is an official outturn. It is staged as a claim by decision (2026-10-22), a departure from the boundary rule that ARCHITECTURE.md records, as for the Census STC claims (US state income tax collections for every state (Census STC) as baseline claims #176).
    • Both claims are consumed_as_target: PE-UK takes ONS September rates and OBR determinants as inputs, so a match checks the input, not model skill.
  • Counterparts: pipeline/compute_uk_uprating_readback.py reads the parameter tree of policyengine-uk 2.147.2. There is no simulation and no dataset; data_bundle is parameter-tree. The protected UC health element comes from the model's own Universal Credit Act 2025 s. 4 floor.
  • Results on other lanes' claims (15), by claim_id, with no edit to those claims: the 4 HM Treasury Budget 2025 upratings (uk-ab2025-official) and the 11 Resolution Foundation upratings (uk-thinktanks). These were the archived "uprating_april2026" family that produce_campaign_uk blocks; this lane answers them on a current engine instead.
Claim Published PE-UK 2.147.2
Working-age benefits, April 2026 (HMT, Sept 2025 CPI) 3.8% 3.80%
UC standard allowance, April 2026 (HMT "over 6%"; RF) 6.0% / 6.2% 6.19%
UC standard allowance, under 25s, April 2026 (RF) 6.8% 6.81%
UC health element, existing claimants, April 2026 (RF) 1.5% 1.54%
LHA, April 2026 (RF) 0% 0% (freeze)
UC standard allowance, April 2027 / 2028 / 2029 (RF forecasts) 3.1 / 2.9 / 2.9% 3.10 / 2.89 / 2.78%
CPI-linked working-age rates, April 2027, against ONS September 2026 CPI 3.5% 2.30%
the same, against OBR's 2026 Q3 forecast 2.08% 2.30%

Finding. PE-UK 2.147.2 raises CPI-linked working-age rates by 2.30% in April 2027. That is OBR's calendar-year 2026 CPI, because gov.benefit_uprating_cpi follows the lagged calendar-year index. The model's own September 2026 CPI is a 2.12% forecast, with no outturn entered. Both are below the 3.5% that ONS published. This is PolicyEngine/policyengine-uk#2533; PolicyEngine/policyengine-uk#2557 (open) moves the index to September CPI and enters 3.5%. After that release, running the read-back again moves these rows with one command.

Also: the new metric cpi_inflation_rate, kept apart from cpi_inflation_effect (what a policy does to the CPI), and the release label parameter-tree.

Test plan

  • tests/test_uk_benefit_uprating.py:
    • raw hashes;
    • the extract equals the adapter output (needs openpyxl);
    • the ONS date is the London date, and a month that occurs twice is refused;
    • the claims;
    • the read-back's April 2026 legislated entries, and the April 2027 basket rise;
    • 4 HMT and 11 RF results in the built DB, and every HMT uprating claim is mapped.
  • Rebuild from scratch and export: 13 new feed rows (export pins UK +13, total 5724 → 5737); the 4 HMT rows gain results.
  • pytest tests/ (test_modal_uk_event deselected locally): the only failures are 58 failures and 3 errors in the UK replay and registry tests. They come from this machine's base Python environment (an old policyengine-uk that uv run can see), and the same 58 + 3 occur on a clean main checkout.
  • ruff format --check; bun test src, bun run lint (the 2 existing warnings), bun run build.

🤖 Generated with Claude Code

New lane uk-benefit-uprating. Two claims for the CPI rate that sets the
April 2027 uprating of most working-age benefits: ONS September 2026
(3.5%, staged as a claim by decision, a departure from the boundary rule)
and OBR's March 2026 forecast for 2026 Q3 (2.08%). A parameter-tree
read-back on policyengine-uk 2.147.2 answers them and attaches to the 4
HM Treasury and 11 Resolution Foundation uprating claims by claim_id.

PE-UK 2.147.2 raises CPI-linked working-age rates by 2.30% in April
2027 (OBR's calendar-year CPI), 1.2 points below the ONS rate; the fix
is policyengine-uk#2557.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
policyengine-scorecard Ready Ready Preview Oct 22, 2026 9:56pm UTC

Request Review

@PavelMakarchuk
PavelMakarchuk merged commit 414a0e2 into main Oct 23, 2026
13 checks passed

This branch was successfully deployed

1 active deployment
Preview — 8116183d Deployed Oct 22, 2026 by vercel[bot]
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