PolicyEngine / PolicyEngine/policyengine-scorecard
UK compute campaign, run 4: produce the first populace-uk reform_validation.json (activates the #65 UK lane)
Open
@vahid-ahmadi is already working on this.
Since Aug 20, 2026.
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- Avg merge
- 6d 12h
- Merged PRs (30d)
- 32
Description
The country-generalised reform-validation ingest (#65) ships with a deliberately empty UK release map: it activates on the first real reform_validation.json from a managed populace-uk run, and fails loudly until then. This issue produces that artifact.
Steps
- Define the UK battery from what runs 1–3 (#76–#78) verify: every UK comparison row whose status lands
ok/match_*at registration time (mode-1 counterparts, reckoner deltas, OBR costings), each with its executed baseline key per the #71 registry — the US artifact shape, GBP,populace-uk-rv-run prefix. - Producer script on the managed side emitting
reform_validation.jsonper (pe-uk release × certified bundle), engine pins from the release manifest — mirroring the US producer's contract documented iningest_reform_validation.py. - First artifact lands in
sources/populace-reform-validation/raw_uk/, its release id + pin intoCOUNTRIES["UK"]["engine_versions"], ingest, and the app's per-release history view gets its first UK release. - Regression semantics from day one: a row leaving tolerance on a later pe-uk release is a first-class event, not a re-snapshot.
This is what makes the UK scorecard continuous — each pe-uk release (and each fiscal event's parameter update) gets a scored regression record. Depends on #65 merging and #76 running.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.