Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
4e287f6
End income-related ESA on its abolition dates (SI 2025/1148 art. 3A)
MaxGhenis Nov 1, 2026
d63086c
Test the income-related ESA abolition and stop an ended award holding…
MaxGhenis Nov 1, 2026
7c7bd93
Keep pre-existing ESA tests on their subject with the appointee saving
MaxGhenis Nov 1, 2026
99b335b
Keep pre-existing ESA property tests on their subject; document the a…
MaxGhenis Nov 1, 2026
eb090e0
Say in is_on_income_related_esa that the abolition ends an outside me…
MaxGhenis Nov 1, 2026
8fba856
Describe the awards_payable flag by what main does with it
MaxGhenis Nov 1, 2026
beb1b18
Claim Universal Credit when the ESA abolition reaches an award, and c…
MaxGhenis Nov 1, 2026
5091a31
Test the abolition's Universal Credit claim, closure and shared saved…
MaxGhenis Nov 1, 2026
1a0756c
Describe the abolition's claim path, run-on exception and award history
MaxGhenis Nov 1, 2026
f53a049
Look up the ESA award helper in a module map, keeping own_report_is_p…
MaxGhenis Nov 1, 2026
59e8f80
Name who acts in the abolition's documentation and test comments
MaxGhenis Nov 1, 2026
68ccc08
Name the actor in claims_all_entitled_benefits documentation
MaxGhenis Nov 1, 2026
39002e5
Keep Housing Benefit for specified or temporary accommodation through…
MaxGhenis Nov 1, 2026
a3f8b11
Apply the ESA report closure to an outside member only when both held…
MaxGhenis Nov 1, 2026
ce6f62f
Name what the abolition's reach reads and the planned claim draw; nam…
MaxGhenis Nov 1, 2026
f82e81f
Describe the 2027-28 move and the accommodation exception in the chan…
MaxGhenis Nov 1, 2026
509842c
Name who appoints the Housing Benefit dates and what the savings do, …
MaxGhenis Nov 1, 2026
20afd3a
State the limits of the ESA abolition's housing and status rules
MaxGhenis Nov 2, 2026
5a5ac5f
Limit the claim gate invariant to members who report an award
MaxGhenis Nov 2, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/2562.fixed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Model income-related ESA payments up to the 2026 abolition dates and Universal Credit claims when a family's award starts to end. The model pays unsaved claims to 30 June 2026 in Great Britain and 30 September 2026 in Northern Ireland, using 86/365 and 178/365 of the 2026-27 year, and from 2027-28 moves each affected family off its legacy benefits. Users can preserve an award with the new appointee-saving input. A family in specified or temporary accommodation now keeps its Housing Benefit when DWP moves it off its legacy benefits, unless it claims Universal Credit.
19 changes: 19 additions & 0 deletions docs/engineering/esa-jsa-report-screening.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,25 @@ screen passes. The couple's part stays £2,792. A working outside reporter canno
raise the total; failure of the couple's own screen cannot erase another eligible
person's separate award. These examples presume separate preassessed claims.

The Secretary of State appointed 1 July 2026 for the abolition of income-related
ESA to reach every remaining award in Great Britain, and the Department for
Communities appointed 1 October 2026 in Northern Ireland (SI 2025/1148 art. 3A;
SR 2025/176 art. 3A).
An award already due to end at the end of a two-week run-on ends on that
schedule instead: with a migration notice deadline of 22 June 2026 and no claim,
SI 2014/1230 reg 46(1)(a) ends the award on 5 July. The model has no deadline or
claim dates, so it pays each claim for `esa_income_payable_share` of the year, to
the general date: one share for the couple's claim and one for each outside
claim. In 2026–27 that is 86/365 in Great Britain and 178/365 in Northern
Ireland, so for a couple that does not claim Universal Credit the £3,876 above
becomes £913.25 in Great Britain. When the abolition reaches the couple's award,
the family claims Universal Credit if `would_claim_uc_at_legacy_closure`, and
the claim ends the couple's award; outside claims carry on. From 2027–28
`esa_income_report_closed` closes every report and `legacy_benefits_closed`
moves the family, except for a claim saved for an appointee
(`esa_income_appointee_saving`), which a Universal Credit claim still ends.
Contributory ESA carries on as new style ESA.

