PolicyEngine / PolicyEngine/macro
OG-UK follow-ups gated on Scorecard comparisons (oguk re-pin, one-process dynamic scoring deferred)
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 3
- Forks
- 0
- Avg merge
- 3m
- Merged PRs (30d)
- 13
Description
Re-scoping the OG-UK follow-ups per Max's steer (2026-08-16): PE model development centers on the Scorecard — compute counterparts to OBR's published scores first, add machinery only when a comparison needs it.
State
- PSLmodels/OG-UK#69 merged 8/3 (
e0ff741): pin lifted topolicyengine-uk>=2.89.2, and the pre-existing MTR bugs fixed (household-normalisation clipping had ~80% of mid-band earners at a 0.000 marginal rate; every OG-UK tax function to date — including the tax functions behind this repo's OG numbers and the #82 overlay factors — was fit on those). No oguk release yet (master still0.3.2; not on PyPI). PSLmodels/OG-UK#70 lifts the now-staleogcore<0.18cap. integration/tests/test_og.pystill describes the old world ("oguk 0.3.0 pins policyengine-uk==2.88.0") and skips the real solve whenever installed PE ≠ 2.88 — that skip is now stale.
Deferred (deliberately)
- Re-pinning oguk to
e0ff741and collapsing the two-environmentog_payloadpipeline into one-process dynamic scoring. - Re-baselining quoted OG numbers.
These get built when PolicyEngine/policyengine-scorecard#55 has an OBR-published claim that an OG-UK counterpart is needed for (labour-supply/FTE effects of NICs cuts etc.), with PE-UK's static LSR answer sitting next to it. Until then the OG arm's correctness fix lives upstream and this repo carries no new OG machinery. Static OBR costings vs PE-UK is PolicyEngine/policyengine-scorecard#54.
Not deferred
- Any OG number currently quoted on the site or in papers that came from pre-#69 tax functions should be marked as such (fit on zeroed MTRs) or removed — a correctness note, not machinery.
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.
Research direction
Start with integration/tests/test_og.py and the State, Deferred, and Not deferred sections of the issue. Check the stale PolicyEngine version assumptions and the pre-#69 OG numbers; completion depends on the Scorecard comparison need, with affected numbers marked or removed and any required OG machinery defined afterward.
Written by the indexing model from the issue text.
Assessment
- Domain
- testing
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100