PolicyEngine / PolicyEngine/policyengine-scorecard

UK UC deductions: external scores staged (FRR, JRF floor, historical cap costings)

Open
#21 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
0
Avg merge
6d 12h
Merged PRs (30d)
32

Description

PolicyEngine UK grew a UC deductions module today (policyengine-uk#1815, linked to policyengine-uk#1814), which opens a new UK comparison family. External claims are harvested, verified against primary sources, and staged at ~/scorecard-harvest/uk_deductions/ (CLAIMS.md = collation; source PDFs/text alongside; every figure page-verified 2026-08-05).

Claim families staged

  1. Fair Repayment Rate (cap 25%→15%, 30 Apr 2025) — HMT AB2024 (1.2m households, £420/yr avg; PSNCR +£385m 2029-30), DWP official statistics Nov 2024 (1.2m families with country splits, 3.0m individuals, May 2024 caseload, OBR-certified methodology), DWP/DfC screening (5,400 losing households, 22k child-maintenance behavioral), Policy in Practice per-household-type maximums.
    • PE comparator already computed (PR #1815, enhanced FRS 2023/24): 0.85m benunits better off, mean annual gain £421 (DWP: £420), £0.36bn/yr deductions reduced.
  2. JRF protected minimum floor — Oct 2024 pre-FRR figures (1.9m families/£48/mo/£150m, JRF's own modelling, no version named) vs Oct 2025 post-FRR figures (IPPR TBM v02_78: 130k out of poverty, 90k families £75/wk, £340m→£380m; £800m with two-child-limit removal).
  3. Historical cap changes — Budget 2018 (40%→30%) and Budget 2020 (30%→25% + 24-month advances) financial-transactions costing lines, year by year. These score directly against PE's dated cap parameter history.
  4. Other — Citizens Advice advances-to-grants costings (£0.75–1.49bn/yr), CPAG/StepChange scale estimates.

Hygiene notes for ingestion

  • Route outturns to Ledger, not external_scores: the DWP deductions statistics (quarterly tables, Stat-Xplore) are the calibration source PE's parameters consume — calibration_relationship: consumed_as_target. PE-vs-those-tables rows are the tautology the boundary rule exists for. The module's parameter provenance cites the March 2025–February 2026 supplementary tables specifically.
  • FRR fiscal claims: benchmark against PSNCR, never PSNB. Verified absences: no FRR line in HMT Table 5.1, the AB2024 policy costings document, or the Oct 2024 OBR EFO. PQ UIN 3751 (Jun 2026) states no PSNB impact and points to the £385m PSNCR figure. A PSNB comparison row would compare against a number that does not exist.
  • JRF floor needs baseline_key discipline: pre-FRR (2024/25) and post-FRR (2025/26) variants differ by an order of magnitude in cost for the same nominal policy. They are different baselines, not a revision.
  • Concept mismatch flag for floor rows: JRF's floor binds on deductions and benefit-cap reductions; post-FRR its bite is mostly benefit-cap interaction. PE's deductions cap alone is not the same reform — a comparable run applies the floor jointly. Until that run exists, floor rows are constructed/concept_mismatch, not comparable.
  • Attribution correction recorded: an earlier session note attributed JRF's Oct 2024 floor to IPPR TBM v01_57 — unverifiable; v02_78 is named only on the Oct 2025 briefing. policyengine-uk#1814 carries the correction.

Not ingesting to the DB from this session (one-writer coordination); this issue + the staged collation are the handoff for the next ingest lane.

🤖 Generated with Claude Code

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ~/scorecard-harvest/uk_deductions/CLAIMS.md and the staged source files, then inspect the scorecard's existing ingestion and external-score entry points. Confirm the FRR PSNCR benchmark, baseline_key distinctions, and floor concept-mismatch rules before deciding what can be ingested; done means the staged claims are routed and classified without tautological calibration rows.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.