Repository navigation
Add protected Housing Benefit family premiums - #2223
Conversation
|
UK hub (Claude session, for Max): this draft passes CI and is mergeable, and Max asked on 22 Oct to clear the UK PR backlog before the Budget. I've queued an independent review of this PR with seven of your other Housing Benefit drafts, and will mark it ready and land it through the merge queue if the review approves at this head. @anth-volk, reply here if you'd like it held or you're still changing it. |
juaristi22
left a comment
There was a problem hiding this comment.
Reviewed at 66281ec93b4172423b8ecb29d324966986bd24f0. No actionable findings from independent policy/source and code reviews of the protected family-premium component.
The GB and NI closure/saved-history provisions support the explicit assessment categories. Current household composition does not establish the historical protection, so the externally assessed input remains necessary.
Validation: 22 focused tests passed. Three final-award cases produce HB of £1790.88, £2438.15 and £2541.24 for NONE, ordinary and historical categories; the £995.80 and £1154.40 premiums reach the award at the 65% taper. The acknowledged historical-assessment coverage boundary and stacked-parent merge order remain.
Conflict in housing_benefit_applicable_amount.py: keep main's child disability premiums (#2221) and main-phase ESA adjustment with this PR's family premium, and the union of both reference lists. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The two pension-regime cases override the eldest claimant's age to 75 without a claimant of that age. Since #2576 the pension-age cutoff reads claimants and partners only, so the fixtures now state that the claimant attained State Pension age before 1 April 2021 (SI 2021/188), as #2221's fixtures do. No expected amount changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Aggregate impact on certified data: passBase Checks: 0 broken by this change, 1 failing on both sides, 0 fixed. Moves flagged for review: 0 (thresholds in Notes
Moves flagged for reviewNone. Spending by benefit and service
Caseloads
Standard reform costings (change in gov_balance)
Standard reforms: change in each reform's target
Household net income by decileNo household's net income changes in any year. No change in any year: receipts by tax head; government balance, each component counted once; model totals; household income totals; population; poverty rates; people in poverty; inequality; mean household net income in each side's own deciles. Checks failing on both base and head (1)
Counted-once checkEach of 88 components was raised by £1 per unit in 2026-27, and every head of its totals was read household by household: its own head must rise by exactly £1, no other tax head may move, no other benefit may rise, and the model's own total must move by what its heads moved. A head that breaks a rule is measured again twice: with every other head held at its baseline value, and with every other head held at its value after the first £1 while the component rises again. It fails where either still shows the response. 0 failed; 0 were skipped.
Provenance
Dataset: Receipts by tax head: head levels
Spending by benefit and service: head levels
Caseloads: head levels
Government balance, each component counted once: head levels
Model totals: head levels
Household income totals: head levels
Population: head levels
Poverty rates: head levels
People in poverty: head levels
Inequality: head levels
Mean household net income in each side's own deciles: head levels
Standard reform costings (change in gov_balance): head levels
Standard reforms: change in each reform's target: head levels
|
The Northern Ireland pension-age fixture now cites SR 2021/70, which inserts the 1 April 2021 cutoff into SR 2006/406 Sch 4 para 1; SI 2021/188 amends only the Great Britain regulations. The Housing Benefit README and the child allowances page now say the applicable amount includes the child disability premiums and the protected family premium, which #2221 and this PR add. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Merge audit (UK hub, Claude Opus 5.5). Landing at head
|
Fixes #2222
Adds the approved protected Housing Benefit family premium: dated ordinary amounts, the separate £22.20 historical lone-parent rate, jurisdiction-specific closure dates and one pre-assessed category. An included child/young person is required. The historical lone-parent amount applies only under the working-age schedule; pension-age cases use the ordinary amount.
The category must establish continuity and all applicable loss-of-protection conditions. Present lone-parent status does not prove pre-1998 protection. Before the closure year, ordinary family eligibility uses existing child facts; from the closure year the category is required because annual data cannot distinguish pre- and post-closure claims. A loss of all included children removes the premium. Missing/NONE input omits protected awards and can understate entitlement; no dataset mapping has been verified.
Government references are in code and beside dated amounts: GB SI 2015/1857 closes new claims on 1 May 2016, while NI SR 2016/310 closes them on 5 September 2016. The saved schedules specify the pre-1998 lone-parent conditions; DWP rates provide ordinary premium history. Future CPI-generated values are projections. The date parameters use the repo's YYYYMMDD numeric convention.
Approved plan C3 only: eight files, one categorical input, no claim-history matrix or Council Tax Reduction change. Within-year changes are not reconstructed.
Validation: 16 new YAML tests passed, including GB/NI, both regulation sets, all categories, loss of child/lone-parent status, pre-closure and closure-year defaults, published rates and a zero-value reform. Initial date-valued YAML attempts failed parsing; numeric date encoding resolves them.
make formatandgit diff --checkpassed. Existing core 3.32.13 environment; no full suite, population simulation or CI polling.Merge dependency: compose after ordinary child and child-disability additions, preserving ESA adjustments in the shared applicable-amount formula.
Since 24 Oct: #2221 merged, and the hub merged main into this branch (
34de644b0). It had one conflict, inhousing_benefit_applicable_amount.py; the formula now adds this PR's family premium to main's child disability premiums (#2221) and main-phase ESA adjustment, and the reference list is the union of both sides. Main still omits the ordinary Housing Benefit child allowances (#2471 documents the deferral), so there is no child allowance to compose with. In the two pension-regime YAML cases the hub also suppliedhousing_benefit_attained_pension_age_before_cutoff: true(dfb2e11dc): those fixtures override the eldest adult's age to 75, but their only person is the default age 40. Since #1913 the pension-age allowance followshousing_benefit_attained_pension_age_before_cutoff, which reads the claimant's and partner's State Pension age dates, so unpinned the cases would read as the post-April-2021 cohort (£238.00 rather than £256.00 a week). #2221's fixtures carry the same pin. No expected amount changed.After the delta review (
1a7e1df93): the Northern Ireland pension-age fixture now cites SR 2021/70, which inserts the cutoff into SR 2006/406 Sch 4 para 1, instead of the Great Britain SI 2021/188. The Housing Benefit parameter README and the child allowances assumptions page now say the applicable amount includes the child disability premiums and the protected family premium. No code or expected amount changed.axiom: TheAxiomFoundation/rulespec-uk#386 queued
The child disability and family premiums extension to rulespec-uk#386, with the law, required outputs and companion tests: TheAxiomFoundation/rulespec-uk#386 (comment) (UK hub, 24 Oct).