Conversation
Replace the OBR table 4.9 Housing Benefit target, which is GB DWP-funded spending but was compared with UK-wide modelled Housing Benefit, with DWP Spring 2026 targets for Housing Benefit spending and claims over Pension Credit qualifying age in Great Britain. Targets can now name the countries they cover. The figures under Pension Credit qualifying age are kept but not calibrated: the model pays working-age Housing Benefit to too few records for a target to be met without concentrating it on a handful of them. Stop drawing would_claim_uc for benefit units whose adults have all reached State Pension age, keeping every other unit's draw unchanged. Require policyengine-uk 2.102.5, which lets pension-age families make new Housing Benefit claims (PolicyEngine/policyengine-uk#1901). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
State in the release note that modelled GB Housing Benefit falls to about £8.0bn. Mark the mixed-age classification as an assumption, date the benefit-group equality from 2024-25, and quote the calibrated build's working-age claims. Add a test that the calibrated columns build on the dataset, since the loss matrix skips a target whose column raises, and note that would_claim_uc uses survey-year State Pension age. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…flag The create_frs smoke test's fake simulation did not answer the variables the would_claim_uc rule now reads (person_benunit_id, is_adult, is_SP_age), which failed CI with KeyError: 'person_benunit_id'. Pick the claimant-and-partner flag the way the locked policyengine-uk does for Housing Benefit's pension-age route: is_claimant_or_partner where the release defines it, otherwise is_adult as in 2.102.5. Both the would_claim_uc rule and the age-group targets use it. Under 2.102.5 the base FRS is identical to the previous commit's in every column. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 1, 2026
Contributor
Author
|
Interaction with #514. That PR rebuilds |
25 tasks
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follows up PolicyEngine/policyengine-uk#1901 (released in policyengine-uk 2.102.5), which lets families whose adults are all over State Pension age make new Housing Benefit claims.
What changes
uv.lockpinned 2.93.0, so a data build today would not include #1901.Target.countrieszeroes the loss-matrix column outside those countries, viarestrict_to_countries.would_claim_ucis False for benefit units whose adults have all reached State Pension age. They cannot claim Universal Credit. The draw still covers every unit, so the random stream and every other unit's value are unchanged.The under-Pension-Credit-age figures (£5,778.1m, 460k) are transcribed and tested but not calibrated. The next section gives the evidence.
Age groups
DWP splits by benefit rules, not age alone (tables, Notes, note 5). Its over and under lines equal its Pension Credit + State Pension and ESA + other working-age benefit groups exactly from 2024-25.
Regulation 5 of both Housing Benefit Regulations 2006 (SI 2006/213 and 2006/214) applies the pension-age rules when the claimant or partner has reached Pension Credit qualifying age, unless either is on UC, Income Support, income-based JSA or income-related ESA. The model column therefore counts a benefit unit as over when an adult has reached State Pension age and the unit gets none of those four benefits. That puts mixed-age couples who kept pension-age Housing Benefit after May 2019 in the older group, as DWP's benefit groups do. Stat-Xplore's Housing Benefit "Age of claimant" also uses "the eldest age within that couple".
Results
Four real builds, each with production settings (
PE_UK_DATA_OA_CLONES=1, 512 epochs) and the same trained imputation models. Each dataset was then simulated with policyengine-uk 2.102.5.GB Housing Benefit, FY 2025-26 (ratio to DWP in brackets):
Weights and side effects, FY 2025-26:
would_claim_ucWhy the working-age targets are left out. C meets DWP's working-age figure by loading it onto about three effective records. Its effective sample size for under-PC recipients is 3, and one record carries a quarter of all Housing Benefit. Its national fit is no better, and income-related ESA claimants move from 1.06x to 1.15x of target.
The cause is the model, not the target. policyengine-uk pays working-age Housing Benefit only as a continuing award to families that report it and do not claim UC: 267 of the 770 working-age records that report it (2025-26). DWP's working-age total also covers temporary and supported accommodation, £5.2bn together in 2025-26 and not split by age, which the FRS barely samples.
Other measurements:
Invariants and tests
would_claim_uc.would_claim_uc. That changed for 2,848 of 5,714 wholly pension-age units, all True to False; no other unit changed.Follow-ups (not in this PR)
Independent review (Opus 5.5, Subfleet): APPROVE. Its findings were addressed in 2597102: the release note now states the total drop, the mixed-age assumption is marked, the benefit-group equality is dated from 2024-25, the working-age claims figure comes from the calibrated build, a test on the built dataset was added, and a comment now explains the State Pension age dependency.
axiom: n/a: data/calibration-only change
Merging releases data (the push workflow builds and uploads the dataset), so the merge is queued as a decision.
🤖 Generated with Claude Code