Repository navigation
Give pension-age HB and CTR the severe disability premium Pension Credit uses - #1938
Conversation
…dit uses The Pension Credit minimum guarantee included the severe disability addition for an Attendance Allowance recipient, but the Housing Benefit and Council Tax Reduction applicable amounts took the legacy severe disability premium, which tests a narrower tax-credit disability flag (DLA care highest rate, PIP daily living enhanced rate). Guarantee Credit passports HB to its maximum, so the gap only showed when GC ended: a single pensioner on AA lost £2,040.52 of net income when private pension rose from £11,900 to £12,000. HB(SPC) Regs 2006 Sch 3 paras 6 and 12(1) and the pensioner CTR schedules give the severe disability premium the same qualifying benefits, conditions and amounts as SPC Regs Sch I para 1 and reg 6(5), and have no adult disability or enhanced disability premium. At pension age benefits_premiums is now the Pension Credit severe disability addition plus the carer premium. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tion Review of this PR found that sharing the Pension Credit severe disability addition made pension-age HB and CTR inherit two deviations from SPC Regs Sch I: a child in the benefit unit withheld it, although the residence test counts only people aged 18 or over (para 2(2)(f)), and a claimant's own Carer's Allowance withheld it, although only one paid "in respect of caring for him" does (para 1(1)(a)(iii)). Each qualifying adult is now withheld only when another member of the benefit unit receives a carer benefit. A couple who both qualify, one paid Carer's Allowance for the other, now gets one rate, as reg 6(5)(a) gives. Also: the pension-age premium is zero below State Pension age; YAML cases that assert an applicable amount use claimants who reached State Pension age before April 2021, so they hold with the allowance cohort split; the schedule property checks whole multiples of the weekly rate. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
An independent Opus review (in-session, not posted separately) returned APPROVE with two should-fix items and three nits. All are addressed in 2f3548f:
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Coordination with #1946 (working-age severe disability premium). This PR sends pension-age HB and CTR through the Pension Credit severe disability addition and keeps One difference remains between the two routes. #1946 applies the non-dependant condition (HB Sch 3 para 14(2)(a)(ii); SPC Sch 3 para 6(2)(a)(ii) for the pension-age equivalent). The Pension Credit addition does not yet do so. Chip task_e4bcb4ae covers that, and 🤖 Generated with Claude Code |
|
Coordination with #1951 (Pension Credit severe disability addition: statutory residence and carer conditions), which is stacked on #1896. 1. This PR alone has no residence test. Executed, 2026, England: claimant aged 80 on AA higher, State Pension £6,000 and private pension £12,000, living with an unrelated 40-year-old in their own benefit unit; council rent £6,240 and council tax £2,000.
2. Conflicts. This PR and #1951 both edit
It adds the #1896 couple rule, the residence test and one-person-per-award carer attribution. With both conflicts resolved to #1951's versions, all of this PR's tests pass on the merge: the 3 Hypothesis properties in Suggested order: #1896, then #1951, then this PR rebased onto it. 3. One divergence from HB law that belongs here, not in #1951. SPC Sch I para 2(2)(f) ignores any reg 4A qualifying young person. HB(SPC) reg 3(2)(a) excludes from "non-dependant" only "any member of the claimant's family", and Sch 3 para 6(6) ignores only qualifying-benefit recipients and blind people. So an 18- or 19-year-old young person of another family counts against the HB premium, but not against the Pension Credit addition. Executed on the merge, 2026, with the same claimant, rent and council tax as above: a claimant aged 80 on AA lives with her daughter, aged 50 and on PIP, and the daughter's 18-year-old son, who is in non-advanced education. The daughter and her son form their own benefit unit.
In both tables the law column is the model re-run with the premium set to 0; the claimant receives AA, so no non-dependant deduction applies (HB(SPC) reg 55(6)). A sketch, run in the audit's scratch tree, that fixed this case and left this PR's tests passing: class meets_pension_age_severe_disability_premium_residence_condition(Variable):
# HB(SPC) Sch 3 para 6(2)(a)(ii), (b)(iii) and (6), with reg 3(2)(a):
# no non-dependant aged 18 or over other than a qualifying-benefit
# recipient or a blind person; only the claimant's family is excluded.
value_type = bool
entity = BenUnit
definition_period = YEAR
def formula(benunit, period, parameters):
p = parameters(period).gov.dwp.pension_credit.guarantee_credit
person = benunit.members
adult = person("age", period) >= p.severe_disability.other_resident_age_limit
ignored = person(
"receives_severe_disability_addition_qualifying_benefit", period
) | person("is_blind", period)
counted = adult & ~ignored
family = person("is_claimant_or_partner", period) | person(
"is_child_or_young_person_for_legacy_benefits", period
)
return benunit.max(person.household.sum(counted)) == benunit.sum(
counted & family
)
# pension_age_severe_disability_premium:
# where(pension_age & resides, severe_disability_minimum_guarantee_addition, 0)The set HB counts contains the set Pension Credit counts in every case the model can represent, so multiplying the addition by this test gives the HB premium. Alternatively, reuse #1946's Two knock-on effects:
4. Documentation. The docstring says the premium's conditions "are the same" as the Pension Credit addition's. Two differences affect households the model can represent:
Neither affects the Enhanced FRS, because Evidence: executed scripts and law text are in the review folder for #1951 (audit/hb-mirror: cases.py, cases2.py, alone.py). |
|
Reviewed: request changes. Sending pension-age HB and CTR through the Pension Credit severe disability addition is the right design, and it removes the HB cliff when Guarantee Credit ends. Dropping the adult disability premiums at pension age matches HB(SPC) Sch 3 Part 3.
Verified: I read the current text of SI 2006/214 Sch 3 para 6, SI 2002/1792 Sch I paras 1-2, SI 2012/2885 Sch 2 Part 3 and WSI 2013/3035 Sch 2 para 6. Tests at 46b9ff3: 11/11 YAML; 7/7 pytest (properties and carer support payment). CI: 6/6 green. |
Codex review — changes requiredReviewed commit code-1 — [P1] Apply the severe-premium household conditions before copying the PC addition
Executed case: ages 80/78 in 2026, State Pension £13,000 each, claimant's higher-rate AA, neither partner blind, England council rent £6,240 and Council Tax £2,000. Guarantee Credit is zero, so there is no Guarantee Credit passport hiding the issue. The current head returns HB £5,792.28 and CTR £1,716.16. A control changing only Implement or depend on the complete qualifying-claimant/partner and other-resident conditions, respecting the HB-specific residence definition, before exposing the addition to HB/CTR. Add final-award cases for a one-qualifying-member/non-blind couple and non-ignored adult residents. The current passing cases cover couples where both qualify and children, leaving these exclusions untested. Confidence: high for the couple case; exact current head and executed final awards support the finding. Independent policy review corroborates the missing couple/residence conditions in HB Schedule 3 paragraph 6 and the CTR rules for England, Scotland and Wales. The overlapping code and policy findings are counted once. policy-2 [SHOULD ADDRESS] Keep HB's residence rule distinct from Pension Credit'sThe docstring at Sources: HB severe premium, HB nondependant definition, PC ScheduleI, England, Scotland, Wales. The prior fixes to child and own-carer exclusions do not resolve these conditions. Coordinate the claimant/partner and residence changes with #1896/#1951, retaining HB-specific rules. Validation: 18 focused tests passed. An executed final-award diagnostic reproduced the HB/CTR increases and isolated them with a zero-severe-premium control while leaving Pension Credit unchanged. Six official source originals were inspected and their cached bytes verified. No material review gaps remain within this scope. Focused tests used an existing cached Python 3.13 environment (Core 3.32.9, NumPy 2.1.3, pandas 2.3.1, microdf-python 1.2.1, Hypothesis 6.168.2, pytest 8.4.2) with this PR’s isolated source snapshot. No dependencies were installed; this was not a freshly synced lock environment or a full-suite/population run. This is a review comment, not a formal GitHub review vote. Live check before posting (2026-10-02T10:35:21.260004+00:00): same commit, CLEAN; all reported CI checks pass. |
|
Review pass (Claude Code, on Vahid's behalf) at Short version: the head hasn't moved since my round 1 on 1 October, so all four items stand and this is still request changes. The Codex review reaches the same blocker and adds a case where no Guarantee Credit passport hides it. The fix route hasn't changed either: #1896 and #1951 are both still open, and this PR merges cleanly onto main as it is. Status of round 1:
On item 1, reproduced at this head (2026, England):
What would close it: either route from round 1 works.
Either way:
Checked: the head is |
…ion-age-severe-disability-premium Conflicts in severe_disability_minimum_guarantee_addition.py and test_carer_support_payment.py resolve to #1951's versions, which replace this PR's earlier change to the shared Pension Credit addition. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Composition note from #2078 (stacked on #2009), which makes the CTR means test assess the applicant and partner rather than the benefit unit's claimant and partner. #2078 adds A property test in #2078 ( |
Apply the HB-specific residence condition to the shared Pension Credit addition, cover statutory couple and cross-family exclusions with final awards, and describe the removal of pension-age adult disability premiums. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Preserve the stacked severe disability formulas and HB residence fix. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
@vahid-ahmadi, point-by-point update for fix
Validation: the three requested policy directories had 716 passes and one new fixture failure (expected-list arithmetic strings), now corrected. Both pension-age YAML files then passed all 17 cases, including the child/own-carer cases and all six new final awards. Premium/HB properties, carer-support and code-health tests passed all 1,772 checks in one process (one dependency deprecation warning). Ruff formatting/lint passed before both commits. Fix |
|
@juaristi22, update on code-1 and policy-2 in fix
Validation: the three requested policy directories had 716 passes and one new fixture failure (expected-list arithmetic strings), now corrected. Both pension-age YAML files then passed all 17 cases, including the original child/own-carer cases and all six new final awards. Premium/HB properties, carer-support and code-health tests passed all 1,772 checks in one process (one dependency deprecation warning). Ruff formatting/lint passed before both commits. Fix |
…ension-age-severe-disability-premium
…-disability-premium
HB(SPC) Sch 3 para 6 has the working-age premium's conditions and para 12 its amounts, so the pension-age premium is severe_disability_premium for a family over State Pension age. A Pension Credit reform no longer moves pension-age HB or CTR. The schedule property keeps the Pension Credit addition as a cross-check. References add the CTR nomination rule and the other premium schedules; the conditions YAML notes the three income-rule defects its awards include (#1908, #2112, #2007). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…-disability-premium
SR 2006/406 Schedule 3 lists excluded tenancies; the applicable amounts, including the premiums, are in Schedule 4. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ion-age-severe-disability-premium Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Main's #1908 takes the Housing Benefit earnings disregards from net earnings only, so State Pension income is no longer reduced by them. The six final awards here fall by 65% of the old disregard; the premium and applicable-amount assertions are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…to hb-pension-age-severe-disability-premium Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Main's #1908 no longer deducts earnings disregards from State Pension income, so the case's HB income is 16,914 (18,000 less 20% tax above the personal allowance), still below the applicable amount. The expected award is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Three of this PR's YAML cases need new Housing Benefit values once #1945 lands, or this PR needs them when it merges after #1945. #1945 implements HB(SPC) Regs 2006 reg 27: for a savings-credit-only award, HB income is Pension Credit income plus the savings credit payable, under reg 27(4)(a). I checked this on a scratch merge of #1945 head c9033a6 with this PR's head fdeb647:
All three failures are in
The CTR values are unaffected, because #1909 already counts savings credit in CTR on main. Whichever of this PR and #1945 merges second updates these three expectations. If this PR lands first, I'll update them on #1945. |
|
UK hub merged main into this branch at
|
|
Merged by the UK hub under the PE-UK merge-on-gates rule:
|
Main's #1938 picked the pension-age premium schedule for HB, CTR and Income Support when any member was over State Pension age, while this branch moves the HB and CTR allowances to their own statutory tests (HB(SPC) Regs reg 5; the CTR pensioner tests). A mixed-age couple on Universal Credit then got the working-age allowance with pension-age premiums. Each programme now chooses the schedule with the test that chooses its allowance; Income Support, whose Schedule 2 is a working-age schedule, uses the working-age premiums; and the pension-age severe disability premium follows the qualifying age of a claimant or partner. Also folds the build's changelog fragments into this PR's own. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
#1938's pension_age_severe_disability_conditions.yaml cases on savings credit only now count the savings credit in Housing Benefit income (HB (SPC) Regs 2006 reg 27(4)(a)), so each award is 0.65 x the savings credit lower: 569.28, 59.44 and 908.46. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Summary
Pension-age Housing Benefit and Council Tax Reduction use their own schedules of premiums, which have the severe disability premium but no adult disability or adult enhanced disability premium (HB(SPC) Regs 2006 Sch 3; England CTR Sch 2; Scotland; Wales). Main applied the working-age premiums to every family. This PR:
benefits_premiums→PENSION_AGE_PREMIUMS: severe disability and carer; the two child premiums are not modelled);pension_age_severe_disability_premium, which issevere_disability_premiumfor a family over State Pension age. HB(SPC) Sch 3 para 6 sets the same conditions as the working-age premium (HB Sch 3 para 14): the qualifying benefits; both partners qualifying unless the other is blind; no non-dependant aged 18 or over, with the same exceptions (para 6(6), reg 3); and no carer benefit paid for caring for the claimant or partner. Para 12 sets the same weekly amounts, £86.05 and £172.10 in 2026-27.Before 2026 the model's premium amounts are not the enacted rates.
gov.dwp.disability_premia.severe_singleandsevere_couplehold a 2015 value uprated by CPI until their 2026 value, which gives £82.69, £88.73 and £90.95 a week for a single person in 2023, 2024 and 2025 against the enacted £76.40, £81.50 and £82.90 (para 12 as in force on 30 April of each year). These parameters are on main already and this PR does not change them; #1925 sets them to the announced amounts.Where only one partner qualifies and the other is blind, the qualifying partner is taken to claim, as a couple may agree (HB(SPC) reg 63(1); England CTR Sch 8 para 4(1)). Carers are attributed by #1977's
is_cared_for_by_carer_benefit_recipient.The Pension Credit severe disability addition has the same conditions apart from wider residence exceptions (SPC Regs Sch I para 2), but its own amount parameter. The premium now reads the HB amounts rather than the Pension Credit addition, so it no longer depends on a Pension Credit parameter. Pension Credit still affects pension-age HB and CTR awards through their other rules, such as the Guarantee Credit passport in
housing_benefit_applicable_income.Stack
#1946, #1951 and #1977 have merged (#1977 at 21:20Z on 3 October as
dba35e27). This branch merges #1977's final headab929c48, so its diff against main is its own 7 files.Impact on the Enhanced FRS
Real
Microsimulationruns on the Enhanced FRS 2024-25 (policyengine-uk-data 1.57.4, SHA-25603fe15e4…68d4). Baseline: #1977's headab929c48, so the comparison isolates this PR. Reform: this branch atb21f805a. Changes in £m a year:No household gains. Pension Credit, Universal Credit and Income Support do not change. The fall comes from families over State Pension age losing the adult disability and enhanced disability premiums, which their schedules do not have. The 2025 column uses the model's 2025 premium amounts (see Summary). An earlier run on older heads (
a4795bbf→5ea3a92a) gave a Housing Benefit fall of −134.3, −126.1, −159.9 and −164.3; main has changed since, and the table above replaces it.Tests
On
b21f805a: 905 tests (904 YAML cases and one Python test) undertests/policy/baseline/finance/benefit/family,gov/dwpandgov/local_authoritiesand 1,809 pytest (the pension-age premium, legacy premium and Pension Credit addition property files and the code-health tests) pass.fdeb6470then corrects one test comment (the HB income in a pension-age premium case is now £16,914) and changes no expected value. CI runs the full suite on the head. The schedule property checks that over State Pension age the premium is 0, 1 or 2 weekly rates, equalssevere_disability_premium, and, for the households it draws, equals the separately calculated Pension Credit addition.The final HB and CTR awards in
pension_age_severe_disability_conditions.yamlinclude the model's current income rules, including two known defects outside this PR, both tracked: no Savings Credit in pension-age HB income for a savings-credit-only claimant (#2112, HB(SPC) reg 27(4)(a)), and no non-dependant deduction exemption for a claimant on Attendance Allowance (#2007). The premium and applicable-amount assertions do not depend on them. Main's #1908 has fixed a third defect (earnings disregards deducted from State Pension income), so the six expected HB awards in that file fell when this branch merged main. Each is now the rent less 65% of income after tax above the applicable amount.Not modelled
uc_non_dep_deduction_exemptreads Pension Credit). Count Universal Credit carer-element awards in the severe disability premium and addition carer test #2120 tracks counting those awards without the cycle.Review of 2 October (subfleet, on
ab59fade)severe_disability_premium, with HB's own amounts.Review of 3 October (subfleet, on
5ea3a92a)🤖 Generated with Claude Code