Skip to content

Give Scotland and Wales working-age CTR their own rules - #1966

Queued
MaxGhenis wants to merge 24 commits into
mainfrom
ctr-working-age-shortfall
Queued

MaxGhenis wants to merge 24 commits into
mainfrom
ctr-working-age-shortfall

Conversation

@MaxGhenis

@MaxGhenis MaxGhenis commented Sep 30, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes #1962. Also fixes #1935.

Reproducer: policyengine_uk/tests/policy/baseline/gov/local_authorities/council_tax_reduction/council_tax_reduction_devolved_working_age.yaml; policyengine_uk/tests/test_council_tax_reduction_devolved_working_age_properties.py::test_devolved_working_age_award_properties

axiom: TheAxiomFoundation/rulespec-uk#393 queued (SSI 2021/249 regs 13(11), 35, 38(2) and (4), 42, 49(6), 50(3), 51(9), 57(1)(o) and (p), 77(2), 78(3), Sch 1 paras 5(3)-(4) and 6(1), Sch 3 para 4(3); SSI 2012/303 reg 38; WSI 2013/3029 Sch 6 paras 3, 9, 15(3), 20(1)(c) and (3), 21(1), 25, Sch 7 paras 1-4 and 14, Sch 9 para 4, Sch 9 and 10 para 8; childcare note)

The defects on main

main sends working-age households in Scotland and Wales through the pension-age means test, which uses Housing Benefit parameters. On the certified Enhanced FRS 1.58.1, we estimate 2026 CTR for these households on main (76cfc9e) at:

  • Scotland: £0.058bn (0.059m households), against the £0.097bn (0.306m) that survey respondents report;
  • Wales: £0.004bn (0.011m), against the £0.061bn (0.087m) that respondents report.

Four legal defects cause the shortfall:

  1. Universal Credit. main counts the whole UC award, including the housing costs element, as income against a Housing Benefit personal allowance with no children in it. The law differs in each country:
    • Wales (WSI 2013/3029 Sch 6 paras 3 and 9) compares the Secretary of State's UC income plus the award with the UC maximum amount. The housing and child elements cancel, and a UC claimant with no earnings gets the maximum reduction.
    • Scotland (SSI 2021/249 regs 35, 42, 57(1)(p) and (2)(d)) keeps its own applicable amount. It counts as income only the UC child element (with disabled-child additions) plus the childcare costs element, up to the amount of the award, and it measures earnings on the UC basis, with the CTR earnings disregards and no work allowance.
  2. No passport. main means-tests claimants on Income Support, income-based JSA or income-related ESA, whom the law gives the maximum reduction (SSI 2021/249 reg 13(11); WSI 2013/3029 Sch 9 para 8 and Sch 10 para 8).
  3. Applicable amounts.
    • main has no child amounts. Scotland sets its child premium at £109.85 per child, which has exceeded Housing Benefit's by 25% since 2017, and Wales its child amount at £87.88.
    • It has no family premium, which Wales sets at £20.22 and Scotland kept until it closed the premium to new claims on 1 May 2016.
    • It has no disabled child premium or child enhanced disability premium.
    • In Wales it uses Housing Benefit's personal allowances (£95.55 / £75.65 / £150.15) in place of Wales's own (£101.85 / £80.60 / £159.85).
    • It uses the projected DWP amounts for the adult premiums, which differ from the devolved amounts in most years: for the 2025-26 disability premium it projects £47.48, where the law sets £43.20.
    • It gives a couple one carer premium even when both partners qualify.
  4. Income.
    • It counts Child Benefit, which both countries disregard.
    • It has no earnings disregards (£5, £10, £20 or £25, plus £17.10) and no childcare deduction.

What this changes

