Repository navigation
Count Carer Support Payment as Council Tax Reduction income - #1992
Merged
Merged
Conversation
Scottish carers receive Carer Support Payment in place of Carer's Allowance, but council_tax_reduction_applicable_income listed only carers_allowance, so a Scottish carer's reduction ignored the carer's benefit. Scottish CTR counts the Carer Support Payment component in full: SSI 2021/249 reg 57(1)(b)(iva) at working age and SSI 2012/319 reg 27(1)(j) at pension age. Neither counts the Scottish Carer Supplement (reg 57(1) is a closed list that omits it; reg 27(1)(j)(xxib) excepts it), so scottish_carer_supplement, split out in #1952, stays off the list. Adds YAML cases from statutory rates and Hypothesis properties: CTR income rises by exactly the CSP component when the carer claims, is invariant to the supplement except through income tax, and matches Housing Benefit income for carers in all three nations. Fixes #1955 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…duction Both Scottish CTR instruments deduct income tax only from earnings (SSI 2021/249 Part 6 Chapter 3; SSI 2012/319 regs 33 and 36), so in law the Scottish Carer Supplement does not touch CTR. The model deducts all income tax, so the property and YAML comments now say the dependence on the supplement through income tax is that existing approximation. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 1, 2026
…lify the 20% invariant After merging main, a pension-age couple on Guarantee Credit has its whole income disregarded for Council Tax Reduction (SSI 2012/319 reg 24, modelled since #1909), so the case now expects applicable income of 0 and checks the Carer Support Payment itself. The property docstring says the 20% fall holds where claiming leaves the applicable amount unchanged, as the review of 1f361a3 asked. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Since #1909, a pension-age family on Guarantee Credit has its whole income disregarded for Council Tax Reduction, and one on savings credit only is assessed on Pension Credit income plus the Pension Credit paid (SSI 2012/319 regs 24 and 25). The general-income identities now apply only where neither route applies, and a new property checks both routes. A Scottish pensioner carer with no State Pension is pinned as an example: it crosses into savings credit only on the private pension grid and failed the old assertions. Addresses the review of e6f29a7 (finding 1). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…sh CTR Pension-age Scottish CTR does not deduct tax from earnings only: SSI 2012/319 reg 31(12) disregards the tax payable on any income taken into account. Working-age CTR (SSI 2021/249) deducts it from earnings only. Either way the Scottish Carer Supplement, which neither scheme counts, reaches CTR in law neither directly nor through its tax. Say so in the YAML header and the property docstring. Add two cases in which the carer's overlapping benefit (State Pension at pension age, contributory ESA at working age) exceeds the Carer Support Payment rate, so CSP Regs reg 16(2) would reduce the CSP given to nil. The model does not apply reg 16(2) yet. Whether CTR counts CSP before or after that reduction is open (SSI 2012/319 reg 27(3) and (5); SSI 2021/249 reg 57(1)(b)), so the cases fail if CTR income silently drops the CSP, and whoever applies reg 16(2) must settle it. Cite SSI 2021/249 reg 57 and SSI 2012/319 reg 27 on the CTR income variable, and note in scottish_carer_supplement that Scottish CTR does not count it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collaborator
Author
|
One line for this PR to update now that #2049 has merged. The module docstring of 🤖 Generated with Claude Code |
This was referenced Oct 3, 2026
MaxGhenis
marked this pull request as ready for review
October 3, 2026 11:40
…asks - Say Scottish CTR counts Carer Support Payment "with no cap at the Carer's Allowance amount" rather than "in full", which could be read as before the CSP Regs reg 16(2) reduction. - Label the 2025 YAML rates as the model's (46.38 and 92.04); the statutory 2025-26 amounts were 46.40 and 92.05 (#2110). - Property 1: claim that the award never rises only for carers by hours, which is what the test checks. Property 2: name the counted benefits the test compares. - Assert that each general-rules comparison covers at least one cell, so no property can pass on an empty mask; at the top of the pension grid every family follows the general rules with positive income. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… now #1994 made carer_support_payment the amount given after CSP Regs reg 16(2) and added carer_support_payment_pre_overlap. Which amount Scottish CTR counts is unsettled (SSI 2012/319 reg 27(3), (5); SSI 2021/249 reg 57(1)(b)), so CTR income now reads carer_support_payment_pre_overlap, which keeps CTR as it was before the reduction was modelled, until that is decided. The two tripwire cases assert both amounts. #1994 also ties the carer premium to entitlement, so a Scottish carer who does not claim now has no premium, as SSI 2021/249 Sch 1 paras 5(2) and 6(1) require: that control's award is 1,593.72. The properties now check the pre-overlap component, the supplement only where some CSP is paid, the 20% withdrawal net of the carer premium the claim brings, and the HB differential net of the part of CSP the overlap removes (HB counts it after the reduction, HB (SPC) reg 29(4)(g)). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ment-income # Conflicts: # policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_applicable_income.py
Collaborator
Author
|
Merged under d780 ("merge on gates"), at reviewed head 0f5a5b4 with a merge commit (20590dc). Gates:
State after merge:
🤖 Generated with Claude Code |
MaxGhenis
added a commit
that referenced
this pull request
Oct 4, 2026
… £46.40 Review of 86acb01 (subfleet/review-after-merge-2.md): REQUEST CHANGES. 1. Main's #1992 council tax reduction test, which arrived with the merge of b1dd418, expected the model's old 2025-26 carer premium of £46.38. This branch sets the statutory £46.40 (IS Regs 1987 Sch 2 para 15(7) from 7 April 2025), as that test's header already noted (#2110). Its applicable amount is now (92.04 + 46.40) x 52 = 7,198.88, and the reduction 2,000 - 0.2 x (11,331.60 - 7,198.88) = 1,173.46. The 92.04 personal allowance half of #2110 is unchanged. 2. The same-person default read only a carer benefit in payment as a supplied award. A pension-age couple with supplied Carer's Allowance entitlement that the State Pension overlaps to nil, or with is_entitled_to_carer_benefit supplied, got one premium where s.70(7ZA) gives two. An award is now a reported award or any entitlement the caring hours do not explain, which must have been supplied. Two YAML cases, both failing under the old formula: the pension-age couple (HB applicable amount (383.35 + 2 x 48.15) x 52) and supplied entitlement without hours or payment. 3. The hours that explain an entitlement are Carer Support Payment's in Scotland from 2025 and Carer's Allowance's otherwise, as in carers_allowance_pre_overlap. Both are 35 today, so only reforms change: with the Carer's Allowance minimum raised to 40, a Scottish couple each caring 36 hours now gets one premium, not two. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #1955
#1952 and #1994 have merged. On
main,carer_support_paymentis the Carer Support Payment component only, after the CSP Regs reg 16(2) overlapping-benefit reduction.carer_support_payment_pre_overlapis the same component before that reduction, and the Scottish Carer Supplement is a separate variable,scottish_carer_supplement.What changes
council_tax_reduction_applicable_incomelistedcarers_allowancebut not the Carer Support Payment. From 2025 the model moves Scottish carers from Carer's Allowance (CA) to Carer Support Payment (CSP), so their CTR income left out their carer's benefit. This PR addscarer_support_payment_pre_overlapto the list.scottish_carer_supplementstays off it.carer_support_paymentand updates the two tripwire cases.referencenow also lists SSI 2021/249 reg 57 and SSI 2012/319 reg 27.scottish_carer_supplement's documentation now says that Scottish CTR does not count it either.changelog.d/1955.fixed.md.Law
Re-read on 2026-10-02 from fresh legislation.gov.uk CLML fetches (valid from 2026-04-01). The text is unchanged from the 2026-09-30 copies. No instrument made or in force since 2026-04-01 touches carer income in either Scottish scheme. SSI 2026/259 (in force 6.11.2026) amends both instruments elsewhere, and its only change to the reg 57(1) list omits head (v), widowed mother's allowance.
social_security_income, but the model pays neither from 2026, when the supplement starts (income_support.activeis false from 2026-04-01 andtax_credits.activefrom 2025-04-06). Council Tax Reduction income deducts the family's whole income tax, not the tax the schemes allow #2090 records the approximation: it over-deducts at working age and deducts tax on income that is not counted at pension age.carer_support_paymentrequirescountry == SCOTLAND), so the shared list cannot change CTR there. For the record:Rates (weekly): CSP £86.45 and the supplement £11.70 from 5.4.2026 (SSI 2023/302 reg 16(1) and (1A), as amended by SSI 2026/170 reg 12(3)). CSP was £83.30 in 2025-26. The supplement was £11.29 from 15.3.2026 to 4.4.2026 (SSI 2025/340 reg 3(12)(c)).
Open question for #1994: does CTR count CSP before or after its overlapping-benefit reduction?
Since #1994,
mainapplies CSP Regs (SSI 2023/302) reg 16(2), under which "the amount of Carer Support Payment that is to be given ... is to be reduced" by State Pension, contributory ESA and similar benefits. Two independent readings of fresh texts reach the same answer at each age, with the confidence shown:This PR counts the amount before the reduction at both ages for now, which keeps CTR where it was before #1994. That matches the pension-age reading but not the working-age one. The choice is queued for a ruling and may flip either age.
Two YAML cases are tripwires for the choice. In each, the carer's overlapping benefit exceeds the CSP rate, so
carer_support_paymentis 0 andcarer_support_payment_pre_overlapis 86.45 × 52: State Pension at pension age, contributory ESA at working age. Each fails if CTR income drops the CSP, so a ruling has to be applied deliberately.How PolicyEngine models Scottish CTR
simulated_council_tax_reduction_benunitruns one national scheme for Scotland, at working age and pension age alike. It has:gov.local_authorities.scotland.council_tax_reduction);The national scheme counts UC as income. Draft #1966 moves Scottish and Welsh working-age claims onto their own income and UC rules, and after it this change still governs Scottish pension-age CTR.
#1966 has a problem now that #1952 is on
main. Itscouncil_tax_reduction_working_age_unearned_incomelistscarer_support_paymentbut then subtractssupplement / (rate + supplement)of it, on the old assumption thatcarer_support_paymentincludes the supplement. On currentmainthat removes £535.88 a year (4,495.40 × 11.70 / 98.15) of genuine CSP in 2026, so #1966 must drop the subtraction. A note to that effect is on #1966.Household examples (2026 unless stated; council tax £2,000; YAML cases)
main→ this PRmain→ this PRmainthe award jumps to 2,000 when CA becomes CSP in 2025; with this PR it does not.Every row is a YAML case. The "before" CTR income comes from running the same file on
main325d585. The runner reports only the first mismatch in each case, so for the failing rows the "before" award is derived: eachmainincome is below its applicable amount, so the award is the full 2,000. All 12 cases pass on this head.Tests
council_tax_reduction_carer_support_payment.yamlhas 12 cases, each worked from the rates with the arithmetic in comments. The 2026 rates are statutory. The 2025 case uses the model's 2025-26 carer premium and personal allowance (46.38 and 92.04), which are 2p and 1p below the statutory amounts (2025-26 legacy carer premium and HB personal allowance are extrapolated, not statutory #2110).main325d585, 7 fail, every one oncouncil_tax_reduction_applicable_income, short by exactly the CSP (for example "7000 differs from 11495.40"). The 5 controls pass on both: Wales on CA, a Scottish carer who does not claim, 2024 on CA, the Guarantee Credit couple and the English pensioner.test_council_tax_reduction_carer_income_properties.pyholds 4 Hypothesis properties.gov.social_security_scotland.carer_support_payment.supplementto 0 leaves CSP and the other benefits CTR counts (Child Benefit, the income-related benefits, UC and tax credits) unchanged. On the general rules it also leaves CTR income plus income tax unchanged. The supplement never lowers the award, on any route. Where both awards are partial on the general rules, it raises the award by exactly 20% of the tax on the supplement.comparedmask in properties 1-3 is asserted to cover at least one cell; at the top of the pension grid every family follows the general rules with positive income. The 20% checks run where both awards are partial, which the pinned example reaches at a £20,000 pension.main325d585, properties 1 and 3 fail and 2 and 4 pass:main's CTR does not.mainbefore Reduce Carer's Allowance and Carer Support Payment by overlapping benefits #1994 (84f5ad4): a Scottish carer aged 92 with State Pension £5,902 and private pension £8,000 was moved onto the Savings-Credit-only route by the supplement's tax, and the award fell from 500 to 228.02. Since Reduce Carer's Allowance and Carer Support Payment by overlapping benefits #1994 that State Pension removes the carer's CSP and supplement, and Guarantee Credit applies, so that example no longer fails onmain.scottish_carer_supplementalso added to the list, 4 YAML cases fail, each by exactly 608.40 (11.70 × 52): the two working-age CSP cases, the single pensioner and the pensioner couple. The two tripwire cases pay no supplement, so they do not move. Properties 1, 2 and 3 fail.gov/local_authorities,gov/dwp,gov/social_security_scotlandandfinance: 1,128 passed. Pytest fortest_carer_support_payment.py,test_council_tax_reduction_pension_credit_properties.py,test_housing_benefit_pension_age_properties.pyandtest_pension_credit_carer_income_properties.py: 20 passed. The full suite runs in CI.Invariants (they hold for every input in the drawn domain):
They compare the model's own measures, so they hold whatever carer's benefit the model pays.
Enhanced FRS impact
Real microsimulation runs, two in total:
maina494425 and this head (0f5a5b4), each over 2025-2030, on the published Enhanced FRS 2024-25: a local copy ofenhanced_frs_2024_25.h5from Hugging Facepolicyengine-uk-data-private, uploaded for version 1.57.4. Its sha256,03fe15e4…, matches the LFS object on Hugging Facemain, checked on 2026-10-03. Totals are summed in float64.mainIn 2026:
main.Earlier comparisons against older
mains gave −£0.38m in 2026 againstb4d613a8, kept with the 2026-10-01 evidence, and −£0.98m against 84f5ad4 to 9eccc54. The rise in CTR income is £508m in every run, so the award change moves withmain's baseline, not with this PR's change. The scripts (dataset_impact.py,compare_impact.py) and outputs are kept outside the repo.History
The branch has merged
mainseveral times. Its diff againstmaina494425 is the files listed under What changes plus the tests. One upstream merge in its history, 3729880 (#1943's merge ofmain), resolved a conflict ingov/dwp/universal_credit/means_test/income_definitions/unearned.yamlby keeping both citation sets and State Pension. That merge is already onmainand is not part of this PR's diff.Axiom
axiom: TheAxiomFoundation/rulespec-uk#432 queued. No rulespec-uk module decides Scottish CTR income, and none of SSI 2021/249 reg 57 or reg 4, or SSI 2012/319 reg 27 or reg 2, is in the pinned corpus release. The issue sets out the corpus ingest, a pasteable
review_findingfor each regulation, and companion tests from the same statutory rates as the YAML cases. It encodes the open reg 16(2) treatment as two outputs, one before and one after the reduction, so the ruling picks between them.Interactions with other open PRs
carer_support_paymentthe amount after reg 16(2), addedcarer_support_payment_pre_overlap, and tied the carer premium to entitlement. This PR readscarer_support_payment_pre_overlapuntil the open question is ruled on. The two tripwire cases check both amounts.Follow-ups filed
🤖 Generated with Claude Code