From ae18ed5b17c34978ec964d0b0123db3e4a533923 Mon Sep 17 00:00:00 2001 From: Max Ghenis Date: Fri, 2 Oct 2026 07:42:34 -0400 Subject: [PATCH 1/3] Note the tax add-back in the supplement invariant; record the carer_support_payment meaning change Review follow-ups to #1952: the property docstring now says invariant 3 adds income tax back because the model deducts tax on income Pension Credit does not count (SPC reg 17(10); #1954). Adds a .changed fragment for the new meaning of carer_support_payment, and drops a stale pre-#1909 cliff figure from a YAML comment. Co-Authored-By: Claude Opus 5.5 --- ...sion-credit-carers-income-followups.changed.md | 1 + .../pension_credit_carer_income.yaml | 15 +++++++-------- ...test_pension_credit_carer_income_properties.py | 6 +++++- 3 files changed, 13 insertions(+), 9 deletions(-) create mode 100644 changelog.d/pension-credit-carers-income-followups.changed.md diff --git a/changelog.d/pension-credit-carers-income-followups.changed.md b/changelog.d/pension-credit-carers-income-followups.changed.md new file mode 100644 index 0000000000..00fefa8e48 --- /dev/null +++ b/changelog.d/pension-credit-carers-income-followups.changed.md @@ -0,0 +1 @@ +`carer_support_payment` now means the Carer Support Payment component only, as "carer support payment" does in the reserved-benefit regulations since SI 2026/246. The Scottish Carer Supplement is the separate `scottish_carer_supplement`; code that summed `carer_support_payment` for the total paid to a Scottish carer must add both. diff --git a/policyengine_uk/tests/policy/baseline/gov/dwp/pension_credit/pension_credit_carer_income.yaml b/policyengine_uk/tests/policy/baseline/gov/dwp/pension_credit/pension_credit_carer_income.yaml index 5cfb2eb06e..48a6817407 100644 --- a/policyengine_uk/tests/policy/baseline/gov/dwp/pension_credit/pension_credit_carer_income.yaml +++ b/policyengine_uk/tests/policy/baseline/gov/dwp/pension_credit/pension_credit_carer_income.yaml @@ -159,14 +159,13 @@ savings_credit: 0.6 * (238 - 208.07) * 52 - name: Housing Benefit no longer falls where Guarantee Credit used to end for a couple whose partner receives Carer's Allowance - # Before this change, Pension Credit left out the partner's Carer's - # Allowance, so Guarantee Credit ran on to a private pension of 9,700 and the - # Housing Benefit passport ended at 9,800, when HB counted the allowance: - # net income fell by 1,779.24 with the default HB income disregard (2,254.02 - # with the disregard set to 0, as here). Now Guarantee Credit has ended well - # before, and each 100 of private pension adds 100 - 20 tax - 52 HB (65%) - # - 16 CTR. The HB income disregard is set to 0 so that the numbers do not - # depend on it; the couple has no earnings. + # Before #1952, Pension Credit left out the partner's Carer's Allowance, so + # Guarantee Credit ran on to a private pension of 9,700 and the Housing + # Benefit and Council Tax Reduction passports ended at 9,800, when both + # counted the allowance, and net income fell steeply there. Now Guarantee + # Credit has ended well before, and each 100 of private pension adds + # 100 - 20 tax - 52 HB (65%) - 16 CTR. The HB income disregard is set to 0 + # so that the numbers do not depend on it; the couple has no earnings. period: 2026 absolute_error_margin: 0.01 input: diff --git a/policyengine_uk/tests/test_pension_credit_carer_income_properties.py b/policyengine_uk/tests/test_pension_credit_carer_income_properties.py index 6c5b82f21c..33a9ad3046 100644 --- a/policyengine_uk/tests/test_pension_credit_carer_income_properties.py +++ b/policyengine_uk/tests/test_pension_credit_carer_income_properties.py @@ -31,7 +31,11 @@ cliff, so it is excluded. 3. Metamorphic: setting the Scottish Carer Supplement to zero changes Pension Credit income and Housing Benefit applicable income only through - income tax: each plus income tax is unchanged. + income tax: each plus income tax is unchanged. This is weaker than the + law, which disregards tax only on income taken into account (SPC Regs + reg 17(10)), so the supplement should leave Pension Credit income + unchanged outright. The model deducts all income tax, including the tax on + the supplement (#1954), so the invariant adds income tax back. These compare PolicyEngine's own income measures, so they hold whatever carer's benefit the model pays. The model does not yet apply the From c382ca3b0d8b52a01a821725b8109cbb2fadcd90 Mon Sep 17 00:00:00 2001 From: Max Ghenis Date: Fri, 2 Oct 2026 15:14:38 -0400 Subject: [PATCH 2/3] Apply review wording: drop the stale cliff figure, say invariant 3 encodes model behaviour The docstring no longer quotes the pre-#1909 cliff figure and names both passports (HB and CTR). Invariant 3 is described as encoding the model's current tax deduction rather than the law (SPC Regs reg 17(10); HB (SPC) Regs 2006 reg 33(12)), to be tightened when #1954 is fixed. The changelog fragment says the meaning change dates from 2.106.0. Co-Authored-By: Claude Opus 5.5 --- ...-credit-carers-income-followups.changed.md | 2 +- ..._pension_credit_carer_income_properties.py | 23 ++++++++++--------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/changelog.d/pension-credit-carers-income-followups.changed.md b/changelog.d/pension-credit-carers-income-followups.changed.md index 00fefa8e48..342652a9e7 100644 --- a/changelog.d/pension-credit-carers-income-followups.changed.md +++ b/changelog.d/pension-credit-carers-income-followups.changed.md @@ -1 +1 @@ -`carer_support_payment` now means the Carer Support Payment component only, as "carer support payment" does in the reserved-benefit regulations since SI 2026/246. The Scottish Carer Supplement is the separate `scottish_carer_supplement`; code that summed `carer_support_payment` for the total paid to a Scottish carer must add both. +Since 2.106.0, `carer_support_payment` means the Carer Support Payment component only, as "carer support payment" does in the reserved-benefit regulations since SI 2026/246. The Scottish Carer Supplement is the separate `scottish_carer_supplement`; code that summed `carer_support_payment` for the total paid to a Scottish carer must add both. diff --git a/policyengine_uk/tests/test_pension_credit_carer_income_properties.py b/policyengine_uk/tests/test_pension_credit_carer_income_properties.py index 33a9ad3046..db10c9552f 100644 --- a/policyengine_uk/tests/test_pension_credit_carer_income_properties.py +++ b/policyengine_uk/tests/test_pension_credit_carer_income_properties.py @@ -3,12 +3,12 @@ Pension Credit income left out Carer's Allowance and Carer Support Payment, although the State Pension Credit Regulations 2002 reg 15(1) prescribe "all social security benefits" as income except those they list, and neither is -listed. Pension-age Housing Benefit counted both. While Guarantee Credit was -paid, Housing Benefit was passported to its maximum and hid the difference; -when Guarantee Credit ended, Housing Benefit was assessed on the carer's -benefit that Pension Credit had ignored. A pensioner couple whose partner -received Carer's Allowance lost £1,779.24 of net income when private pension -rose from £9,700 to £9,800 in 2026. +listed. Pension-age Housing Benefit and Council Tax Reduction counted both. +While Guarantee Credit was paid, both were passported to their maximum and hid +the difference; when Guarantee Credit ended, both were assessed on the carer's +benefit that Pension Credit had ignored, so a pensioner couple whose partner +received Carer's Allowance lost well over the £100 rise in their private +pension at that step. The Scottish Carer Supplement, paid with Carer Support Payment from 15 March 2026, is the opposite case: SPC Regs reg 15(1)(ri) excepts it from Pension @@ -31,11 +31,12 @@ cliff, so it is excluded. 3. Metamorphic: setting the Scottish Carer Supplement to zero changes Pension Credit income and Housing Benefit applicable income only through - income tax: each plus income tax is unchanged. This is weaker than the - law, which disregards tax only on income taken into account (SPC Regs - reg 17(10)), so the supplement should leave Pension Credit income - unchanged outright. The model deducts all income tax, including the tax on - the supplement (#1954), so the invariant adds income tax back. + income tax: each plus income tax is unchanged. This encodes the model's + current behaviour, not the law's. The law disregards tax only on income + taken into account (SPC Regs reg 17(10); HB (SPC) Regs 2006 reg 33(12)), + so the supplement should leave both measures unchanged outright, while + the model deducts all income tax, including the tax on the supplement + (#1954). When that is fixed, assert the measures themselves are unchanged. These compare PolicyEngine's own income measures, so they hold whatever carer's benefit the model pays. The model does not yet apply the From c8460e39b08355a5f34ab1ae78522c42a1161973 Mon Sep 17 00:00:00 2001 From: Max Ghenis Date: Fri, 2 Oct 2026 16:06:23 -0400 Subject: [PATCH 3/3] Say CTR counted Carer's Allowance only, not Carer Support Payment Council Tax Reduction's income list has carers_allowance but not carer_support_payment (#1955), so the docstring no longer says CTR counted both. Renames the couple YAML test to name both passports. Co-Authored-By: Claude Opus 5.5 --- .../pension_credit/pension_credit_carer_income.yaml | 2 +- .../test_pension_credit_carer_income_properties.py | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/policyengine_uk/tests/policy/baseline/gov/dwp/pension_credit/pension_credit_carer_income.yaml b/policyengine_uk/tests/policy/baseline/gov/dwp/pension_credit/pension_credit_carer_income.yaml index 48a6817407..15ac062765 100644 --- a/policyengine_uk/tests/policy/baseline/gov/dwp/pension_credit/pension_credit_carer_income.yaml +++ b/policyengine_uk/tests/policy/baseline/gov/dwp/pension_credit/pension_credit_carer_income.yaml @@ -158,7 +158,7 @@ # Credit is the maximum, 60% of (standard minimum guarantee - threshold). savings_credit: 0.6 * (238 - 208.07) * 52 -- name: Housing Benefit no longer falls where Guarantee Credit used to end for a couple whose partner receives Carer's Allowance +- name: Housing Benefit and Council Tax Reduction no longer fall where Guarantee Credit used to end for a couple whose partner receives Carer's Allowance # Before #1952, Pension Credit left out the partner's Carer's Allowance, so # Guarantee Credit ran on to a private pension of 9,700 and the Housing # Benefit and Council Tax Reduction passports ended at 9,800, when both diff --git a/policyengine_uk/tests/test_pension_credit_carer_income_properties.py b/policyengine_uk/tests/test_pension_credit_carer_income_properties.py index db10c9552f..bacc149e59 100644 --- a/policyengine_uk/tests/test_pension_credit_carer_income_properties.py +++ b/policyengine_uk/tests/test_pension_credit_carer_income_properties.py @@ -3,12 +3,13 @@ Pension Credit income left out Carer's Allowance and Carer Support Payment, although the State Pension Credit Regulations 2002 reg 15(1) prescribe "all social security benefits" as income except those they list, and neither is -listed. Pension-age Housing Benefit and Council Tax Reduction counted both. +listed. Pension-age Housing Benefit counted both, and Council Tax Reduction +counted Carer's Allowance (it does not yet count Carer Support Payment: #1955). While Guarantee Credit was paid, both were passported to their maximum and hid -the difference; when Guarantee Credit ended, both were assessed on the carer's -benefit that Pension Credit had ignored, so a pensioner couple whose partner -received Carer's Allowance lost well over the £100 rise in their private -pension at that step. +the difference; when Guarantee Credit ended, both were assessed on the +Carer's Allowance that Pension Credit had ignored, so a pensioner couple whose +partner received it lost well over the £100 rise in their private pension at +that step. The Scottish Carer Supplement, paid with Carer Support Payment from 15 March 2026, is the opposite case: SPC Regs reg 15(1)(ri) excepts it from Pension