All formula readers use the same original claim groups. A scope mask selects
reports; it does not change claimant or partner roles. Claimant-or-partner awards
exclude outside claims, including in Income Support and an alternate benefit-cap
Expand Down
59 changes: 59 additions & 0 deletions policyengine_uk/parameters/gov/dwp/ESA/income/awards_payable.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
description: >-
Whether old style income-related Employment and Support Allowance awards are
still payable (1) or abolished (0). The Secretary of State appointed 1 July
2026 for the Welfare Reform Act 2012 abolition of income-related ESA to
reach every remaining award in Great Britain, and the Department for
Communities appointed 1 October 2026 in Northern Ireland. Two kinds of award escape that date: one
saved for an appointee (esa_income_appointee_saving), and one already due to
end at the end of a two-week run-on, which ends on that schedule instead. A
claimant with a migration notice deadline of 22 June 2026 who makes no
claim keeps the award to 5 July. The model has no claim or deadline dates,
so it pays every unsaved award to the general date. A contributory
allowance in the same award continues as new style ESA. Ordinary
parameters take their 30 April value for a model year, which would leave
2026-27 untouched, so these numeric flags use fiscal_year_blend to take the
day-weighted average from 6 April to 5 April: 2026-27 carries 86 of its 365
days in Great Britain and 178 in Northern Ireland.
great_britain:
description: Whether old style income-related Employment and Support Allowance awards are still payable in Great Britain. SI 2025/1148 art. 3A(1) appoints 1 July 2026 for section 33(1)(b) of the Welfare Reform Act 2012 to come into force for every award it has not yet reached, except an award due to end at the end of a two-week run-on, which ends on that schedule.
values:
2008-10-27: 1
2026-07-01: 0
metadata:
label: Income-related ESA awards payable in Great Britain
unit: /1
period: year
fiscal_year_blend: true
reference:
- title: SI 2025/1148 art. 3A (inserted by SI 2026/409 art. 2(4))
href: https://www.legislation.gov.uk/uksi/2025/1148/article/3A
- title: SI 2026/409, The Welfare Reform Act 2012 (Commencement No. 35) (Abolition of Benefits) (Amendment) Order 2026
href: https://www.legislation.gov.uk/uksi/2026/409/made
- title: SI 2013/983 art. 4(1) (the amending provisions)
href: https://www.legislation.gov.uk/uksi/2013/983/article/4
- title: SI 2014/1230 reg 46(1)(a) (termination two weeks after a migration notice deadline)
href: https://www.legislation.gov.uk/uksi/2014/1230/regulation/46
- title: Welfare Reform Act 2012 s. 33(1)(b)
href: https://www.legislation.gov.uk/ukpga/2012/5/section/33
northern_ireland:
description: Whether old style income-related Employment and Support Allowance awards are still payable in Northern Ireland. SR 2025/176 art. 3A(1) appoints 1 October 2026 for Article 39(1)(b) of the Welfare Reform (Northern Ireland) Order 2015 to come into operation for every award it has not yet reached, except an award due to end at the end of a two-week run-on, which ends on that schedule.
values:
2008-10-27: 1
2026-10-01: 0
metadata:
label: Income-related ESA awards payable in Northern Ireland
unit: /1
period: year
fiscal_year_blend: true
reference:
- title: SR 2025/176 art. 3A (inserted by SR 2026/115 art. 2(4))
href: https://www.legislation.gov.uk/nisr/2025/176/article/3A
- title: SR 2026/115, The Welfare Reform (Northern Ireland) Order 2015 (Commencement No. 18) (Abolition of Benefits) (Amendment) Order (Northern Ireland) 2026
href: https://www.legislation.gov.uk/nisr/2026/115/made
- title: SR 2017/190 art. 6(1) (the amending provisions)
href: https://www.legislation.gov.uk/nisr/2017/190/article/6
- title: Welfare Reform (Northern Ireland) Order 2015 art. 39(1)(b)
href: https://www.legislation.gov.uk/nisi/2015/2006/article/39
metadata:
label: Income-related ESA awards payable
economy: false
31 changes: 21 additions & 10 deletions policyengine_uk/reforms/policyengine/disable_simulated_benefits.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,21 +60,32 @@
# The model's move off legacy benefits (legacy_benefits_closed): once a legacy
# benefit a family reports has closed, DWP's migration notice ends all its
# legacy awards, whether or not the family then claims Universal Credit,
# unless DWP sent it to Pension Credit instead. The reform pays every listed
# benefit, the legacy ones and Universal Credit alike, at its dataset-year
# report in every year, so it moves no family: it holds these false for its
# years. The closure then ends none of the family's legacy benefits (their
# eligibility and the "on" statuses read from it, and Housing Benefit and tax
# credit eligibility), prompts no Universal Credit claim
# (claims_uc_at_legacy_closure) and takes no family off the Pension Credit
# unless DWP sent it to Pension Credit instead. The abolition of
# income-related ESA reaching a family's award (esa_income_abolition_reached)
# likewise prompts a Universal Credit claim from 2026-27. The reform pays
# every listed benefit, the legacy ones and Universal Credit alike, at its
# dataset-year report in every year, so it moves no family: it holds these
# false for its years. The closure then ends none of the family's legacy
# benefits (their eligibility and the "on" statuses read from it, and Housing
# Benefit and tax credit eligibility), neither prompts a Universal Credit
# claim (claims_uc_at_legacy_closure) and no family leaves the Pension Credit
# route. Only the closure is held: the model's other rules still apply, and
# the reform still pays the amounts reported. A family the model has claim
# Universal Credit anyway (would_claim_uc) is still not eligible for Housing
# Benefit or tax credits. An adult outside the couple who reports
# income-based JSA is on it, as their own claim, only in the years the model
# has the scheme open (gov.dwp.JSA.income.active: to 2025).
# Hold the family closure and each separate member's own closure.
NOT_MOVED = ["legacy_benefits_closed", "person_legacy_benefits_closed"]
# has the scheme open (gov.dwp.JSA.income.active: to 2025). One who reports
# income-related ESA is on it in every year, as the reform pays it in every
# year: the abolition closes their report (esa_income_report_closed), but
# _legacy_award_payee.own_report_is_paid uses the reform's held award to
# determine their receipt status, as it does for the claimant and partner.
# Hold the family closure, each separate member's own closure, and the
# abolition's claim.
NOT_MOVED = [
"legacy_benefits_closed",
"person_legacy_benefits_closed",
"esa_income_abolition_reached",
]