simulated_council_tax_reduction_benunit sends a Scottish or Welsh claim down a new working-age route when council_tax_reduction_pensioner (main's per-claim scheme flag) returns false. The route supplies its own applicable amount and income; the capital limit reads main's council_tax_reduction_assessable_capital for every national claim.

The route assesses the people main's applicant identity (#2078) names, through working_age/_applicant.py:

  • is_council_tax_reduction_applicant_or_partner marks the applicant and partner.
  • Where the household head applies alone (council_tax_reduction_head_applies_alone), the route assesses the head as a single person. The benefit unit's partner, children, UC, income-related benefits and tax credits belong to its claimant, not to the head, and the head's own premium conditions apply, as in council_tax_reduction_premiums.
  • Children and lone parents follow each scheme's own young person (Use the Universal Credit young person in Scotland's working-age Council Tax Reduction #2288): is_child_or_young_person_for_council_tax_reduction and is_council_tax_reduction_lone_parent. Scotland's working-age scheme takes Universal Credit's definition from 2022-23, and Wales takes Child Benefit's.

The PR adds these variables in council_tax_reduction/working_age/:

Variable Rule
council_tax_reduction_devolved_working_age Scotland or Wales, not a CTR pensioner. Mixed-age UC couples take this route (WSI 2013/3029 reg 3; SSI 2021/249 reg 3).
council_tax_reduction_working_age_applicable_amount Wales with UC: uc_maximum_amount. Otherwise: personal allowance, child amounts, and the devolved adult premiums (council_tax_reduction_working_age_adult_premiums).
council_tax_reduction_working_age_personal_allowance Couple / lone parent / single 25+ / single under 25. The higher single rate also applies on main-phase ESA and, in Scotland, on UC with LCW.
council_tax_reduction_working_age_child_amounts Per-child amount, family premium, disabled child premium, child enhanced disability premium.
council_tax_reduction_working_age_adult_premiums, _carers Disability, severe disability, enhanced disability premiums at the devolved amounts (who qualifies follows the legacy premium variables, with CTR's own severe disability premium family test, council_tax_reduction_severe_disability_premium), and a carer premium for each applicant or partner entitled to Carer's Allowance or Carer Support Payment, including an entitlement an overlapping benefit reduces to nil (WSI 2013/3029 Sch 7 para 14(1); SSI 2021/249 Sch 1 para 6(1)(a)-(b)), with one premium for partners who care for the same severely disabled person (SSI 2021/249 Sch 1 para 5(3)-(4); SSCBA s.70(7ZA) allows one Carer's Allowance for each cared-for person). Scotland also counts an award of UC that includes the carer element (para 6(1)(c)), as one carer when no one in the family has a carer benefit entitlement.
council_tax_reduction_working_age_applicable_income Passported: 0. Wales with UC: UC earnings before the work allowance + UC unearned income + the award. Wales without UC: net earnings − disregards − childcare charges (never below zero), + unearned income less its tax + tariff income + rent from letting part of the home. Scotland: net earnings − disregards + unearned income + tariff income (+ relevant UC payments with UC; + rent from letting part of the home before SSI 2021/249), − childcare charges, never below zero.
council_tax_reduction_working_age_person_earned_income, _earned_income, _employed_earned_income Per applicant or partner. Wales with UC: the UC model's own earned income before the work allowance, after the minimum income floor (uc_individual_earned_income): the Secretary of State's figure (Sch 6 para 9). Scotland with UC: the UC measure without the floor (uc_individual_earned_income_before_mif), since SSI 2021/249 regs 49 and 51(2) have none, less miscellaneous income (net of its tax share), which Scotland counts as unearned. It includes SSP/SMP/SPP and deducts only the tax and NI paid in respect of the employment or trade. Without UC: pay and SSP/SMP/SPP less the income tax and primary Class 1 on the employment (reg 50(3)(a); WSI 2013/3029 Sch 6 para 15(3)(a)). The route takes the tax from the UC model's split, with earnings as the lowest slice and pay before trade (uc_income_tax_on_earnings less uc_income_tax_on_trade), and shares it pro rata with miscellaneous income, which counts as unearned; primary Class 1 comes off pay in full. Self-employed profit takes the prescribed notional deductions, not the tax paid (SSI 2012/303 reg 38 via SSI 2021/249 reg 51(9); WSI 2013/3029 Sch 6 para 25): basic-rate tax on the profit less the personal allowance (in Wales also the blind person's allowance), Class 4 at the main rate between the profits limits, and Class 2 before April 2024. Half of pension contributions comes off. Never Class 3, tax on pensions or tax on dividends. Employed earnings feed Scotland's £17.10 test.
council_tax_reduction_working_age_unearned_income_tax Income tax on the counted taxable unearned income. earned_income_tax (non-savings tax other than on property income) less the tax on earnings gives the tax on pensions and taxable benefits, which the route shares pro rata with those the schemes don't count (the Scottish Carer Supplement). Wales without UC disregards it (Sch 9 para 4); Scotland counts unearned income gross (reg 57).
council_tax_reduction_working_age_earnings_disregard £25 lone parent; else £20 with a disability premium, or in Scotland for a UC applicant with LCW or LCWRA where the applicant or partner hasn't reached pensionable age and at least one of them, not necessarily the same one, works (Sch 3 para 4(3)(b): "is engaged in employment"); else, for a carer, £20 of the carers' own earnings plus up to £10 of a non-carer partner's (paras 6-7, which identify carers by a carer benefit in payment); else £10 couple, £5 single. Plus £17.10 on the work conditions (not with UC), where earnings cover the other disregard, the childcare deduction and the £17.10: a couple qualifies only when its disabled member works, and in Scotland from April 2022 only employed earnings qualify. Never more than earnings.
council_tax_reduction_working_age_unearned_income Scotland's closed list in reg 57(1); in Wales, gross income other than earnings less the Sch 9 disregards (Sch 6 para 17). The model counts pensions, contributory ESA and JSA, Carer's Allowance, the Carer Support Payment component after main's one-partner limit for a couple caring for the same person and before the overlapping-benefit reduction (as the pension-age route counts it; not the Scottish Carer Supplement), MA, IIB, IB, SDA, Part 5 miscellaneous income and tax credits.
council_tax_reduction_relevant_universal_credit_payments Scotland: min(child element + disabled-child additions + childcare element, award).
council_tax_reduction_working_age_childcare_deduction Legacy: charges up to £175 / £300 a week when the lone parent, or both of a couple, work 16 hours or more. Scotland with UC: the childcare element ÷ 0.85, up to £290 / £497 (2026). Each cap counts the family's children with positive childcare_expenses, the children "in respect of whom relevant childcare charges are paid" (WSI 2013/3029 Sch 6 para 20(3); SSI 2021/249 regs 38(4) and 42(4)); charges entered on an adult count at the one-child cap.
council_tax_reduction_working_age_passported, _has_universal_credit, _universal_credit_award IS / JSA(IB) / ESA(IR) with no award of UC as main's council_tax_reduction_universal_credit_award defines it; UC entitlement, not a household head's who applies alone; the award after the benefit cap and before deductions from payment.

The Scottish cap without UC. SSI 2021/249 reg 38(2)(c) deducts "any relevant childcare charges calculated in accordance with regulation 77", reg 77 sets no amount, and reg 38(4) gives £175 / £300 as "The maximum deduction to which paragraph (2)(d) refers". Read by themselves, those words leave the ordinary deduction uncapped. The route applies the maximum to the whole deduction, and these points support that reading:

  • Reg 38(2)(d) has no verb of its own: it carries on paragraph (c)'s deduction, and "up to the maximum deduction" closes it. Reg 42(2)(c) runs the same words together. The Scottish Government has raised reg 42(4)'s maximum four times since 2023, and its SSI 2024/35 policy note calls it "the maximum allowable childcare costs in CTR" for those on UC. Those increases only matter if the maximum reaches beyond the tax credit limb, since a UC claim ends a tax credit award (SI 2014/1230 reg 8(2)).
  • If the maximum reached only paragraph (d), paragraphs (3) and (4) would change no award: paragraph (c) would already deduct the whole charge from a sum that counts working tax credit and child tax credit as unearned income (reg 57(1)(q), (r)).
  • The predecessor (SSI 2012/303 reg 27(1)(c), (3)) capped the whole deduction at £175 / £300, and reg 42(4) as made started at the same amounts. The policy note says "For those not receiving UC their level of CTR will be maintained", and it aims to give a household the same reduction on UC or off it.
  • CPAG's Scottish guide takes eligible childcare costs off income up to £175 a week for one child or £300 for two or more "if you do not get UC" (May 2026). We found no council or Scottish Government guidance that pays the ordinary route uncapped.

The reading changes an award only where a family without UC pays more than the maximum. For example, a Scottish lone parent aged 60 with £5,000 of self-employment profit at 30 hours, an £18,000 private pension, £12,000 of registered childcare for a five-year-old and £1,800 of council tax deducts £9,100 and gets £1,416.16. Without the maximum, that parent would deduct £12,000 and get £1,800. A council, Scottish Government or review panel source that pays the ordinary route uncapped would reopen this reading.

Capital and tariff income come from main's #1995 variables, which already cover the working-age schemes: council_tax_reduction_assessable_capital (Wales with UC: UC capital; Wales passported: nil; otherwise savings, land and property less 10% and secured debt) and council_tax_reduction_tariff_income (£1 a week per £250 or part above £6,000; with an award of UC, the UC assumed yield of £4.35 a month per £250 or part). Rent from letting part of the home comes from council_tax_reduction_home_letting_income.

The PR adds the new parameters under gov.local_authorities.{scotland,wales}.council_tax_reduction.working_age. Every uprated amount has its full history from 2013-14 to 2026-27, and each change cites the amending instrument and provision. We compiled the history from legislation.gov.uk and checked it as a chain: each year's "for £X" equals the previous year's value. Welsh 2013-14 values, including the fixed disregards and childcare caps (from 1 April 2013), come from the revoked WSI 2012/3144, which then applied.

The PR leaves pension-age CTR, the English schemes and the Housing Benefit parameters unchanged. Outside the new working_age/ folders, it changes only the Scotland/Wales hook in simulated_council_tax_reduction_benunit.py, the CTR notes in programs.yaml, and the documentation of council_tax_reduction_pensioner and council_tax_reduction_pension_contribution_deduction_rate, which now name the devolved working-age route for Welsh and Scottish claims.

Composition with main

The branch merges main at 47a2817 (2026-11-05) in 0523f90. Git reported four conflicts, which the merge resolved as follows:

  • test_council_tax_reduction_pension_credit_properties.py: both sides' BENUNIT_VARIABLES.

  • test_means_test_income_properties.py: main's 16-year-old example and this PR's note that the test covers the Scottish and Welsh working-age income.

  • council_tax_reduction_pension_contribution_deduction_rate.py: main's wording and its Oxford Appendix 3 route, with the devolved working-age route in place of main's "no such route for Wales and Scotland yet (Scotland and Wales working-age council tax reduction ignores the Universal Credit rules, child amounts and the benefit passport #1962)".

  • council_tax_reduction_pensioner.py: this PR's scheme-selection sentence, plus main's tariff-income and Scottish-income uses.

  • Treat income derived from capital as capital in the legacy means tests #1995 (capital, tariff income, letting income). main now holds council_tax_reduction_assessable_capital, council_tax_reduction_tariff_income, council_tax_reduction_universal_credit_award and council_tax_reduction_home_letting_income, and 09b5203 points the route at them. It drops this PR's council_tax_reduction_working_age_capital and council_tax_reduction_working_age_tariff_income, and the two working_age/tariff_income.yaml parameter files, whose amounts equal main's. These effects follow:

    • Property capital now reaches the working-age capital limit and tariff income.
    • A Scottish working-age applicant with UC now has the UC assumed yield as tariff income, as main sets it, in place of £1 a week.
    • Rent from letting part of the home counts on the route in Wales, and in Scotland before SSI 2021/249.
    • main's two let-property cases in income_from_capital.yaml pinned Welsh and Scottish working-age awards under the shared formula. We re-derived both under the devolved route, with the working-age applicable amount supplied as £6,000: the route deducts only the tax on the pay, which bears none, so each gets £827.20, not £840.40 and £837.14.
  • Means-test the Council Tax Reduction applicant and partner, not the benefit unit's claimant #2078 (applicant and partner) and the per-claim council_tax_reduction_pensioner. These replace council_tax_reduction_claim_pensioner, which main removed. The route keys on the new flag, and every mask reads the applicant identity (above).

  • Use the Universal Credit young person in Scotland's working-age Council Tax Reduction #2288 (Scotland's own young person). The five reads it flagged now use the scheme-aware variables.

  • 2025-26 legacy carer premium and HB personal allowance are extrapolated, not statutory #2110 (statutory 2025-26 amounts). The branch keeps main's Carer Support Payment header and 2025 case.

  • UC statutory pay. main's UC now counts SSP, SMP and SPP itself (UC Regs 2013 reg 55(4)), so the Scottish UC route no longer adds them. The Welsh UC route follows UC as before.

  • Give sharers, boarders and lodgers their own rent, tenure and LHA category #2006 joint liability, Count Carer's Allowance and Carer Support Payment as Pension Credit income #1952 CSP. The liability keeps council_tax_reduction_joint_liability_share. The working-age route counts carer_support_payment_pre_overlap, like main's CTR income, until we settle which amount CTR counts.

  • main property tests that asserted every national-scheme claim follows the shared formula. test_council_tax_reduction_carer_income_properties.py and test_council_tax_reduction_pension_credit_properties.py now hold their shared-formula assertions to claims where council_tax_reduction_devolved_working_age is false, and check the devolved claims against the route's own invariants (see Tests and Invariants).

  • main tests that pinned Scottish and Welsh working-age awards under the shared formula. We re-derived each under the devolved rules, with its derivation in the YAML:

    • claimant_family_scheme.yaml: four shared-rent cases. The working-age family's income input moves to the working-age variable. Wales's own £101.85 allowance gives £359.24, not £293.72; Scotland's amount equals HB's, so its award doesn't change.
    • applicant_or_partner.yaml: two Scottish couples get the couple's £10 earnings disregard, so £1,465.56, not £1,361.56.
    • severe_disability_premium_young_person.yaml: where the 19-year-old counts as a UC qualifying young person, the Scottish applicant counts as a lone parent with a £109.85 child premium. The applicable amount of £15,155.40 exceeds the £12,570 income, so the applicant gets the full £2,000.
    • The Welsh working-age earner in council_tax_reduction_pension_credit.yaml gets £1,111.24. The capped Welsh mixed-age UC couple in council_tax_reduction_pensioner.yaml gets the maximum reduction (WSI 2013/3029 Sch 6 paras 3 and 9). main's Carer Support Payment cases get the devolved amounts: the Welsh carer £1,260.92, the 2025 Scottish carer £1,173.56.
    • ctr_takeup.yaml: the Scottish working-age calculator household claims Universal Credit by default and has no children, so the Scottish scheme counts none of its award: £1,800, not £633.96.
    • income_from_capital.yaml: the two let-property cases above.
    • test_budget_totals_pinned.py: main pins the baseline and uprating totals of scottish_lone_parent, a lone parent aged 26 with £9,000 of pay, a child aged two, Universal Credit and £1,100 of council tax. main pays this household no reduction, because it counts the whole award as income. The route pays £806.12, £915.42, £966.70 and £1,065.44 in 2023, 2025, 2026 and 2028, and the uprating reform raises those by 15%. For example, in 2026 the route counts £7,700 of pay after the £25 a week disregard, plus the £3,647.28 child element. That income exceeds the £10,680.80 applicable amount by £666.48, so the household gets £1,100 less 20% of £666.48. We worked out each year's reduction by hand from those amounts, and each came within £0.001 of what CI printed at b55ff4022. 3e696c86d then moved the eight pins to the printed totals. The cases that abolish council tax pay no reduction and don't move.
    • test_council_tax_reduction_pensioner_children_tariff_properties.py: main pins the awards of 23 households in 2019, 2024 and 2026, and six of them now take the working-age route. The six cover, in each of Scotland and Wales, a lone parent aged 40 with a child of seven, £15,000 of pay and £12,000 of savings; a couple aged 35 and 33 with children of three and nine, £25,000 of pay and £16,000 of savings; and a single person aged 25 with £9,000 of pay and £8,000 of savings. Each owes £2,000 of council tax. main pays the four families nothing, and the route pays them £376.27 to £1,329.96. The single people's awards rise from main's £885.87, £1,058 and £1,110.52 to £937.87, £1,110 and £1,162.52 in Scotland and £987.79, £1,171.88 and £1,228.04 in Wales. For example, in 2026 the Welsh route counts £9,000 of pay less the £5 a week disregard, plus £416 of tariff income on the savings, so £9,156. That income exceeds the £5,296.20 applicable amount by £3,859.80, so the person gets £2,000 less 20% of £3,859.80. We worked out all 18 awards by hand the same way. CI printed 15 of them at 3e696c86d, because the assertion stops at five mismatches a year, and each came within £0.001. 5ca81bbad moved the pins, and CI passes there.
  • Presume a member 20+ years younger is the claimant's child when no roles are supplied #2082 (couples entered without roles). When a couple's ages differ by 20 years or more and the input gives no roles, main reads them as a single claimant. The two mixed-age YAML cases (the Welsh UC couple aged 70 and 50, and the Scottish LCWRA couple aged 40 and 70) now supply is_claimant_or_partner for both members. The devolved property generator draws each adult's age from 18 to 60, so main reads some generated couples as a single claimant with another adult; the properties hold on either reading.

  • Limit same-person carer benefit awards within couples #2632 (one carer benefit per cared-for person). main pays Carer's Allowance or Carer Support Payment to one partner of a couple caring for the same person, and carer_support_payment_pre_overlap, which this route counts, carries that limit. The one-premium case counts one payment: income £14,495.40 and award £2,163.24 (two premiums would give £2,664.00). Since only one partner now has a modelled carer benefit, the route's own one-premium cap in council_tax_reduction_working_age_carers acts only where the input supplies a carer benefit for both partners, and no test exercises it yet: dropping it passes every case. SSI 2021/249 Sch 1 para 5(3) gives a couple a carer premium for each partner who qualifies, "but only if they are not caring for the same severely disabled person", and para 5(4) gives the premium to one of them, so the route keeps the cap. main's carer_premium applies the same cap with the same citation.

  • Evaluate claims_all_entitled_benefits per benefit unit #1831 (take-up). The PR leaves take-up as it is: in survey runs, CTR claims still follow reported receipt.

Impact (certified Enhanced FRS 2024-25, release 1.58.1)

CI's Aggregate impact report (run 42049106500) compared main e3765cb61 with 6af35d6fcc, its merge of this head into that main, running a full microsimulation for each side and fiscal year. The change breaks no check, and the report flags 27 moves for review: CTR spending and caseload in every year, mean net income in deciles 1 to 4, and absolute child poverty after housing costs in two years.

We estimate that CTR spending and household net income rise by £105.3m in 2025-26, £110.9m in 2026-27, £115.7m in 2027-28, £121.4m in 2028-29, £126.4m in 2029-30, £133.1m in 2030-31 and £137.9m in 2031-32, with 136k to 139k more recipients each year. Each year 0.5% of people gain over £1, and 0.0% lose over £1. Absolute poverty after housing costs falls by 21k to 40k people a year, 6.3k to 19.9k of them children.

In the report's table that keeps households in their base deciles, deciles 1 to 5 gain each year. Its means in each side's own deciles fall in places, by up to £78 (decile 3 in 2031-32), because a household that gains can change decile. attends_private_school also ranks households by net income, so VAT on private school fees falls by £0.6m in 2029-30 and doesn't move in the other years.

CI's report doesn't split CTR by scheme, so the table below comes from aed6724 against main 76cfc9e. It predates the fixes in 779f5dc, the merges of main 46a6067 and 47a2817, the childcare fixes in a1e0729 and the capital, tariff and letting-income change in 09b5203, all of which move the working-age route, and we haven't rerun it at the current head.

CTR in £bn (recipient households, millions). Base = main 76cfc9e; this PR = aed6724; certified Enhanced FRS 2024-25, release 1.58.1. A household's group follows the scheme of its CTR claimant benefit unit (council_tax_reduction_pensioner).

Group 2025 base → PR 2026 base → PR 2027 base → PR 2029 base → PR
Scotland, working age 0.056 (0.059) → 0.149 (0.190) 0.058 (0.059) → 0.155 (0.191) 0.061 (0.058) → 0.161 (0.192) 0.066 (0.058) → 0.176 (0.193)
Wales, working age 0.002 (0.008) → 0.016 (0.017) 0.004 (0.011) → 0.017 (0.017) 0.005 (0.011) → 0.018 (0.017) 0.007 (0.011) → 0.022 (0.018)
Scotland, pension age 0.103 (0.134) → 0.103 (0.134) 0.107 (0.135) → 0.107 (0.135) 0.111 (0.135) → 0.111 (0.135) 0.121 (0.136) → 0.121 (0.136)
Wales, pension age 0.008 (0.009) → 0.008 (0.009) 0.009 (0.009) → 0.009 (0.009) 0.010 (0.010) → 0.010 (0.010) 0.012 (0.010) → 0.012 (0.010)
England, pension age 0.468 (0.452) → 0.468 (0.452) 0.495 (0.455) → 0.495 (0.455) 0.524 (0.455) → 0.524 (0.455) 0.585 (0.456) → 0.585 (0.456)
England, working age (reported) 1.349 (2.514) → 1.349 (2.514) 1.358 (2.534) → 1.358 (2.534) 1.366 (2.548) → 1.366 (2.548) 1.387 (2.582) → 1.387 (2.582)
Northern Ireland 0.000 (0.001) → 0.000 (0.001) 0.000 (0.001) → 0.000 (0.001) 0.000 (0.001) → 0.000 (0.001) 0.000 (0.001) → 0.000 (0.001)
UK total CTR 1.987 (3.178) → 2.093 (3.318) 2.032 (3.204) → 2.141 (3.342) 2.076 (3.217) → 2.190 (3.357) 2.177 (3.255) → 2.302 (3.396)
  • Change in CTR by year, at aed6724:

    • 2025: £+0.106bn; 0.172m households gain (mean £614 a year); net income change £+0.106bn
    • 2026: £+0.110bn; 0.169m households gain (mean £649 a year); net income change £+0.110bn
    • 2027: £+0.114bn; 0.170m households gain (mean £674 a year); net income change £+0.114bn
    • 2029: £+0.125bn; 0.171m households gain (mean £731 a year); net income change £+0.125bn
  • Household net income rises by the same amount as CTR.

  • Pension-age CTR doesn't change. At aed6724 it matches main in every year we ran (2025, 2026, 2027 and 2029), in England, Scotland and Wales, and so do English working-age CTR and Northern Ireland's CTR. That holds household by household as well as in total: no pension-age benefit unit's simulated reduction changes in 2026 or 2029.

  • Losers. At aed6724, fewer than 10 survey records lose in each year, all Scottish working-age claimants without UC and without earnings, whose pensions or taxable benefits bear income tax. SSI 2021/249 reg 57 counts unearned income gross, whereas the shared formula deducted all income tax. aggregate_impact/privacy.py's small-cell rule withholds their figures.

  • Earlier years. The base Enhanced FRS has no weights before 2024. Three YAML cases check the 2015, 2016 and 2018 amounts instead.

  • Pensioner poverty. CI's report flags no pensioner move, though we estimate that relative poverty after housing costs rises by 689 pensioners (0.01 points) in 2025-26 and doesn't move in later years. At aed6724, no pension-age benefit unit's reduction changed, and households that mixed a pension-age family with a gaining working-age family only gained income. We haven't checked pensioner households' incomes at this head. If none of them falls, the rise comes through the relative poverty line, 60% of the median person's income, which rises with the gains.

Why a gap to reported and official figures remains (data, not law)

PolicyEngine/policyengine-uk-data#496 and PolicyEngine/policyengine-uk-data#497 track the data faults, and PolicyEngine/policyengine-uk-data#499 (open) fixes both for a later data release. The figures in this section come from aed6724.

  • The data's council_tax holds the FRS bill net of CTR. DWP defines the FRS 2024-25 CTANNUAL as "Annual CT amount after discounts/reduction" and derives it from CTREB and CTREBAMT. The model treats it as the gross liability, so its own CTR has already cut each reported recipient's liability.
    • In release 1.58.1, 22.3% of Welsh FRS-original reported recipients (all ages, base-year weights) have a £0 bill. Scotland's bill includes water charges, so no Scottish bill comes to £0.
    • A diagnostic copy of 1.58.1 (not a release) adds reported CTR back to FRS-original rows. With this PR on that copy, we estimate 2026 CTR at:
      • Scotland working-age: £0.200bn (0.197m households);
      • Wales working-age: £0.045bn (0.039m).
    • On the same copy, main gives £0.071bn and £0.010bn.
  • SPI-synthetic rows carry imputed "reported" CTR from the stage-2 QRF (SPI-synthetic rows carry imputed reported council tax reduction on every person policyengine-uk-data#497).
  • Take-up. Only survey reporters claim CTR in survey runs (Evaluate claims_all_entitled_benefits per benefit unit #1831). The FRS-original rows hold 0.049m working-age reporters in Wales, against 157k working-age CTR households in March 2026.
Group, 2026 This PR, release 1.58.1 This PR, gross-bill diagnostic copy Survey reported Official
Scotland, working age £0.155bn (0.191m) £0.200bn (0.197m) £0.097bn (0.306m) about £0.276bn and 306,740 recipients (March 2026)¹
Wales, working age £0.017bn (0.017m) £0.045bn (0.039m) £0.061bn (0.087m) 157,021 households (March 2026); all ages £347.4m (2025-26), £336.0m budgeted (2026-27)²
England, pension age £0.495bn (0.455m) £0.782bn (0.610m) £0.562bn (0.999m) £1.816bn forgone (2025-26), 1,349,524 claimants (31 March 2026)³
  1. Council Tax Reduction in Scotland, 2025-26 (gov.scot):
    • £425.1m provisional income forgone in 2025-26; 458,950 recipients in March 2026.
    • Working-age recipients = the total less pension-age recipients (sheet 2.6).
    • We derive £0.276bn as the under-65 share of the £425.1m from the average weekly awards by age (sheet 3.3); the publication gives no split of spending by age.
  2. Welsh Government, Council Tax Reduction Scheme annual report 2025 to 2026; StatsWales revenue budget (CTRS) 2026-27.
  3. MHCLG Council Taxbase 2025, CT Support sheet; Local Council Tax Support claimants live table, Q1 2026-27.

What the route leaves out

Each variable's documentation also records its own gaps.

  • Components and premium conditions. The route models neither the ESA work-related activity and support components nor the disability premium's LCW/LCWRA exclusion. The model's legacy premium variables decide who qualifies for the adult premiums, and the route uses the devolved amounts.
  • Tax credits. The route models neither the childcare deduction's extension to earnings plus WTC/CTC (SSI 2021/249 reg 38(2)(d) and 42(2)(c); WSI 2013/3029 Sch 6 para 20(2)) nor the WTC disregard of up to £17.10; tax credits ended in April 2025.
  • Childcare charges. The model holds charges per person in childcare_expenses, and the route counts the children with positive charges for each cap. Where an input puts a family's charges on an adult, the route still deducts them, at the one-child cap. The route doesn't model the couple cases where one partner works and the other has an incapacity, stays in hospital or sits in prison (SSI 2021/249 reg 77(2)(c); WSI 2013/3029 Sch 6 para 21(1)(c)).
  • Mid-year changes. Amounts that change mid-year (for example the Scottish UC childcare caps from 28 June 2023) apply from the next model year, because the model samples one value a year.
  • Scottish fixed amounts before SSI 2021/249. Scotland's disregards, childcare caps and hours parameters cite SSI 2021/249 from 2013. They don't cite the predecessor, SSI 2012/303, separately. (Wales's fixed amounts cite WSI 2012/3144 for 2013-14.)
  • Tax on pay without UC. The law deducts the tax the employer deducted from pay. The model uses the UC model's split, which takes earnings as the lowest slice of non-savings income and pay before trade. It does not see a PAYE code that collects tax on other income through the pay.
  • Notional self-employed tax. The notional tax ignores the personal allowance taper and the married couple's and marriage allowances.
  • Welsh unearned income. Wales counts all gross income other than earnings less the Sch 9 disregards. The model counts the sources listed above and rent from letting part of the home, and leaves out others it holds, such as maintenance payments.
  • Scottish carer premium with no carer benefit in payment. For the carer earnings disregard, Sch 3 para 6(1)(a) identifies carers by a carer benefit in payment. Where a Scottish family has the carer premium but no one receives Carer's Allowance or Carer Support Payment (an award of UC with the carer element, or a carer benefit that an overlapping benefit reduces to nil), the route approximates the £20 against the family's earnings, which can exceed Sch 3 para 7's £10 limit on a non-carer partner's earnings.
  • Transitional family premium. The route leaves out Scotland's, because the model can't see an unbroken claim since May 2016.
  • Scotland-only routes. The route models neither the band E-H alternative maximum (reg 14) nor the second adult rebate.
  • Scotland before April 2022. The route approximates Scotland's UC rules under SSI 2012/303 with the 2021 scheme's structure. The UC childcare caps before 2022 take the 2022 value (£175 / £300), the same as the non-UC caps. Without UC, the route also deducts childcare charges from earnings plus unearned income in those years, where SSI 2012/303 reg 27(1)(c) deducted them from earnings alone.
  • Exclusions. The route doesn't exclude students or persons from abroad.
  • Non-dependant deductions use main's national CTR deductions (National council tax reduction: non-dependant deductions use Housing Benefit amounts and skip exemptions; pensioner gate ignores benefit exclusions #1934; Fix HB and national CTR non-dependant deductions #2007 open).

Tests

  • YAML. council_tax_reduction_devolved_working_age.yaml has 48 cases. We worked each expected value by hand from the law's amounts:

    • Wales UC with no earnings: full award;
    • Wales UC excess income = 0.45 × earnings with no work allowance;
    • the Wales UC award stays the same at double the rent;
    • a Welsh couple with a child and no UC (Sch 7 amounts and disregards; the route ignores Child Benefit);
    • a Scottish UC lone parent counting only the child element;
    • a Scottish UC single earner (the £5 disregard; the route counts no UC as income);
    • the Scottish under-25 allowance;
    • the ESA passport in both countries;
    • Scotland's capital limit for a passported claimant;
    • tariff income;
    • a mixed-age UC couple in Wales on the working-age route;
    • 2015-16, 2016-17 and 2018-19 amounts;
    • regressions: the carer disregard, the £17.10 conditions, Welsh tax on unearned income, the CSP component, a carer premium per partner, SMP on the Scottish UC route, the 2025 Scottish disability premium;
    • regressions: tax on a pension or on dividends never comes off wages (three Welsh cases, one Scottish), a Welsh carer premium on entitlement when contributory ESA overlaps Carer's Allowance to nil, no Scottish carer premium from a potential UC carer element, the Scottish UC LCWRA £20 disregard, and voluntary Class 3 NI;
    • regressions: property income does not dilute the Welsh pension-tax disregard; the Scottish LCWRA £20 where the younger partner has LCWRA and the older one works; the Welsh notional self-employed tax (pay 12,570 and profit 5,000 give earnings 17,570, not 16,570); the Scottish self-employed lone parent at the basic rate (£1,322.52, not the starter-rate £1,317.66);
    • regressions:
      • Welsh pay and miscellaneous income (Class 1 comes off pay in full, and the route counts the miscellaneous income as unearned and disregards its tax share);
      • Scottish Part 5 miscellaneous income as unearned income (reg 57(1)(o));
      • one carer premium for partners caring for the same person, with a different-person control.
    • childcare regressions, each through final CTR:
      • Wales, a lone parent with children aged 5 and 10, £40,000 earnings at 30 hours, £3,000 council tax and £12,000 of charges on the five-year-old: the £175 cap deducts £9,100 and CTR comes to £1,891.35, not £12,000 and £2,471.35;
      • the same family with the charges on the parent: £9,100 and £1,891.35;
      • Scotland without UC, the same family with a £3,000 bill: £9,100 and £2,085.53, not £2,665.53;
      • Scotland with UC, £20,000 earnings and £24,000 of charges on the five-year-old: the £290 cap deducts £15,080 and CTR comes to £327.34, not £24,000 and £2,111.34;
      • Scotland without UC, a lone parent aged 60 with a child aged 5, £5,000 profit at 30 hours, a £15,000 pension, £9,000 of charges and a £1,800 bill: income £5,000 − £1,300 + £15,000 − £9,000 = £9,700, below the £10,680.80 applicable amount, so CTR comes to £1,800 and household net income to £19,780.27, not £936.16 and £18,916.43.
    • Means-test the Council Tax Reduction applicant and partner, not the benefit unit's claimant #2078: the route counts a Scottish working-age head's own pension when the head applies alone, and a 22-year-old head who applies alone keeps the under-25 allowance although the young couple in the head's benefit unit receive income-related ESA.
    • Treat income derived from capital as capital in the legacy means tests #1995: Welsh sub-tenant rent counts less £20 a week (£987.24); Scottish sub-tenant rent does not count from April 2022 (£1,800).
  • Property and differential tests. test_council_tax_reduction_devolved_working_age_properties.py runs many households in one simulation:

    • Hypothesis: 0 ≤ award ≤ liability; the Wales UC award does not depend on rent where both variants have a housing costs element (uncapped awards); the UC award never rises with earnings; IS/JSA/ESA passported claimants get the full liability.
    • Hypothesis found that the rent property fails when one variant has no housing costs element. Gaining one lowers the UC work allowance (UC Regs 2013 reg 22), so the award changes by more than the element. The law sets that lower allowance, so the property now requires the element in both variants, and test_welsh_universal_credit_rent_cancels_only_given_housing_costs executes the boundary.
    • test_childcare_cap_ignores_children_without_charges (Hypothesis): adding children without charges to a family whose charges sit on one child leaves the deduction unchanged without UC, and a Scottish family with UC never deducts more than the one-child cap.
    • test_scottish_childcare_comes_off_earned_and_unearned_income (Hypothesis): for a Scottish applicant without UC, removing the charges raises income by exactly the deduction, net of any change in the earnings disregard, while income stays above zero; the disregard doesn't change for a family with no employed earnings, and income never falls below zero.
    • Means-test the Council Tax Reduction applicant and partner, not the benefit unit's claimant #2078's differential (test_head_applying_alone_matches_her_own_benefit_unit) also compares the working-age route's scheme flag, income, applicable amount, passport and UC flag.
    • Differential: on the Welsh UC route, CTR earnings equal the UC model's uc_individual_earned_income, income equals earnings + uc_unearned_income + the award, and the applicable amount equals uc_maximum_amount, with and without SMP.
    • A targeted partial Welsh UC award (£246.36) that stays the same at £6,000 and £13,000 rent.
    • Wales's fixed amounts start on 1 April 2013 with the WSI 2012/3144 values.
  • main's carer and Pension Credit property tests on the devolved route. Four of main's tests asserted that every national-scheme claim follows the shared formula, and failed on this route. When we reran them at f964584, each failed on a devolved claim:

    • test_council_tax_reduction_carer_income_properties.py::test_council_tax_reduction_income_counts_the_carer_support_payment_component: a Scottish working-age couple aged 56 and 40, earnings 0 and £21,421.84. Claiming lowers the award by £294.32, where the shared formula's excess income rises by £1,749.58, which would lower the award by £349.92.
    • ::test_council_tax_reduction_income_ignores_the_scottish_carer_supplement: a Scottish couple aged 46 and 26 with no earnings. The supplement leaves the award unchanged, where the shared formula raises it by 20% of the tax on the supplement (up to £24.34).
    • test_council_tax_reduction_pension_credit_properties.py::test_awards_follow_the_pension_credit_routes: a Scottish single person aged 33 gets £2,974.60, where the shared formula gives £0.
    • ::test_not_claiming_pension_credit_never_raises_a_recipients_ctr: a Welsh single person aged 54 gets £565.39, where the shared formula gives £447.87.

    Each test now holds its shared-formula assertions to claims where council_tax_reduction_devolved_working_age is false and checks devolved claims against the route (the carer file's invariants 5-6 and the Pension Credit file's 9-13, which the Invariants section below states). At f964584, over the derandomised examples every test drew both kinds of claim: the carer component test 588 devolved and 294 shared-formula benefit-unit cells, the supplement test 378 and 462; in Scotland and Wales, the Pension Credit routes test 46 devolved claims (7 of them mixed-age couples on UC) and 116 others, the not-claiming test 44 (4) and 107.

    The devolved invariants hold the earnings channel apart, because claiming Carer Support Payment, or receiving the supplement, can change a couple's net earnings. The model transfers a marriage allowance transferor's unused personal allowance, up to the allowance's cap (partners_unused_personal_allowance), so a taxable payment to a transferring carer shrinks the transfer and raises the tax the other partner pays on earnings, which the route deducts (£26 a year in one generated couple). So the claim moves the working-age income less net earnings after the disregard by the component, and the supplement doesn't move it at all.

  • Mutation checks, each run against these tests:

    • Removing the Welsh UC income route fails the differential test and the targeted partial-award test. The 20 derandomised Hypothesis examples alone don't catch it, so we added the targeted case.
    • Removing the passport fails the passport property.
    • Reverting each of these fixes fails its regression: all tax off wages (4 cases fail), Class 3 off wages, the carer premium on receipt, the potential UC carer element, dropping the LCWRA limb, and adding statutory pay to Welsh UC earnings (the differential test fails).
    • At aed6724, each of these fails at least one YAML case:
    • After the branch merged main 46a6067:
      • requiring that the same person both works and hasn't reached pensionable age still fails the Scottish LCWRA case;
      • making council_tax_reduction_pensioner ignore Universal Credit fails both mixed-age cases;
      • dropping the same-person carer cap no longer fails any case, because Limit same-person carer benefit awards within couples #2632 leaves only one partner with a modelled carer benefit.
    • Against the revised carer and Pension Credit property tests, each mutant alone:
      • deducting the income tax on counted unearned income in Scotland too, so that the Carer Support Payment component counts net of its tax as on the shared formula, fails both carer tests (invariants 5 and 6);
      • subtracting the tax on the Scottish Carer Supplement from Scottish working-age income fails both carer tests (invariants 5 and 6);
      • sending a Scottish or Welsh mixed-age couple on UC down the pension route (council_tax_reduction_pensioner ignoring their UC award) fails both Pension Credit tests (invariant 9).
    • At a1e0729, with the rest of the branch as it stands:
      • restoring the cap chosen from all the family's children fails 4 YAML cases (the Welsh, Welsh parent-charges and both Scottish cap cases) and test_childcare_cap_ignores_children_without_charges; the Scottish-childcare property still passes;
      • restoring the deduction from Scottish earnings alone fails the Scottish pension case and test_scottish_childcare_comes_off_earned_and_unearned_income; the cap property still passes.
    • At b55ff40, after main changed council_tax_reduction_pensioner's reg 60A test, making it ignore Universal Credit still fails both mixed-age cases (17 of the 399 CTR YAML cases in all).
    • At 5df5afe, after the route took main's UC award flag for the passport, removing the passport fails the two ESA passport cases and test_income_related_esa_passports_to_the_full_liability.
  • Outsider and dependant income. test_means_test_income_properties.py checks that the new working-age income never counts income from people outside the family, nor, with main's second invariant, from the family's own child or young person.

  • Suites. Local runs:

    • at 09b5203 (no model code or YAML test has changed since): the CTR YAML directory, 399 of 399, including the devolved file, 48 of 48; the 29 other YAML files that read CTR, 396 of 396 (at 0523f90, before 09b5203, income_from_capital.yaml failed 6 cases);
    • at 5df5afe, the 50 Python test files that read CTR: 805 passed, 1 failed, 3 skipped. The failure, test_welsh_fixed_amounts_start_with_the_2013_scheme, read the Welsh tariff parameter 09b5203 removed; b55ff40 points it at main's parameter, and it passes there. The skips need the survey dataset: microsimulation/test_abolish_council_tax_reform.py (2) and test_claims_all_entitled_benefits.py::test_survey_takeup_follows_reports_in_microdata. Within them: test_means_test_income_properties.py 2, test_council_tax_reduction_applicant_properties.py 2, the devolved property file 8 (7 at 5df5afe, plus the fixed one at b55ff40), the carer property file 4, the Pension Credit property file 9, test_legacy_means_test_income_from_capital_properties.py 9;
    • at b55ff40: code_health, 3,198 passed.

    CI ran the full suite at 5ca81bbad with main e3765cb61 merged in, and all 20 checks pass.

Invariants

  • 0 ≤ award ≤ liability.
  • On the UC route, the award never rises with earnings.
  • A Welsh UC award doesn't depend on the size of the housing costs element when the award includes one and no benefit cap applies.
  • A passported claimant gets the full liability less non-dependant deductions.
  • On the Welsh UC route, CTR earnings equal the UC model's earned income, so CTR and UC never disagree on earnings.
  • Pension-age CTR matched main's at aed6724 in every year we ran, benefit unit by benefit unit.
  • In Scotland and Wales, a claim takes the working-age route exactly when no applicant or partner has reached the qualifying age for State Pension Credit, when the family has an award of UC and a member under that age, or when it receives IS, income-based JSA or income-related ESA (WSI 2013/3029 reg 3; SSI 2021/249 reg 3).
  • A working-age claim never counts as receiving a guarantee credit, or savings credit without one. While its assessable capital doesn't exceed £16,000, its award equals max(0, L − 0.2 × max(0, I − A) − ND), where L is the liability, I the working-age income, A the applicable amount and ND the non-dependant deductions; above £16,000 it gets nothing.
  • Claiming Carer Support Payment on the Scottish working-age route raises unearned income, and income less net earnings after the disregard, by the Carer Support Payment component (reg 57(1)(b)(iva)), raises the applicable amount by one carer premium (Sch 1 para 6(1)), and never raises the award. Where the award stays partial with and without the claim, the claim lowers it by 20% of the rise in income less the rise in the applicable amount.
  • The Scottish Carer Supplement never reaches the working-age unearned income or applicable amount, nor the income less net earnings after the disregard (reg 57 lists the income it counts, gross). Where net earnings don't change, the supplement leaves the income and the award as they are, and it never lowers the award.
  • A family whose childcare charges sit on one child gets the same childcare deduction however many other children it has (WSI 2013/3029 Sch 6 para 20(3); SSI 2021/249 regs 38(4) and 42(4)).
  • For a Scottish applicant without UC, the childcare deduction lowers income by exactly its amount, net of any change in the earnings disregard, while income stays above zero, so it reduces unearned income as well as earnings (SSI 2021/249 reg 38(2)). Income never falls below zero.

Effect on pensioner CTR (uk-triple-lock)

None. At aed6724, pension-age CTR in England, Scotland and Wales matched main (76cfc9e) in every year we ran (2025, 2026, 2027 and 2029), in total and benefit unit by benefit unit, so the PR leaves uk-triple-lock's pensioner offsets as they are. We haven't rerun it against main 46a6067 or 47a2817. The childcare fixes and the capital change touch only the devolved working-age route.

On the pension side, the PR changes one legal rule: a mixed-age couple on UC in Scotland or Wales takes the working-age route, which keys on main's per-claim council_tax_reduction_pensioner (WSI 2013/3029 reg 3; SSI 2021/249 reg 3). With that change, the pension-age totals above still matched main's at aed6724.

🤖 Generated with Claude Code

Working-age families in Scotland and Wales went through the pension-age
means test built on Housing Benefit parameters. The whole Universal Credit
award counted as income against an HB personal allowance with no children,
so UC claimants almost never got CTR.

Scotland's working-age scheme (SSI 2021/249) and the Welsh rules for
persons who are not pensioners (WSI 2013/3029) now have their own route:
- Wales, UC: applicable amount is the UC maximum amount and income is the
  Secretary of State's UC income plus the award (Sch 6 paras 3, 9).
- Scotland, UC: own applicable amount; only the child and childcare
  elements of UC count as income (regs 35, 42, 57(1)(p), (2)(d)).
- IS, income-based JSA and income-related ESA passport to the maximum
  reduction (SSI 2021/249 reg 13(11); WSI 2013/3029 Sch 9/10 para 8).
- Applicable amounts: each country's personal allowances, child amounts,
  family premium and disabled child premiums, 2013-14 to 2026-27.
- Income: Child Benefit disregarded, earnings disregards, childcare
  charges, closed unearned-income lists and tariff income from capital.

Pension-age CTR is unchanged. Carries a byte-identical copy of #1944's
council_tax_reduction_pensioner.

Fixes #1962

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

- Adult premiums: Scotland's and Wales's own disability, severe disability,
  enhanced disability and carer premium amounts (2013-14 to 2026-27), with a
  carer premium for each qualifying claimant or partner (SSI 2021/249 Sch 1
  paras 5, 17; WSI 2013/3029 Sch 7 paras 14, 17).
- Carer earnings disregard: £20 of the carers' own earnings plus up to £10
  of a non-carer partner's, within £20 (Sch 8 / Sch 3 paras 6-7).
- £17.10: a couple's disabled member must be the one in remunerative work;
  in Scotland from April 2022 only employed earnings qualify (Sch 3 para 15).
- Wales: tax on unearned income is disregarded (Sch 9 para 4).
- Scotland: only the Carer Support Payment component counts, not the Carer
  Supplement (reg 4(1), reg 57(1)).
- Statutory sick, maternity and paternity pay count as earnings on the UC
  route too; childcare comes off earnings after the disregards.

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

Copy link
Copy Markdown
Collaborator Author

Coordination note from #1992 (Scottish CTR counts Carer Support Payment, stacked on #1952).

council_tax_reduction_working_age_unearned_income here subtracts carer_support_payment × supplement / (rate + supplement). That assumes carer_support_payment includes the Scottish Carer Supplement, which is true on main today. #1952 makes carer_support_payment the CSP component only (csp.rate × 52) and adds a separate scottish_carer_supplement.

Once #1952 is in, this subtraction would remove £535.88 a year of genuine CSP in 2026 (4,495.40 × 11.70 / 98.15), understating income for every Scottish working-age carer. Whichever of #1952 and this PR merges second should drop the subtraction and count carer_support_payment as it stands.

The carers overlapping-benefits work (#1953) will also make carer_support_payment the amount payable after CSP Regs reg 16(2). SSI 2021/249 reg 57(1)(b) counts benefits "subject to any adjustment … under section 73 of the Social Security Administration Act 1992"; whether that covers a reg 16(2) reduction is being checked in #1992.

🤖 Generated with Claude Code

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

Composition note: #2015 (stacked on #2009 → #2006) adds council_tax_reduction_pensioner (BenUnit) with the same name, entity and meaning as this PR, but only the age test, and deletes council_tax_reduction_household_has_pensioner. Every CTR scheme now reads the per-family flag: national, the four _legacy councils, Oxford and council_tax_reduction_scheme_supported. Whichever lands second: keep this PR's formula for council_tax_reduction_pensioner.py (add/add), delete council_tax_reduction_household_has_pensioner.py (modify/delete), and change any remaining benunit.household("council_tax_reduction_household_has_pensioner", period) to benunit("council_tax_reduction_pensioner", period).

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

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 is_council_tax_reduction_applicant_or_partner (Person): the benefit unit's claimant and partner where the liable person is one of them, and the household head alone where the head is liable but is not the benefit unit's claimant or partner (council_tax_reduction_head_applies_alone; for example, a grandmother head sharing a benefit unit with a young couple who are its claimant and partner).

council_tax_reduction_pensioner here reads the generic claimant identity. Whichever of the two PRs lands second should make it read is_council_tax_reduction_applicant_or_partner. Otherwise the 80-year-old grandmother above, whose benefit unit's claimant and partner are 17, is not a pensioner and goes on a working-age scheme. SI 2012/2885 reg 3(1)(a)(i): "he has attained the qualifying age for state pension credit", where "he" is the applicant. #2078 already does this for council_tax_reduction_household_has_pensioner; its YAML case "A pensioner who is not the applicant or partner does not make a young couple's claim a pensioner's" pins it.

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

Correction to my earlier note, from #2078's review r1. A pensioner-flag swap is not enough for #1966, because it adds its own working-age assessment.

#2078 (now stacked on #2015) makes the CTR means test assess the applicant and partner (is_council_tax_reduction_applicant_or_partner), not the benefit unit's claimant and partner. Where the household head is liable but is not the benefit unit's claimant or partner (council_tax_reduction_head_applies_alone; for example a grandmother sharing a benefit unit with a young couple), the head applies alone: a single person, with the benefit unit's awards and children belonging to the couple.

#1966's working-age assessment has its own person masks and family tests. Whichever of #1966 and #2078 lands second must move all of them onto the applicant identity:

  • unearned income (council_tax_reduction_working_age_unearned_income) and earned income;
  • family status and children;
  • premiums;
  • the passport;
  • the Universal Credit route.

Then run #2078's differential property (test_head_applying_alone_matches_her_own_benefit_unit) on the composed tree, plus one case: Scotland 2026, a 40-year-old head with a £100,000 private pension, sharing a benefit unit with two 17-year-old parents and their baby, £1,800 council tax. SSI 2021/249 reg 36 counts her pension, so she gets no reduction. With only the pensioner swap, #1966's reader would leave it out and pay £1,800.

MaxGhenis and others added 3 commits October 3, 2026 22:02
Resolve conflicts with #1909 (capital routing), #1944 (council_tax_reduction_pensioner;
keep main's file with the Welsh/Scottish sentence updated) and programs.yaml.
After #1952 carer_support_payment is the CSP component only, so drop the
supplement subtraction. Route every working-age person mask through one
helper (working_age_applicant_or_partner) so #2078 can swap the applicant
identity in one place.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- #1909's Welsh working-age earner now gets the Welsh allowance and the £5
  earnings disregard (1,111.24, not the HB-based 993.72).
- #1944's capped mixed-age UC couple in Wales gets the maximum reduction
  under WSI 2013/3029 Sch 6 paras 3 and 9; give it a UC maximum amount
  consistent with its award.
- The Scottish self-employed £17.10 case now pays Class 4 NI on its profits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Keep main's joint-liability share on the liability, and route the Scottish
and Welsh working-age rules on council_tax_reduction_claim_pensioner, the
per-claim scheme flag the national formula uses.

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

Copy link
Copy Markdown
Collaborator Author

Status, paused by Fleet ops (overnight session cap): head a5e5a73 is based on main, MERGEABLE, CI running. CTR YAML 129 passed; property tests pass.

Pending:

  • Review. Hard-tier review, subfleet run 20261003-221336-ctr1966-review-r2. Output goes to ~/reviews/uk-ctr-shortfall-2026-09-30/out/review_r2_a5e5a73.md.
  • Impact. The rerun against main 7fee075 is impact/branch_a5e5a73.json beside impact/base_main_2efc8d8.json.

Next: read the review and fix anything it finds, update the PR's impact table, mark ready, and merge on gates or hand off to the UK hub.

🤖 Generated with Claude Code

MaxGhenis and others added 4 commits October 4, 2026 06:29
- Take off earnings only the tax and NI in respect of the employment or
  trade (the UC split of income tax; Class 1, 2 and 4, not Class 3), and
  disregard tax on counted unearned income in Wales.
- Count the carer premium on entitlement to a carer benefit; give the
  Scottish UC carer fallback only with an award of UC.
- Scotland: the £20 disregard for a UC worker with LCW or LCWRA.
- Wales UC: the UC model's own earned income, as the Secretary of State's
  figure.
- Welsh fixed amounts from 1 April 2013 (W.S.I. 2012/3144).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Count Carer Support Payment before the overlap reduction, as the
  pension-age route does, in income and in tax on unearned income.
- Update main's Carer Support Payment tests for the devolved amounts.
- Regression tests: tax on pensions and dividends stays off wages (Wales
  and Scotland), carer premium on entitlement, no UC carer premium without
  an award, Scottish UC LCWRA £20 disregard, Class 3 NI, the Welsh UC
  income figure (differential against the UC variables), a partial Welsh
  UC award independent of rent, and the Welsh 2013 first dates.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tory-pay inheritance

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…h childcare after unearned income

C1: council_tax_reduction_working_age_childcare_deduction now picks each of
its three weekly caps (Wales, Scotland without UC, Scotland with UC) from the
number of the family's children with positive childcare_expenses, the
children "in respect of whom relevant childcare charges are paid" (WSI
2013/3029 Sch 6 para 20(3); SSI 2021/249 regs 38(4) and 42(4)), not from all
its children. Charges entered on an adult still count, at the one-child cap.

C2: council_tax_reduction_working_age_applicable_income deducts a non-UC
Scottish applicant's childcare charges after adding unearned income (SSI
2021/249 reg 38(2)(a)-(c)), as it already did with UC (reg 42(2)). Wales
keeps deducting them from earnings only (Sch 6 para 20(1)(c)). Income never
falls below zero.

Adds YAML regressions through final CTR for the Welsh and both Scottish caps,
a Welsh case with the charges on the parent, and the Scottish pension case
through final CTR and household net income, plus Hypothesis properties for
both rules.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LwQq6HGqHxxCpeUeyX9Vy8
main now has #1995: council_tax_reduction_assessable_capital (property at
90% less secured debt, the UC route, and passported capital by scheme),
council_tax_reduction_tariff_income (the Welsh and Scottish working-age
tariffs and the UC assumed yield) and council_tax_reduction_universal_credit_award,
plus council_tax_reduction_home_letting_income. The devolved working-age
route now reads them:

- the capital limit tests council_tax_reduction_assessable_capital for every
  national claim, so council_tax_reduction_working_age_capital goes;
- the route's income adds council_tax_reduction_tariff_income, so
  council_tax_reduction_working_age_tariff_income and its two parameter
  files (the same £1 per £250 over £6,000 as main's) go;
- the passport excludes an applicant with an award of UC as
  council_tax_reduction_universal_credit_award defines it;
- without UC, the route counts rent from letting part of the home in Wales,
  and in Scotland only before SSI 2021/249.

main's two let-property cases in income_from_capital.yaml pinned Welsh and
Scottish working-age awards under the shared formula; they are re-derived
under the devolved route. Two devolved cases cover sub-tenant rent.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LwQq6HGqHxxCpeUeyX9Vy8
@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

PR_TITLE.txt

Give Scotland and Wales working-age CTR their own rules

Generated by Claude Code

…xed-amounts test

The working-age route now takes tariff income from main's
gov.local_authorities.wales.council_tax_reduction.means_test.tariff_income.working_age,
which also starts on 1 April 2013 at £1 per £250 over £6,000.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LwQq6HGqHxxCpeUeyX9Vy8
@MaxGhenis

MaxGhenis commented Nov 5, 2026 •

Copy link
Copy Markdown
Collaborator Author

PR_BODY.md

Fixes #1962. Also fixes #1935.

Reproducer: policyengine_uk/tests/policy/baseline/gov/local_authorities/council_tax_reduction/council_tax_reduction_devolved_working_age.yaml; policyengine_uk/tests/test_council_tax_reduction_devolved_working_age_properties.py::test_devolved_working_age_award_properties

axiom: TheAxiomFoundation/rulespec-uk#393 queued (SSI 2021/249 regs 13(11), 35, 38(2) and (4), 42, 49(6), 50(3), 51(9), 57(1)(o) and (p), Sch 1 paras 5(3)-(4) and 6(1), Sch 3 para 4(3); SSI 2012/303 reg 38; WSI 2013/3029 Sch 6 paras 3, 9, 15(3), 20(1)(c) and (3), 25, Sch 7 paras 1-4 and 14, Sch 9 para 4, Sch 9 and 10 para 8)

## The defects on `main`

`main` sends working-age households in Scotland and Wales through the pension-age means test, which uses Housing Benefit parameters. On the certified Enhanced FRS 1.58.1, we estimate 2026 CTR for these households on `main` (76cfc9e79) at:
- Scotland: £0.058bn (0.059m households), against the £0.097bn (0.306m) that survey respondents report;
- Wales: £0.004bn (0.011m), against the £0.061bn (0.087m) that respondents report.

Four legal defects cause the shortfall:

1. **Universal Credit.** `main` counts the whole UC award, including the housing costs element, as income against a Housing Benefit personal allowance with no children in it. The law differs in each country:
   - **Wales** (WSI 2013/3029 Sch 6 paras 3 and 9) compares the Secretary of State's UC income plus the award with the UC maximum amount. The housing and child elements cancel, and a UC claimant with no earnings gets the maximum reduction.
   - **Scotland** (SSI 2021/249 regs 35, 42, 57(1)(p) and (2)(d)) keeps its own applicable amount. It counts as income only the UC child element (with disabled-child additions) plus the childcare costs element, up to the amount of the award, and it measures earnings on the UC basis, with the CTR earnings disregards and no work allowance.
2. **No passport.** `main` means-tests claimants on Income Support, income-based JSA or income-related ESA, whom the law gives the maximum reduction (SSI 2021/249 reg 13(11); WSI 2013/3029 Sch 9 para 8 and Sch 10 para 8).
3. **Applicable amounts.**
   - `main` has no child amounts. Scotland sets its child premium at £109.85 per child, which has exceeded Housing Benefit's by 25% since 2017, and Wales its child amount at £87.88.
   - It has no family premium, which Wales sets at £20.22 and Scotland kept until it closed the premium to new claims on 1 May 2016.
   - It has no disabled child premium or child enhanced disability premium.
   - In Wales it uses Housing Benefit's personal allowances (£95.55 / £75.65 / £150.15) in place of Wales's own (£101.85 / £80.60 / £159.85).
   - It uses the projected DWP amounts for the adult premiums, which differ from the devolved amounts in most years: for the 2025-26 disability premium it projects £47.48, where the law sets £43.20.
   - It gives a couple one carer premium even when both partners qualify.
4. **Income.**
   - It counts Child Benefit, which both countries disregard.
   - It has no earnings disregards (£5, £10, £20 or £25, plus £17.10) and no childcare deduction.

## What this changes

`simulated_council_tax_reduction_benunit` sends a Scottish or Welsh claim down a new working-age route when `council_tax_reduction_pensioner` (main's per-claim scheme flag) returns false. The route supplies its own applicable amount and income; the capital limit reads `main`'s `council_tax_reduction_assessable_capital` for every national claim.

The route assesses the people main's applicant identity (#2078) names, through `working_age/_applicant.py`:
- `is_council_tax_reduction_applicant_or_partner` marks the applicant and partner.
- Where the household head applies alone (`council_tax_reduction_head_applies_alone`), the route assesses the head as a single person. The benefit unit's partner, children, UC, income-related benefits and tax credits belong to its claimant, not to the head, and the head's own premium conditions apply, as in `council_tax_reduction_premiums`.
- Children and lone parents follow each scheme's own young person (#2288): `is_child_or_young_person_for_council_tax_reduction` and `is_council_tax_reduction_lone_parent`. Scotland's working-age scheme takes Universal Credit's definition from 2022-23, and Wales takes Child Benefit's.

The PR adds these variables in `council_tax_reduction/working_age/`:

| Variable | Rule |
|---|---|
| `council_tax_reduction_devolved_working_age` | Scotland or Wales, not a CTR pensioner. Mixed-age UC couples take this route (WSI 2013/3029 reg 3; SSI 2021/249 reg 3). |
| `council_tax_reduction_working_age_applicable_amount` | Wales with UC: `uc_maximum_amount`. Otherwise: personal allowance, child amounts, and the devolved adult premiums (`council_tax_reduction_working_age_adult_premiums`). |
| `council_tax_reduction_working_age_personal_allowance` | Couple / lone parent / single 25+ / single under 25. The higher single rate also applies on main-phase ESA and, in Scotland, on UC with LCW. |
| `council_tax_reduction_working_age_child_amounts` | Per-child amount, family premium, disabled child premium, child enhanced disability premium. |
| `council_tax_reduction_working_age_adult_premiums`, `_carers` | Disability, severe disability, enhanced disability premiums at the devolved amounts (who qualifies follows the legacy premium variables, with CTR's own severe disability premium family test, `council_tax_reduction_severe_disability_premium`), and a carer premium for each applicant or partner entitled to Carer's Allowance or Carer Support Payment, including an entitlement an overlapping benefit reduces to nil (WSI 2013/3029 Sch 7 para 14(1); SSI 2021/249 Sch 1 para 6(1)(a)-(b)), with one premium for partners who care for the same severely disabled person (SSI 2021/249 Sch 1 para 5(3)-(4); SSCBA s.70(7ZA) allows one Carer's Allowance for each cared-for person). Scotland also counts an award of UC that includes the carer element (para 6(1)(c)), as one carer when no one in the family has a carer benefit entitlement. |
| `council_tax_reduction_working_age_applicable_income` | Passported: 0. Wales with UC: UC earnings before the work allowance + UC unearned income + the award. Wales without UC: net earnings − disregards − childcare charges (never below zero), + unearned income less its tax + tariff income + rent from letting part of the home. Scotland: net earnings − disregards + unearned income + tariff income (+ relevant UC payments with UC; + rent from letting part of the home before SSI 2021/249), − childcare charges, never below zero. |
| `council_tax_reduction_working_age_person_earned_income`, `_earned_income`, `_employed_earned_income` | Per applicant or partner. **Wales with UC:** the UC model's own earned income before the work allowance, after the minimum income floor (`uc_individual_earned_income`): the Secretary of State's figure (Sch 6 para 9). **Scotland with UC:** the UC measure without the floor (`uc_individual_earned_income_before_mif`), since SSI 2021/249 regs 49 and 51(2) have none, less miscellaneous income (net of its tax share), which Scotland counts as unearned. It includes SSP/SMP/SPP and deducts only the tax and NI paid in respect of the employment or trade. **Without UC:** pay and SSP/SMP/SPP less the income tax and primary Class 1 on the employment (reg 50(3)(a); WSI 2013/3029 Sch 6 para 15(3)(a)). The route takes the tax from the UC model's split, with earnings as the lowest slice and pay before trade (`uc_income_tax_on_earnings` less `uc_income_tax_on_trade`), and shares it pro rata with miscellaneous income, which counts as unearned; primary Class 1 comes off pay in full. Self-employed profit takes the prescribed notional deductions, not the tax paid (SSI 2012/303 reg 38 via SSI 2021/249 reg 51(9); WSI 2013/3029 Sch 6 para 25): basic-rate tax on the profit less the personal allowance (in Wales also the blind person's allowance), Class 4 at the main rate between the profits limits, and Class 2 before April 2024. Half of pension contributions comes off. Never Class 3, tax on pensions or tax on dividends. Employed earnings feed Scotland's £17.10 test. |
| `council_tax_reduction_working_age_unearned_income_tax` | Income tax on the counted taxable unearned income. `earned_income_tax` (non-savings tax other than on property income) less the tax on earnings gives the tax on pensions and taxable benefits, which the route shares pro rata with those the schemes don't count (the Scottish Carer Supplement). Wales without UC disregards it (Sch 9 para 4); Scotland counts unearned income gross (reg 57). |
| `council_tax_reduction_working_age_earnings_disregard` | £25 lone parent; else £20 with a disability premium, or in Scotland for a UC applicant with LCW or LCWRA where the applicant or partner hasn't reached pensionable age and at least one of them, not necessarily the same one, works (Sch 3 para 4(3)(b): "is engaged in employment"); else, for a carer, £20 of the carers' own earnings plus up to £10 of a non-carer partner's (paras 6-7, which identify carers by a carer benefit in payment); else £10 couple, £5 single. Plus £17.10 on the work conditions (not with UC), where earnings cover the other disregard, the childcare deduction and the £17.10: a couple qualifies only when its disabled member works, and in Scotland from April 2022 only employed earnings qualify. Never more than earnings. |
| `council_tax_reduction_working_age_unearned_income` | Scotland's closed list in reg 57(1); in Wales, gross income other than earnings less the Sch 9 disregards (Sch 6 para 17). The model counts pensions, contributory ESA and JSA, Carer's Allowance, the Carer Support Payment component after `main`'s one-partner limit for a couple caring for the same person and before the overlapping-benefit reduction (as the pension-age route counts it; not the Scottish Carer Supplement), MA, IIB, IB, SDA, Part 5 miscellaneous income and tax credits. |
| `council_tax_reduction_relevant_universal_credit_payments` | Scotland: min(child element + disabled-child additions + childcare element, award). |
| `council_tax_reduction_working_age_childcare_deduction` | Legacy: charges up to £175 / £300 a week when the lone parent, or both of a couple, work 16 hours or more. Scotland with UC: the childcare element ÷ 0.85, up to £290 / £497 (2026). Each cap counts the family's children with positive `childcare_expenses`, the children "in respect of whom relevant childcare charges are paid" (WSI 2013/3029 Sch 6 para 20(3); SSI 2021/249 regs 38(4) and 42(4)); charges entered on an adult count at the one-child cap. |
| `council_tax_reduction_working_age_passported`, `_has_universal_credit`, `_universal_credit_award` | IS / JSA(IB) / ESA(IR) with no award of UC as `main`'s `council_tax_reduction_universal_credit_award` defines it; UC entitlement, not a household head's who applies alone; the award after the benefit cap and before deductions from payment. |

Capital and tariff income come from `main`'s #1995 variables, which already cover the working-age schemes: `council_tax_reduction_assessable_capital` (Wales with UC: UC capital; Wales passported: nil; otherwise savings, land and property less 10% and secured debt) and `council_tax_reduction_tariff_income` (£1 a week per £250 or part above £6,000; with an award of UC, the UC assumed yield of £4.35 a month per £250 or part). Rent from letting part of the home comes from `council_tax_reduction_home_letting_income`.

The PR adds the new parameters under `gov.local_authorities.{scotland,wales}.council_tax_reduction.working_age`. Every uprated amount has its full history from 2013-14 to 2026-27, and each change cites the amending instrument and provision. We compiled the history from legislation.gov.uk and checked it as a chain: each year's "for £X" equals the previous year's value. Welsh 2013-14 values, including the fixed disregards and childcare caps (from 1 April 2013), come from the revoked WSI 2012/3144, which then applied.

The PR leaves pension-age CTR, the English schemes and the Housing Benefit parameters unchanged. Outside the new `working_age/` folders, it changes only the Scotland/Wales hook in `simulated_council_tax_reduction_benunit.py`, the CTR notes in `programs.yaml`, and the documentation of `council_tax_reduction_pensioner` and `council_tax_reduction_pension_contribution_deduction_rate`, which now name the devolved working-age route for Welsh and Scottish claims.

## Composition with main

The branch merges `main` at 47a2817e2 (2026-11-05) in 0523f90b. Git reported four conflicts, which the merge resolved as follows:
- `test_council_tax_reduction_pension_credit_properties.py`: both sides' `BENUNIT_VARIABLES`.
- `test_means_test_income_properties.py`: `main`'s 16-year-old example and this PR's note that the test covers the Scottish and Welsh working-age income.
- `council_tax_reduction_pension_contribution_deduction_rate.py`: `main`'s wording and its Oxford Appendix 3 route, with the devolved working-age route in place of `main`'s "no such route for Wales and Scotland yet (#1962)".
- `council_tax_reduction_pensioner.py`: this PR's scheme-selection sentence, plus `main`'s tariff-income and Scottish-income uses.

- **#1995 (capital, tariff income, letting income).** `main` now holds `council_tax_reduction_assessable_capital`, `council_tax_reduction_tariff_income`, `council_tax_reduction_universal_credit_award` and `council_tax_reduction_home_letting_income`, and 09b52038 points the route at them. It drops this PR's `council_tax_reduction_working_age_capital` and `council_tax_reduction_working_age_tariff_income`, and the two `working_age/tariff_income.yaml` parameter files, whose amounts equal `main`'s. These effects follow:
  - Property capital now reaches the working-age capital limit and tariff income.
  - A Scottish working-age applicant with UC now has the UC assumed yield as tariff income, as `main` sets it, in place of £1 a week.
  - Rent from letting part of the home counts on the route in Wales, and in Scotland before SSI 2021/249.
  - `main`'s two let-property cases in `income_from_capital.yaml` pinned Welsh and Scottish working-age awards under the shared formula. We re-derived both under the devolved route, with the working-age applicable amount supplied as £6,000: the route deducts only the tax on the pay, which bears none, so each gets £827.20, not £840.40 and £837.14.
- **#2078 (applicant and partner) and the per-claim `council_tax_reduction_pensioner`.** These replace `council_tax_reduction_claim_pensioner`, which `main` removed. The route keys on the new flag, and every mask reads the applicant identity (above).
  - #2078's differential property (`test_head_applying_alone_matches_her_own_benefit_unit`) now also compares the working-age route's scheme flag, income, applicable amount, passport and UC flag.
  - A YAML case covers the Scottish working-age head from #2078's review: a 40-year-old head with a £100,000 pension and young parents in the head's benefit unit gets no reduction.
- **#2288 (Scotland's own young person).** The five reads it flagged now use the scheme-aware variables.
- **#2110 (statutory 2025-26 amounts).** The branch keeps `main`'s Carer Support Payment header and 2025 case.
- **UC statutory pay.** `main`'s UC now counts SSP, SMP and SPP itself (UC Regs 2013 reg 55(4)), so the Scottish UC route no longer adds them. The Welsh UC route follows UC as before.
- **#2006 joint liability, #1952 CSP.** The liability keeps `council_tax_reduction_joint_liability_share`. The working-age route counts `carer_support_payment_pre_overlap`, like `main`'s CTR income, until we settle which amount CTR counts.
- **`main` property tests that asserted every national-scheme claim follows the shared formula.** `test_council_tax_reduction_carer_income_properties.py` and `test_council_tax_reduction_pension_credit_properties.py` now hold their shared-formula assertions to claims where `council_tax_reduction_devolved_working_age` is false, and check the devolved claims against the route's own invariants (see Tests and Invariants).
- **`main` tests that pinned Scottish and Welsh working-age awards under the shared formula.** We re-derived each under the devolved rules, with its derivation in the YAML:
  - `claimant_family_scheme.yaml`: four shared-rent cases. The working-age family's income input moves to the working-age variable. Wales's own £101.85 allowance gives £359.24, not £293.72; Scotland's amount equals HB's, so its award doesn't change.
  - `applicant_or_partner.yaml`: two Scottish couples get the couple's £10 earnings disregard, so £1,465.56, not £1,361.56.
  - `severe_disability_premium_young_person.yaml`: where the 19-year-old counts as a UC qualifying young person, the Scottish applicant counts as a lone parent with a £109.85 child premium. The applicable amount of £15,155.40 exceeds the £12,570 income, so the applicant gets the full £2,000.
  - The Welsh working-age earner in `council_tax_reduction_pension_credit.yaml` gets £1,111.24. The capped Welsh mixed-age UC couple in `council_tax_reduction_pensioner.yaml` gets the maximum reduction (WSI 2013/3029 Sch 6 paras 3 and 9). `main`'s Carer Support Payment cases get the devolved amounts: the Welsh carer £1,260.92, the 2025 Scottish carer £1,173.56.
  - `ctr_takeup.yaml`: the Scottish working-age calculator household claims Universal Credit by default and has no children, so the Scottish scheme counts none of its award: £1,800, not £633.96.
  - `income_from_capital.yaml`: the two let-property cases above.
- **#2082 (couples entered without roles).** When a couple's ages differ by 20 years or more and the input gives no roles, `main` reads them as a single claimant. The two mixed-age YAML cases (the Welsh UC couple aged 70 and 50, and the Scottish LCWRA couple aged 40 and 70) now supply `is_claimant_or_partner` for both members. The devolved property generator draws each adult's age from 18 to 60, so `main` reads some generated couples as a single claimant with another adult; the properties hold on either reading.
- **#2632 (one carer benefit per cared-for person).** `main` pays Carer's Allowance or Carer Support Payment to one partner of a couple caring for the same person, and `carer_support_payment_pre_overlap`, which this route counts, carries that limit. The one-premium case counts one payment: income £14,495.40 and award £2,163.24 (two premiums would give £2,664.00). Since only one partner now has a modelled carer benefit, the route's own one-premium cap in `council_tax_reduction_working_age_carers` acts only where the input supplies a carer benefit for both partners, and no test exercises it yet: dropping it passes every case. SSI 2021/249 Sch 1 para 5(3) gives a couple a carer premium for each partner who qualifies, "but only if they are not caring for the same severely disabled person", and para 5(4) gives the premium to one of them, so the route keeps the cap. `main`'s `carer_premium` applies the same cap with the same citation.
- **#1831 (take-up).** The PR leaves take-up as it is: in survey runs, CTR claims still follow reported receipt.

## Impact (certified Enhanced FRS 2024-25, release 1.58.1)

**At aed672468, against `main` 76cfc9e79.** These figures predate the round-4 fixes in 779f5dcfd, the merges of `main` 46a60678 and 47a2817e2, the childcare fixes in a1e07291 and the capital, tariff and letting-income change in 09b52038, all of which move the working-age route. We haven't rerun them at the current head. The `Aggregate impact` check reruns on each push.

CTR in £bn (recipient households, millions). Base = `main` 76cfc9e79; this PR = aed672468; certified Enhanced FRS 2024-25, release 1.58.1. A household's group follows the scheme of its CTR claimant benefit unit (`council_tax_reduction_pensioner`).

| Group | 2025 base → PR | 2026 base → PR | 2027 base → PR | 2029 base → PR |
|---|---|---|---|---|
| Scotland, working age | 0.056 (0.059) → **0.149** (0.190) | 0.058 (0.059) → **0.155** (0.191) | 0.061 (0.058) → **0.161** (0.192) | 0.066 (0.058) → **0.176** (0.193) |
| Wales, working age | 0.002 (0.008) → **0.016** (0.017) | 0.004 (0.011) → **0.017** (0.017) | 0.005 (0.011) → **0.018** (0.017) | 0.007 (0.011) → **0.022** (0.018) |
| Scotland, pension age | 0.103 (0.134) → **0.103** (0.134) | 0.107 (0.135) → **0.107** (0.135) | 0.111 (0.135) → **0.111** (0.135) | 0.121 (0.136) → **0.121** (0.136) |
| Wales, pension age | 0.008 (0.009) → **0.008** (0.009) | 0.009 (0.009) → **0.009** (0.009) | 0.010 (0.010) → **0.010** (0.010) | 0.012 (0.010) → **0.012** (0.010) |
| England, pension age | 0.468 (0.452) → **0.468** (0.452) | 0.495 (0.455) → **0.495** (0.455) | 0.524 (0.455) → **0.524** (0.455) | 0.585 (0.456) → **0.585** (0.456) |
| England, working age (reported) | 1.349 (2.514) → **1.349** (2.514) | 1.358 (2.534) → **1.358** (2.534) | 1.366 (2.548) → **1.366** (2.548) | 1.387 (2.582) → **1.387** (2.582) |
| Northern Ireland | 0.000 (0.001) → **0.000** (0.001) | 0.000 (0.001) → **0.000** (0.001) | 0.000 (0.001) → **0.000** (0.001) | 0.000 (0.001) → **0.000** (0.001) |
| UK total CTR | 1.987 (3.178) → **2.093** (3.318) | 2.032 (3.204) → **2.141** (3.342) | 2.076 (3.217) → **2.190** (3.357) | 2.177 (3.255) → **2.302** (3.396) |

- Change in CTR by year, at aed672468:
  - 2025: £+0.106bn; 0.172m households gain (mean £614 a year); net income change £+0.106bn
  - 2026: £+0.110bn; 0.169m households gain (mean £649 a year); net income change £+0.110bn
  - 2027: £+0.114bn; 0.170m households gain (mean £674 a year); net income change £+0.114bn
  - 2029: £+0.125bn; 0.171m households gain (mean £731 a year); net income change £+0.125bn

- Household net income rises by the same amount as CTR.
- **Pension-age CTR doesn't change.** At aed672468 it matches `main` in every year we ran (2025, 2026, 2027 and 2029), in England, Scotland and Wales, and so do English working-age CTR and Northern Ireland's CTR. That holds household by household as well as in total: no pension-age benefit unit's simulated reduction changes in 2026 or 2029.
- **Losers.** At aed672468, fewer than 10 survey records lose in each year, all Scottish working-age claimants without UC and without earnings, whose pensions or taxable benefits bear income tax. SSI 2021/249 reg 57 counts unearned income gross, whereas the shared formula deducted all income tax. `aggregate_impact/privacy.py`'s small-cell rule withholds their figures.
- **Earlier years.** The base Enhanced FRS has no weights before 2024. Three YAML cases check the 2015, 2016 and 2018 amounts instead.
- **The `Aggregate impact` check agreed at an earlier head.** On its run with base `main` 69903500ea and head 4fa309d415 (this PR merged into it), CTR spending rises by £105.8m in 2025-26, £109.7m in 2026-27 and £114.3m in 2027-28, matching the runs above, with 138-143k more recipients each year.
- **Flagged pensioner poverty move.** On that run, the check flags one pensioner move: relative poverty before housing costs rises 0.22pp in 2027-28. No pension-age benefit unit's reduction changes, and households that mix a pension-age and a gaining working-age family only gain income. So the move comes through the relative poverty line, which rises with median income, not through any pensioner's income falling.

## Why a gap to reported and official figures remains (data, not law)

PolicyEngine/policyengine-uk-data#496 and PolicyEngine/policyengine-uk-data#497 track the data faults, and PolicyEngine/policyengine-uk-data#499 (open) fixes both for a later data release. The figures in this section come from aed672468.

- **The data's `council_tax` holds the FRS bill net of CTR.** DWP defines the FRS 2024-25 `CTANNUAL` as "Annual CT amount after discounts/reduction" and derives it from CTREB and CTREBAMT. The model treats it as the gross liability, so its own CTR has already cut each reported recipient's liability.
  - In release 1.58.1, 22.3% of Welsh FRS-original reported recipients (all ages, base-year weights) have a £0 bill. Scotland's bill includes water charges, so no Scottish bill comes to £0.
  - A diagnostic copy of 1.58.1 (not a release) adds reported CTR back to FRS-original rows. With this PR on that copy, we estimate 2026 CTR at:
    - Scotland working-age: £0.200bn (0.197m households);
    - Wales working-age: £0.045bn (0.039m).
  - On the same copy, `main` gives £0.071bn and £0.010bn.
- **SPI-synthetic rows carry imputed "reported" CTR** from the stage-2 QRF (PolicyEngine/policyengine-uk-data#497).
- **Take-up.** Only survey reporters claim CTR in survey runs (#1831). The FRS-original rows hold 0.049m working-age reporters in Wales, against 157k working-age CTR households in March 2026.

| Group, 2026 | This PR, release 1.58.1 | This PR, gross-bill diagnostic copy | Survey reported | Official |
|---|---|---|---|---|
| Scotland, working age | £0.155bn (0.191m) | £0.200bn (0.197m) | £0.097bn (0.306m) | about £0.276bn and 306,740 recipients (March 2026)¹ |
| Wales, working age | £0.017bn (0.017m) | £0.045bn (0.039m) | £0.061bn (0.087m) | 157,021 households (March 2026); all ages £347.4m (2025-26), £336.0m budgeted (2026-27)² |
| England, pension age | £0.495bn (0.455m) | £0.782bn (0.610m) | £0.562bn (0.999m) | £1.816bn forgone (2025-26), 1,349,524 claimants (31 March 2026)³ |

1. Council Tax Reduction in Scotland, 2025-26 (gov.scot):
   - £425.1m provisional income forgone in 2025-26; 458,950 recipients in March 2026.
   - Working-age recipients = the total less pension-age recipients (sheet 2.6).
   - We derive £0.276bn as the under-65 share of the £425.1m from the average weekly awards by age (sheet 3.3); the publication gives no split of spending by age.
2. Welsh Government, Council Tax Reduction Scheme annual report 2025 to 2026; StatsWales revenue budget (CTRS) 2026-27.
3. MHCLG Council Taxbase 2025, CT Support sheet; Local Council Tax Support claimants live table, Q1 2026-27.

## What the route leaves out

Each variable's documentation also records its own gaps.

- **Components and premium conditions.** The route models neither the ESA work-related activity and support components nor the disability premium's LCW/LCWRA exclusion. The model's legacy premium variables decide who qualifies for the adult premiums, and the route uses the devolved amounts.
- **Tax credits.** The route models neither the childcare deduction's extension to earnings plus WTC/CTC (SSI 2021/249 reg 38(2)(d) and 42(2)(c); WSI 2013/3029 Sch 6 para 20(2)) nor the WTC disregard of up to £17.10; tax credits ended in April 2025.
- **Childcare charges.** The model holds charges per person in `childcare_expenses`, and the route counts the children with positive charges for each cap. Where an input puts a family's charges on an adult, the route still deducts them, at the one-child cap. The route doesn't model the couple cases where one partner works and the other has an incapacity, stays in hospital or sits in prison (SSI 2021/249 reg 77(2)(c); WSI 2013/3029 Sch 6 para 21(1)(c)).
- **Mid-year changes.** Amounts that change mid-year (for example the Scottish UC childcare caps from 28 June 2023) apply from the next model year, because the model samples one value a year.
- **Scottish fixed amounts before SSI 2021/249.** Scotland's disregards, childcare caps and hours parameters cite SSI 2021/249 from 2013. They don't cite the predecessor, SSI 2012/303, separately. (Wales's fixed amounts cite WSI 2012/3144 for 2013-14.)
- **Tax on pay without UC.** The law deducts the tax the employer deducted from pay. The model uses the UC model's split, which takes earnings as the lowest slice of non-savings income and pay before trade. It does not see a PAYE code that collects tax on other income through the pay.
- **Notional self-employed tax.** The notional tax ignores the personal allowance taper and the married couple's and marriage allowances.
- **Welsh unearned income.** Wales counts all gross income other than earnings less the Sch 9 disregards. The model counts the sources listed above and rent from letting part of the home, and leaves out others it holds, such as maintenance payments.
- **Scottish carer premium with no carer benefit in payment.** For the carer earnings disregard, Sch 3 para 6(1)(a) identifies carers by a carer benefit in payment. Where a Scottish family has the carer premium but no one receives Carer's Allowance or Carer Support Payment (an award of UC with the carer element, or a carer benefit that an overlapping benefit reduces to nil), the route approximates the £20 against the family's earnings, which can exceed Sch 3 para 7's £10 limit on a non-carer partner's earnings.
- **Transitional family premium.** The route leaves out Scotland's, because the model can't see an unbroken claim since May 2016.
- **Scotland-only routes.** The route models neither the band E-H alternative maximum (reg 14) nor the second adult rebate.
- **Scotland before April 2022.** The route approximates Scotland's UC rules under SSI 2012/303 with the 2021 scheme's structure. The UC childcare caps before 2022 take the 2022 value (£175 / £300), the same as the non-UC caps.
- **Exclusions.** The route doesn't exclude students or persons from abroad.
- **Non-dependant deductions** use `main`'s national CTR deductions (#1934; #2007 open).

## Tests

- **YAML.** `council_tax_reduction_devolved_working_age.yaml` has 48 cases. We worked each expected value by hand from the law's amounts:
  - Wales UC with no earnings: full award;
  - Wales UC excess income = 0.45 × earnings with no work allowance;
  - the Wales UC award stays the same at double the rent;
  - a Welsh couple with a child and no UC (Sch 7 amounts and disregards; the route ignores Child Benefit);
  - a Scottish UC lone parent counting only the child element;
  - a Scottish UC single earner (the £5 disregard; the route counts no UC as income);
  - the Scottish under-25 allowance;
  - the ESA passport in both countries;
  - Scotland's capital limit for a passported claimant;
  - tariff income;
  - a mixed-age UC couple in Wales on the working-age route;
  - 2015-16, 2016-17 and 2018-19 amounts;
  - regressions for the first review round: the carer disregard, the £17.10 conditions, Welsh tax on unearned income, the CSP component, a carer premium per partner, SMP on the Scottish UC route, the 2025 Scottish disability premium;
  - regressions for the second review round: tax on a pension or on dividends never comes off wages (three Welsh cases, one Scottish), a Welsh carer premium on entitlement when contributory ESA overlaps Carer's Allowance to nil, no Scottish carer premium from a potential UC carer element, the Scottish UC LCWRA £20 disregard, and voluntary Class 3 NI;
  - regressions for the third review round: property income does not dilute the Welsh pension-tax disregard; the Scottish LCWRA £20 where the younger partner has LCWRA and the older one works; the Welsh notional self-employed tax (pay 12,570 and profit 5,000 give earnings 17,570, not 16,570); the Scottish self-employed lone parent at the basic rate (£1,322.52, not the starter-rate £1,317.66);
  - regressions for the fourth review round:
    - Welsh pay and miscellaneous income (Class 1 comes off pay in full, and the route counts the miscellaneous income as unearned and disregards its tax share);
    - Scottish Part 5 miscellaneous income as unearned income (reg 57(1)(o));
    - one carer premium for partners caring for the same person, with a different-person control.
  - regressions for the fifth review round, each through final CTR:
    - Wales, a lone parent with children aged 5 and 10, £40,000 earnings at 30 hours, £3,000 council tax and £12,000 of charges on the five-year-old: the £175 cap deducts £9,100 and CTR comes to £1,891.35, not £12,000 and £2,471.35;
    - the same family with the charges on the parent: £9,100 and £1,891.35;
    - Scotland without UC, the same family with a £3,000 bill: £9,100 and £2,085.53, not £2,665.53;
    - Scotland with UC, £20,000 earnings and £24,000 of charges on the five-year-old: the £290 cap deducts £15,080 and CTR comes to £327.34, not £24,000 and £2,111.34;
    - Scotland without UC, a lone parent aged 60 with a child aged 5, £5,000 profit at 30 hours, a £15,000 pension, £9,000 of charges and a £1,800 bill: income £5,000 − £1,300 + £15,000 − £9,000 = £9,700, below the £10,680.80 applicable amount, so CTR comes to £1,800 and household net income to £19,780.27, not £936.16 and £18,916.43.
  - #2078: the route counts a Scottish working-age head's own pension when the head applies alone, and a 22-year-old head who applies alone keeps the under-25 allowance although the young couple in the head's benefit unit receive income-related ESA.
  - #1995: Welsh sub-tenant rent counts less £20 a week (£987.24); Scottish sub-tenant rent does not count from April 2022 (£1,800).
- **Property and differential tests.** `test_council_tax_reduction_devolved_working_age_properties.py` runs many households in one simulation:
  - Hypothesis: 0 ≤ award ≤ liability; the Wales UC award does not depend on rent where both variants have a housing costs element (uncapped awards); the UC award never rises with earnings; IS/JSA/ESA passported claimants get the full liability.
  - Hypothesis found that the rent property fails when one variant has no housing costs element. Gaining one lowers the UC work allowance (UC Regs 2013 reg 22), so the award changes by more than the element. The law sets that lower allowance, so the property now requires the element in both variants, and `test_welsh_universal_credit_rent_cancels_only_given_housing_costs` executes the boundary.
  - `test_childcare_cap_ignores_children_without_charges` (Hypothesis): adding children without charges to a family whose charges sit on one child leaves the deduction unchanged without UC, and a Scottish family with UC never deducts more than the one-child cap.
  - `test_scottish_childcare_comes_off_earned_and_unearned_income` (Hypothesis): for a Scottish applicant without UC, removing the charges raises income by exactly the deduction, net of any change in the earnings disregard, while income stays above zero; the disregard doesn't change for a family with no employed earnings, and income never falls below zero.
  - #2078's differential (`test_head_applying_alone_matches_her_own_benefit_unit`) also compares the working-age route's scheme flag, income, applicable amount, passport and UC flag.
  - Differential: on the Welsh UC route, CTR earnings equal the UC model's `uc_individual_earned_income`, income equals earnings + `uc_unearned_income` + the award, and the applicable amount equals `uc_maximum_amount`, with and without SMP.
  - A targeted partial Welsh UC award (£246.36) that stays the same at £6,000 and £13,000 rent.
  - Wales's fixed amounts start on 1 April 2013 with the WSI 2012/3144 values.
- **`main`'s carer and Pension Credit property tests on the devolved route.** Four of `main`'s tests asserted that every national-scheme claim follows the shared formula, and failed on this route. When we reran them at f9645848, each failed on a devolved claim:
  - `test_council_tax_reduction_carer_income_properties.py::test_council_tax_reduction_income_counts_the_carer_support_payment_component`: a Scottish working-age couple aged 56 and 40, earnings 0 and £21,421.84. Claiming lowers the award by £294.32, where the shared formula's excess income rises by £1,749.58, which would lower the award by £349.92.
  - `::test_council_tax_reduction_income_ignores_the_scottish_carer_supplement`: a Scottish couple aged 46 and 26 with no earnings. The supplement leaves the award unchanged, where the shared formula raises it by 20% of the tax on the supplement (up to £24.34).
  - `test_council_tax_reduction_pension_credit_properties.py::test_awards_follow_the_pension_credit_routes`: a Scottish single person aged 33 gets £2,974.60, where the shared formula gives £0.
  - `::test_not_claiming_pension_credit_never_raises_a_recipients_ctr`: a Welsh single person aged 54 gets £565.39, where the shared formula gives £447.87.

  Each test now holds its shared-formula assertions to claims where `council_tax_reduction_devolved_working_age` is false and checks devolved claims against the route (the carer file's invariants 5-6 and the Pension Credit file's 9-13, which the Invariants section below states). At f9645848, over the derandomised examples every test drew both kinds of claim: the carer component test 588 devolved and 294 shared-formula benefit-unit cells, the supplement test 378 and 462; in Scotland and Wales, the Pension Credit routes test 46 devolved claims (7 of them mixed-age couples on UC) and 116 others, the not-claiming test 44 (4) and 107.

  The devolved invariants hold the earnings channel apart, because claiming Carer Support Payment, or receiving the supplement, can change a couple's net earnings. The model transfers a marriage allowance transferor's unused personal allowance, up to the allowance's cap (`partners_unused_personal_allowance`), so a taxable payment to a transferring carer shrinks the transfer and raises the tax the other partner pays on earnings, which the route deducts (£26 a year in one generated couple). So the claim moves the working-age income less net earnings after the disregard by the component, and the supplement doesn't move it at all.
- **Mutation checks**, each run against these tests:
  - Removing the Welsh UC income route fails the differential test and the targeted partial-award test. The 20 derandomised Hypothesis examples alone don't catch it, so we added the targeted case.
  - Removing the passport fails the passport property.
  - Reverting each second-round fix fails its regression: all tax off wages (4 cases fail), Class 3 off wages, the carer premium on receipt, the potential UC carer element, dropping the LCWRA limb, and adding statutory pay to Welsh UC earnings (the differential test fails).
  - At aed672468, each of these fails at least one YAML case:
    - R3-1, sharing the pension-tax disregard with property income;
    - R3-2, requiring that the same person both works and hasn't reached pensionable age;
    - R3-3, deducting the tax actually paid on a profit (2 cases);
    - reading the benefit unit's claimant and partner instead of the applicant identity (#2078);
    - reading the Child Benefit young person in Scotland's working-age scheme (#2288; 2 cases);
    - reading the benefit unit's `esa_income` for the higher single allowance;
    - at 779f5dcfd: sharing Class 1 with miscellaneous income (R4-1); dropping the same-person carer cap (R4-2); leaving miscellaneous income uncounted (R4-3; 2 cases).
  - After the branch merged `main` 46a60678:
    - requiring that the same person both works and hasn't reached pensionable age (R3-2) still fails the Scottish LCWRA case;
    - making `council_tax_reduction_pensioner` ignore Universal Credit fails both mixed-age cases;
    - dropping the same-person carer cap (R4-2) no longer fails any case, because #2632 leaves only one partner with a modelled carer benefit.
  - Against the revised carer and Pension Credit property tests, each mutant alone:
    - deducting the income tax on counted unearned income in Scotland too, so that the Carer Support Payment component counts net of its tax as on the shared formula, fails both carer tests (invariants 5 and 6);
    - subtracting the tax on the Scottish Carer Supplement from Scottish working-age income fails both carer tests (invariants 5 and 6);
    - sending a Scottish or Welsh mixed-age couple on UC down the pension route (`council_tax_reduction_pensioner` ignoring their UC award) fails both Pension Credit tests (invariant 9).
  - At a1e07291, with the rest of the branch as it stands:
    - restoring the cap chosen from all the family's children fails 4 YAML cases (the Welsh, Welsh parent-charges and both Scottish cap cases) and `test_childcare_cap_ignores_children_without_charges`; the Scottish-childcare property still passes;
    - restoring the deduction from Scottish earnings alone fails the Scottish pension case and `test_scottish_childcare_comes_off_earned_and_unearned_income`; the cap property still passes.
  - At b55ff402, after `main` changed `council_tax_reduction_pensioner`'s reg 60A test, making it ignore Universal Credit still fails both mixed-age cases (17 of the 399 CTR YAML cases in all).
  - At 5df5afef, after the route took `main`'s UC award flag for the passport, removing the passport fails the two ESA passport cases and `test_income_related_esa_passports_to_the_full_liability`.
- **Outsider and dependant income.** `test_means_test_income_properties.py` checks that the new working-age income never counts income from people outside the family, nor, with `main`'s second invariant, from the family's own child or young person.
- **Suites.** Local runs:
  - at 09b52038 (no model code or YAML test has changed since): the CTR YAML directory, 399 of 399, including the devolved file, 48 of 48; the 29 other YAML files that read CTR, 396 of 396 (at 0523f90b, before 09b52038, `income_from_capital.yaml` failed 6 cases);
  - at 5df5afef, the 50 Python test files that read CTR: 805 passed, 1 failed, 3 skipped. The failure, `test_welsh_fixed_amounts_start_with_the_2013_scheme`, read the Welsh tariff parameter 09b52038 removed; b55ff402 points it at `main`'s parameter, and it passes there. The skips need the survey dataset: `microsimulation/test_abolish_council_tax_reform.py` (2) and `test_claims_all_entitled_benefits.py::test_survey_takeup_follows_reports_in_microdata`. Within them: `test_means_test_income_properties.py` 2, `test_council_tax_reduction_applicant_properties.py` 2, the devolved property file 8 (7 at 5df5afef, plus the fixed one at b55ff402), the carer property file 4, the Pension Credit property file 9, `test_legacy_means_test_income_from_capital_properties.py` 9;
  - at b55ff402: `code_health`, 3,198 passed.

  CI runs the full suite.

## Invariants

- 0 ≤ award ≤ liability.
- On the UC route, the award never rises with earnings.
- A Welsh UC award doesn't depend on the size of the housing costs element when the award includes one and no benefit cap applies.
- A passported claimant gets the full liability less non-dependant deductions.
- On the Welsh UC route, CTR earnings equal the UC model's earned income, so CTR and UC never disagree on earnings.
- Pension-age CTR matched `main`'s at aed672468 in every year we ran, benefit unit by benefit unit.
- In Scotland and Wales, a claim takes the working-age route exactly when no applicant or partner has reached the qualifying age for State Pension Credit, when the family has an award of UC and a member under that age, or when it receives IS, income-based JSA or income-related ESA (WSI 2013/3029 reg 3; SSI 2021/249 reg 3).
- A working-age claim never counts as receiving a guarantee credit, or savings credit without one. While its assessable capital doesn't exceed £16,000, its award equals max(0, L − 0.2 × max(0, I − A) − ND), where L is the liability, I the working-age income, A the applicable amount and ND the non-dependant deductions; above £16,000 it gets nothing.
- Claiming Carer Support Payment on the Scottish working-age route raises unearned income, and income less net earnings after the disregard, by the Carer Support Payment component (reg 57(1)(b)(iva)), raises the applicable amount by one carer premium (Sch 1 para 6(1)), and never raises the award. Where the award stays partial with and without the claim, the claim lowers it by 20% of the rise in income less the rise in the applicable amount.
- The Scottish Carer Supplement never reaches the working-age unearned income or applicable amount, nor the income less net earnings after the disregard (reg 57 lists the income it counts, gross). Where net earnings don't change, the supplement leaves the income and the award as they are, and it never lowers the award.
- A family whose childcare charges sit on one child gets the same childcare deduction however many other children it has (WSI 2013/3029 Sch 6 para 20(3); SSI 2021/249 regs 38(4) and 42(4)).
- For a Scottish applicant without UC, the childcare deduction lowers income by exactly its amount, net of any change in the earnings disregard, while income stays above zero, so it reduces unearned income as well as earnings (SSI 2021/249 reg 38(2)). Income never falls below zero.

## Effect on pensioner CTR (uk-triple-lock)

None. At aed672468, pension-age CTR in England, Scotland and Wales matched `main` (76cfc9e79) in every year we ran (2025, 2026, 2027 and 2029), in total and benefit unit by benefit unit, so the PR leaves uk-triple-lock's pensioner offsets as they are. We haven't rerun it against `main` 46a60678 or 47a2817e2. The childcare fixes and the capital change touch only the devolved working-age route.

On the pension side, the PR changes one legal rule: a mixed-age couple on UC in Scotland or Wales takes the working-age route, which keys on `main`'s per-claim `council_tax_reduction_pensioner` (WSI 2013/3029 reg 3; SSI 2021/249 reg 3). With that change, the pension-age totals above still matched `main`'s at aed672468.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Generated by Claude Code

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

Ready for hub review

Head b55ff4022f64f8950cddd8e1f78bab006f3e7d96 on branch claude/childcare-blockers-1966-4126n3 (no PR opened; ctr-working-age-shortfall untouched). Based on #1966's head a013f520a39340f832e9c024fbdd681944a5d53f.

Commits:

The PR_TITLE.txt and PR_BODY.md comments above carry the hub documents. The title doesn't change.

Open findings at a013f52

Reviews 5745840937 and 5746025105 (juaristi22), both at a013f52, leave two open findings. Review 5746025105 closes the other items 5745840937 left open (historical rates, CSP pre-overlap, Scottish childcare sources). No review comments sit on lines.

Finding Review Resolution
C1: the cap counts all children, not those with charges 5745840937, 5746025105 Fixed in a1e0729; at the head, working_age/council_tax_reduction_working_age_childcare_deduction.py:55-64
C2: Scotland deducts non-UC childcare from earnings only 5746025105 Fixed in a1e0729; at the head, working_age/council_tax_reduction_working_age_applicable_income.py:64-72, :114

C1. At a013f52 the Welsh case gave deduction £12,000 and CTR £2,471.35, as the review says. At the head it gives £9,100 and £1,891.35. The formula counts the benefit unit's working_age_child members with positive childcare_expenses and takes the two-or-more cap only when that count reaches 2, for the Welsh, Scottish non-UC and Scottish UC caps. Charges entered on no child (an adult) still count, at the one-child cap. The variable's documentation now says so, and the sentence about the number of children standing in for the number with charges is gone. council_tax_reduction_devolved_working_age.yaml:756 (Welsh lone parent, child aged 3, £9,000 on the parent) keeps its £9,000 deduction and £1,800 award at the head.

C2. At a013f52 the Scottish case gave income £15,000 and CTR £936.16, as the review says. Household net income came to £20,716.43, not £18,916.43: the model also pays £1,800 of Tax-Free Childcare (20% of £9,000). With would_claim_tfc: false, it gives £18,916.43, the review's figure, so the regression sets that input. At the head: income £9,700, CTR £1,800, household net income £19,780.27. For a non-UC Scottish applicant the formula now deducts the charges after adding unearned income, tariff income and any relevant UC payments, and floors income at zero. Wales without UC still deducts them from earnings after the disregards (Sch 6 para 20(1)(c)). Both variables' documentation and the formula comment say so.

  • I left council_tax_reduction_working_age_earnings_disregard's covers_additional test as it stands. In the Scottish pension case it gives no £17.10: Scotland from April 2022 tests employed earnings only, and the applicant has none. Testing all the earnings wouldn't change it either: £5,000 < (25 + 17.10) × 52 + 9,000 = £11,189.20. The disregard comes to £1,300.
  • Reg 38(4) and 38(2)(c). Reg 38(2)(c) deducts "relevant childcare charges calculated in accordance with regulation 77" and names no maximum; reg 38(4) gives the maximum "to which paragraph (2)(d) refers", in the same £175 / £300 amounts and on the same "child in respect of whom relevant childcare charges are paid" test. I read the two together as one limit, the £175 / £300 the route already applies, with (2)(d) extending the base to earnings plus tax credits. Wales's para 20(1)(c) applies one such maximum to both. The brief leaves out reg 77(3)-(5) and (9)-(17), so I can't confirm whether reg 77 sets its own limit. The Scottish non-UC caps stay as they were. The route doesn't model the tax credit addition in reg 38(2)(d) or para 20(2), and the PR body's gaps list says so.

Merge resolutions (0523f90)

Where main now does what this PR did (09b5203). main's #1995 brings council_tax_reduction_assessable_capital, council_tax_reduction_tariff_income, council_tax_reduction_universal_credit_award and council_tax_reduction_home_letting_income. After the merge, 6 of main's cases in policyengine_uk/tests/policy/baseline/gov/dwp/legacy_means_tests/income_from_capital.yaml failed, because the route still read household savings only. I dropped the PR's copies:

  • council_tax_reduction_working_age_capital: the capital limit now reads council_tax_reduction_assessable_capital for every national claim (simulated_council_tax_reduction_benunit.py);
  • council_tax_reduction_working_age_tariff_income and the two working_age/tariff_income.yaml parameter files, which hold the same £1 per £250 over £6,000 from 2013 as main's means_test.tariff_income.working_age: the route's income now adds council_tax_reduction_tariff_income;
  • the passport now excludes an applicant with an award of UC as council_tax_reduction_universal_credit_award defines it;
  • without UC, the route adds council_tax_reduction_home_letting_income in Wales, and in Scotland only where working_age_counts_home_letting_income holds (before SSI 2021/249), as main's shared formula does.

That fixes 4 of the 6. The other 2 (the Welsh and Scottish let-property cases) pinned working-age awards under the shared formula's applicable amount and tax, so I re-derived them under the devolved route: £827.20 each (derivations in the YAML). Two new devolved cases cover sub-tenant rent.

Judgment calls

  • Scottish UC tariff income. Through main's variable, a Scottish working-age applicant with UC now gets the UC assumed yield (£4.35 a month per £250), which main reads from SSI 2021/249 reg 63, in place of the PR's £1 a week. I followed main.
  • council_tax_reduction_working_age_has_universal_credit still reads is_uc_entitled for the applicant family; only the passport moved to main's award flag, as the PR body named. The two differ where the input supplies universal_credit with no entitlement.
  • The PR's 2013 Welsh tariff citations (WSI 2012/3144) go with the dropped parameter files; main's files hold the same values with their own citations.
  • Changelog. I removed the leading - from changelog.d/1962.fixed.md (the repository's guidance says towncrier adds the bullet) and added the childcare rules to it.

Tests

  • At 09b5203 (no model code or YAML test has changed since):
    • CTR YAML directory: 399 passed of 399, including council_tax_reduction_devolved_working_age.yaml 48 of 48 (41 before, plus 5 childcare cases and 2 sub-tenant cases);
    • the 29 other YAML files that read CTR: 396 passed of 396. At the merge commit 0523f90, income_from_capital.yaml failed 6 of these (above).
  • At 5df5afe, the 50 Python test files that read CTR (grep -rlE "council_tax_reduction|council_tax_benefit" policyengine_uk/tests --include=*.py): 805 passed, 1 failed, 3 skipped. The failure was test_welsh_fixed_amounts_start_with_the_2013_scheme, which read the tariff parameter 09b5203 removed. At b55ff40 that test passes (1 of 1). Per PR-changed file: test_means_test_income_properties.py 2/2, test_council_tax_reduction_applicant_properties.py 2/2, test_council_tax_reduction_devolved_working_age_properties.py 7/8 (the eighth fixed at b55ff40), test_council_tax_reduction_carer_income_properties.py 4/4, test_council_tax_reduction_pension_credit_properties.py 9/9; also main's test_legacy_means_test_income_from_capital_properties.py 9/9.
  • At b55ff40: policyengine_uk/tests/code_health 3,198 passed; ruff format --check . (2,248 files), ruff check ., ruff check --select F811,F821 policyengine_uk and git diff --check all clean; .github/check_fix_pr.py on the posted title and body with the PR's (empty) labels and the branch's changes since the main merge base: PASS, 14 changed executable tests.
  • I ran everything with uv sync --frozen --extra dev.

Revert checks

Each revert went into a scratch worktree at a1e0729 (or 5df5afe for the passport), with everything else as on the branch:

  • C1 reverted (the childcare file from 0523f90): 4 YAML cases fail (the Welsh case, the Welsh parent-charges case and both Scottish cap cases); test_childcare_cap_ignores_children_without_charges fails (Hypothesis found a Scottish UC family with children aged 1 and 11 added); the C2 property passes. A clean rerun of the property revert alone gave the same result.
  • C2 reverted (the applicable-income file from 0523f90): the Scottish pension case fails (CTR £936.16); test_scottish_childcare_comes_off_earned_and_unearned_income fails; the C1 property passes.
  • Passport removed at 5df5afe, repeating the PR's passport mutation after 09b5203 changed the passport: both ESA passport YAML cases and test_income_related_esa_passports_to_the_full_liability fail.
  • council_tax_reduction_pensioner ignoring Universal Credit, at b55ff40. I repeated this check because main changed that formula (the claimant-or-partner WTC test for reg 60A). It fails 17 of the 399 CTR YAML cases, including both of the PR's mixed-age cases ("Wales, a mixed-age couple on Universal Credit claims under the working-age rules" and "Scotland, the LCWRA £20 disregard where the younger partner has LCWRA and the older one works").
  • I didn't repeat the PR's other mutation checks. main didn't touch the route's working_age/ files, which hold the code they cover (earnings, carers, the Welsh UC income route, the young-person reads). main did change UC model files (benefit cap, deductions, the qualifying young person), which the Welsh UC differential reads; that differential passes at 5df5afe.

Skipped

  • Three tests need the survey dataset and skip: microsimulation/test_abolish_council_tax_reform.py (2) and test_claims_all_entitled_benefits.py::test_survey_takeup_follows_reports_in_microdata.
  • Impact and gap figures: no data access, so the PR body keeps the aed6724 figures, labelled by commit. The Aggregate impact check will rerun them when the hub moves the branch.
  • The full repository suite: CI runs it.
  • I opened no PR and pushed nothing to ctr-working-age-shortfall.

For the note on rulespec-uk#393

Add these provisions to the queued scope:

  • SSI 2021/249 reg 38(2)(a)-(c): earned income, plus unearned income, less relevant childcare charges (reg 77), for an applicant without UC; and reg 38(4)(a)-(b), the £175 / £300 maximum by number of children "in respect of whom relevant childcare charges are paid".
  • SSI 2021/249 reg 42(2)(c) and (4): with UC, the deduction from income, up to £290 / £497 (2026-27) by the same count; reg 78(3), the childcare costs element × 100/85.
  • WSI 2013/3029 Sch 6 para 20(1)(c) and (3): the deduction "from any earnings", up to £175 / £300 by the same count; para 21(1), the work conditions.
  • Encoding notes: the cap counts children with charges, not children in the family; Scotland applies the deduction after unearned income and Wales against earnings only; reg 38(2)(d) and para 20(2) (the tax credit extension) stay unencoded here.

CI figures in the PR body

These sentences carry CI figures, which a rerun may change:

  • Impact: "The Aggregate impact check reruns on each push."
  • "The Aggregate impact check agreed at an earlier head. On its run with base main 6990350 and head 4fa309d (this PR merged into it), CTR spending rises by £105.8m in 2025-26, £109.7m in 2026-27 and £114.3m in 2027-28, matching the runs above, with 138-143k more recipients each year."
  • "Flagged pensioner poverty move. On that run, the check flags one pensioner move: relative poverty before housing costs rises 0.22pp in 2027-28. ..."
  • Tests: "CI runs the full suite."

The impact table and the gap table come from local runs at aed6724, before the round-4 fixes, both merges, the childcare fixes and the #1995 composition; nobody has rerun them since.


Generated by Claude Code

@juaristi22 juaristi22 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review status: COMPLETE — changes requested at b55ff4022f64f8950cddd8e1f78bab006f3e7d96. C1 and C2 are resolved. One new confirmed blocker, C3, remains; no material evidence gaps.

C3: Do not cap ordinary Scottish non-UC childcare at the tax-credit maximum. In council_tax_reduction_working_age_childcare_deduction.py:93, the £175/£300 weekly maximum is applied to every Scottish non-UC case. SSI 2021/249 reg 38(2)(c) deducts relevant childcare calculated under reg 77, which contains no monetary maximum. Reg 38(4) supplies the maximum for paragraph (2)(d), whose paragraph (3) conditions include WTC/CTC receipt. The body and filed Axiom addendum disclose extending that cap by analogy; that does not establish the restriction for the ordinary route.

Reproduced in 2026 for a Scottish lone parent aged 60, child aged five, £5,000 self-employment profit/30 hours, £18,000 private pension, £12,000 qualifying registered childcare, zero savings and £1,800 council tax. No UC/IS/WTC/CTC is paid; the route and benefit gates are computed, not supplied. Current deduction £9,100 produces income £12,600 and CTR £1,416.16. Reg 38(2)(c) gives £5,000 − £1,300 + £18,000 − £12,000 = £9,700, below the £10,680.80 applicable amount, so CTR should be £1,800. A labelled uncapped control confirms the £383.84 annual CTR and household-income shortfall. Relevant registered care is an explicit qualifying premise; provider registration is not separately modelled.

Apply the maximum only to the statutory routes/years, retain predecessor/UC/Welsh caps where applicable, and align the regression and queued #393 companion. The independent source reviewer checked the full reg 38/reg 77 chain; this is a confirmed award defect rather than an unresolved source question.

Validation: 119/119 focused repository checks passed, plus the separate native/control reproduction. Those passing cap expectations confirm the current implementation, not its legal oracle. C1's charge-count and C2's combined-income fixes pass through final CTR/HNI. Shared capital, tariff, passport and letting integration were reviewed; no private population or billed encoder run was performed.

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

C3. Thanks for the reproduction, which puts the difference at £383.84 a year for that household. We've kept the maximum on the whole deduction, because reg 38 doesn't stand alone. Read by themselves, reg 38(2)(c) and (4) leave the ordinary deduction uncapped, and these points read the other way:

  • Reg 42 uses the same words as one sentence. Reg 38(2)(d) has no verb of its own: it carries on paragraph (c)'s deduction, and "up to the maximum deduction" closes it. Reg 42(2)(c) runs the same words together, and you've kept its maximum on the ordinary UC deduction. The Scottish Government reads it that way too. It has raised that maximum four times since 2023, and its SSI 2024/35 policy note calls it "the maximum allowable childcare costs in CTR" for those on UC. Those increases only matter if the maximum reaches beyond the tax credit limb, since a UC claim ends a tax credit award (SI 2014/1230 reg 8(2)).
  • The literal reading leaves paragraphs (3) and (4) with nothing to do. Paragraph (c) would already deduct the whole charge from a sum that counts working tax credit and child tax credit as unearned income (reg 57(1)(q), (r)), so no award would change under (d) or its maximum.
  • The 2021 Regulations set out to keep non-UC awards where they stood. The predecessor (SSI 2012/303 reg 27(1)(c), (3)) capped the whole deduction at £175 / £300, and reg 42(4) as made started at the same amounts. The policy note says "For those not receiving UC their level of CTR will be maintained", and it aims to give a household the same reduction on UC or off it.
  • Advisers tell claimants the limit applies. CPAG's Scottish guide takes eligible childcare costs off income up to £175 a week for one child or £300 for two or more "if you do not get UC" (2023, 2024, May 2026). Citizens Advice Scotland also names one maximum and makes no exception for those without UC, though it prints the UC amounts. We found no council or Scottish Government guidance that pays the ordinary route uncapped.

Our earlier reason leaned on reg 38(3)(a)'s cross-reference to paragraph (2)(c), and that carries little: reg 42(3)(a) refers to "paragraph (b)" in the same stale way. The body and the Axiom note now give the reasons above.

A council, Scottish Government or review panel source that pays the ordinary route uncapped would reopen this, and we'd change the route then. The code stays as it is for C3. The new Test / Python 2/7 failure comes from test_budget_totals_pinned.py, where main's pin predates this PR's Scottish rules for scottish_lone_parent; we'll re-pin once the other shards finish.

The baseline and uprating totals for scottish_lone_parent held no Council Tax
Reduction, because the shared means test counted the whole Universal Credit
award as income. The Scottish working-age route pays £806.12, £915.42, £966.70
and £1,065.44 in 2023, 2025, 2026 and 2028, and the uprating reform raises those
by 15%. The cases that abolish council tax pay no reduction and don't move.

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

@juaristi22 juaristi22 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Source-review correction for captured head b55ff4022f64f8950cddd8e1f78bab006f3e7d96: C3 is withdrawn; C1 and C2 remain resolved. This corrects my earlier review and does not claim a code fix or approve the later head 3e696c86d9764b9753976e8512dfd51fc7ea1219.

My earlier uncapped reading was too confident. The dated predecessor reg 27 explicitly caps ordinary childcare; the official 2021 continuity and 2024 policy notes, the parallel reg 42 construction and independently checked CPAG April 2024 guidance (physical page 9) materially support retaining the non-UC £175/£300 cap. The £383.84 override comparison establishes a model difference, not a statutory underpayment. The current capped reading does not need changing on the evidence now established.

The PR moved to 3e696c86d9764b9753976e8512dfd51fc7ea1219 during this source reassessment. That later code/head needs a separate incremental review. CI failures captured at the old head remain separate: Python 2/7 confirms three Scottish lone-parent pinned-output assertions; the other failed shards were not classified here. No approval is issued. I am dismissing my obsolete change-request opinions because C1/C2 were fixed and C3 has been withdrawn, not because the current PR is certified ready to merge.

@juaristi22
juaristi22 dismissed stale reviews from themself November 5, 2026 13:37

C1/C2 resolved at b55; C3 withdrawn after independent source reassessment. See correction review 5785778132. No approval of the later PR head.

@juaristi22 juaristi22 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Incremental review COMPLETE at 3e696c86d9764b9753976e8512dfd51fc7ea1219.

The delta from b55ff40 changes the Scottish lone-parent expected totals and explanatory text in test_budget_totals_pinned.py; production formulas and the previously assessed policy scope are unchanged. Three selected budget test nodes pass, each checking tax, benefit and net-income totals across 13 households. The other 14 matrix nodes were deselected; five other edited pins were not separately rerun. The earlier 119 checks remain separate historical evidence.

C1 and C2 remain resolved. C3 remains withdrawn following the source reassessment in my preceding review; the £383.84 uncapped control is not evidence of a statutory underpayment. No open findings or material evidence gaps remain in this captured-head review. The PR is still Draft, so this is a follow-up comment, with approval subject to readiness and applicable current-head checks.

MaxGhenis and others added 2 commits November 5, 2026 09:49
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…test

The test's table holds main's awards, and this branch pays those six families
through the working-age route. Hand arithmetic reproduces each award CI printed
and gives the Welsh single person's in each year.

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

@juaristi22 juaristi22 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Incremental review COMPLETE at 5ca81bbad5aafd4b099a425f1a33c7bc9a79f6ca, with no open findings or material evidence gaps.

The integration preserves the bytes of 39 scoped production/parameter files. The changed expected rows now explicitly identify the working-age CTR routes affected by this PR. Eight current checks passed: seven repository cases, including all three formerly failing ORIGIN_MAIN comparisons for 2019/2024/2026, and one natural Welsh household final-result check. That household gives CTR £1,228.04 and net income £8,048.04 against the independently derived arithmetic.

C4's named assertion failure is resolved in the focused current-head checks. The fresh hosted Test / Result is still pending; this local result does not certify the new required CI run. The prior 119 checks and three selected budget checks remain separate historical evidence.

C1 and C2 remain resolved. C3 remains withdrawn following the source reassessment. All 105 retained source originals, 102 extracts and three selected renders were hash-validated, and the actual #393 record was rechecked. No new policy-source acquisition was needed.

The PR remains Draft, and applicable exact-head hosted checks must pass before approval. This is a follow-up comment; CI-only clearance can be checked later without repeating this completed code/source review.

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

CI passes at 5ca81bbad, 20 checks of 20, with both new pins in place: test_budget_totals_pinned.py from 3e696c86d and test_council_tax_reduction_pensioner_children_tariff_properties.py from 5ca81bbad. The description gives the household arithmetic for each and CI's report at this head, and I've marked the PR ready.

@juaristi22 juaristi22 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same-head review retention COMPLETE at 5ca81bbad5aafd4b099a425f1a33c7bc9a79f6ca. Current numerical CI claims and all latest exact-head checks are verified. C1, C2 and C4 remain resolved; C3 remains withdrawn. One new description finding remains.

A1 — Qualify the cause of the current pensioner-poverty increase. The new paragraph concludes that the rise of 689 pensioners comes through the relative poverty line. The current CI overview reports a rounded 0.0% of households losing, and the no-pension-age-income-loss premise refers to the older aed672 assessment. Neither establishes that every pensioner-containing household has unchanged income at this head. The relative-line explanation is a plausible inference, but its exclusive cause is not demonstrated by the retained source and bounded tests. Please label it as a possible explanation or provide current pensioner-household income evidence.

No code, tests or policy-source investigation was repeated. The prior eight current-head checks and earlier validation remain separate retained evidence; all 105 policy source originals, 102 extracts and three selected renders were hash-validated. The current CI report's head/base/dataset provenance and numerical overview were checked. The PR is Ready and CI is clear, but approval is withheld while A1 remains open.

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

A1: the pensioner paragraph now names the relative line as the cause only if no pensioner household's income falls at this head. We haven't checked that, and the paragraph dates the earlier evidence to aed6724.

@MaxGhenis
MaxGhenis requested a review from juaristi22 November 5, 2026 21:14

@juaristi22 juaristi22 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Follow-up review COMPLETE at 5ca81bbad5aafd4b099a425f1a33c7bc9a79f6ca, with no open findings or material evidence gaps. A1 is resolved. The description now dates the earlier pensioner-income evidence, explicitly states that current pensioner-household incomes have not been checked, and makes the relative-poverty-line explanation conditional. This closes the wording finding without claiming new population evidence.

C1, C2 and C4 remain resolved. C3 remains withdrawn on reassessment, rather than fixed in code; the former £383.84 comparison is not a confirmed statutory underaward.

The unchanged head retains the prior eight current-head checks (seven repository checks and one final-result control); earlier validation remains separate historical evidence. All 105 source originals, 102 extracts and three retained renders were hash-validated. No tests or model calculations were repeated. The PR is Ready, and the latest 20 distinct exact-head checks pass. Head, description, review activity, source guards and required checks were refreshed before this approval.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

3 participants