# The first year in which the model pays a carer in Scotland Carer Support
# Payment in place of Carer's Allowance: carers_allowance_pre_overlap and
Expand Down
33 changes: 32 additions & 1 deletion policyengine_uk/tests/legacy_award_work_reference.py
Original file line number Diff line number Diff line change
Expand Up @@ -181,10 +181,41 @@ def reports(variable):
return not all(adult["age"] >= 70 for adult in couple)


def esa_abolition_claim(couple, parameters):
"""Whether the claimant and partner claim Universal Credit when the
abolition of income-related ESA reaches their award, which ends their
reports (esa_income_report_closed).

The abolition reaches every remaining award on 1 July 2026 in England
(SI 2025/1148 art. 3A), the households' default country, and no member
here has the appointee saving, so it reaches any award reported in a
year with less than all of it payable. would_claim_uc_at_legacy_closure
keeps its default, true. The conditions are those of the other
working-age closures: no Pension Credit report, and not all pension age.
"""
payable = parameters.gov.dwp.ESA.income.awards_payable.great_britain
reports_award = any(m.get("esa_income_reported", 0) > 0 for m in couple)
on_pension_credit = any(m.get("pension_credit_reported", 0) > 0 for m in couple)
if not reports_award or payable >= 1 or on_pension_credit:
return False
assert all(not 65 <= adult["age"] < 70 for adult in couple), couple
return not all(adult["age"] >= 70 for adult in couple)


def couple_report_closed(couple, reported, parameters):
"""Whether the claimant's and partner's own reports of an award have
closed: their legacy benefits have closed, or, for income-related ESA,
they claim Universal Credit when its abolition reaches the award."""
closed = legacy_benefits_closed(couple, [], parameters)
if reported == "esa_income_reported":
closed = closed or esa_abolition_claim(couple, parameters)
return closed


def candidates(couple, others, reported, parameters):
"""Indexes (into couple + others) of members who could be the claimant."""
members = couple + others
couple_closed = legacy_benefits_closed(couple, [], parameters)
couple_closed = couple_report_closed(couple, reported, parameters)
open_reports = [
member.get(reported, 0) > 0
and not (
Expand Down
Loading
Loading