- | Question class | What a specific family pays and receives; distributional effects | Selected near-term UK fiscal and macro scenarios | What drove the UK economy at the latest model-data vintage; short-run forecasts and revision narratives | US macro dynamics: monetary and fiscal shocks, quarter by quarter | Distributional transmission of stylized US shocks: who responds, by wealth | Long-run incentives: labour supply, saving, the capital stock over decades | UK climate-policy scenario paths — macrofinancial and environmental — once the replication is validated; nothing quotable today |
- | Method | Static tax-benefit microsimulation — direct rule evaluation, no behavioural response | Structural macroeconometric emulator — Gauss–Seidel over 372 equations per quarter | Bayesian structural VAR — posterior sampling with zero + sign restrictions naming the shocks | Large-scale macroeconometric model — 284 equations solved under VAR expectations | Two-asset HANK (Auclert et al. 2021) — first-order sequence-space impulse responses | Dynamic general equilibrium (OLG) — steady-state root-find and transition-path iteration | Ecological stock-flow consistent (E-SFC) — Dafermos, Nikolaidi et al.; upstream R code run unmodified at a pinned commit |
+ | Question class | What a specific family pays and receives; distributional effects | Selected near-term UK fiscal and macro scenarios | What drove the UK economy at the latest vintage; short-run forecasts | US macro dynamics: monetary and fiscal shocks, quarter by quarter | Distributional transmission of stylized US shocks: who responds, by wealth | Long-run incentives: labour supply, saving, the capital stock over decades | UK climate-policy scenario deltas — nothing quotable today |
+ | Method | Static tax-benefit microsimulation — direct rule evaluation, no behavioural response | Structural macroeconometric emulator — Gauss–Seidel over 372 equations per quarter | Bayesian structural VAR — posterior sampling with zero and sign restrictions | Large-scale macroeconometric model — 284 equations solved under VAR expectations | Two-asset HANK (Auclert et al. 2021) — first-order sequence-space impulse responses | Dynamic general equilibrium (OLG) — steady-state root-find and transition-path iteration | Ecological stock-flow consistent (E-SFC) — upstream R code run unmodified at a pinned commit |
| Country | UK & US | UK | UK | US | US | UK (OG-UK) | UK |
- | Data vintage | UK & US statute; enhanced FRS 2023–24 microdata for UK population runs | OBR Economic and Fiscal Outlook, March 2026 | ONS, BoE and FRED series — coefficients estimated through 2025Q1; conditioned through the 2026Q1 data edge | The Fed's model.xml and LONGBASE database, April 2026 | The published Econometrica 2021 calibration; no data vintage | ONS, OBR and BoE national accounts as calibration targets; OG-UK 0.3.2 (from GitHub) | UK national accounting data (upstream calibration); DEFINE-UK 1.1, April 2026, pinned commit 846081a |
- | Evidence class (numbers →) | Deterministic rule calculation; population estimates add survey uncertainty | Validated for selected scenarios; published anchor is not out-of-sample validation | Validated replication for selected outputs | Validated software replication; substantive comparisons are approximate | Validated replication of published results; not a forecaster; distributional outputs are first-order approximations | Research prototype; calibrated counterfactual with no ground truth | Partial replication — baseline macro block replicates manual Table 4; scenario deltas design-gated against the published scenario definitions plus two coarse paper anchors (no numeric scenario results are published); emissions vintage divergence pinned and queried with the authors |
+ | Data vintage | UK & US statute; enhanced FRS 2023–24 microdata for UK population runs | OBR Economic and Fiscal Outlook, March 2026 | ONS, BoE and FRED — estimated through 2025Q1, conditioned to the 2026Q1 edge | The Fed's model.xml and LONGBASE database, April 2026 | The published Econometrica 2021 calibration; no data vintage | ONS, OBR and BoE aggregates as calibration targets; OG-UK 0.3.2 | DEFINE-UK 1.1, April 2026, at pinned commit 846081a |
+ | Evidence class (numbers →) | Deterministic rule calculation; population estimates add survey uncertainty | Validated for selected scenarios; published anchor is not out-of-sample validation | Validated replication for selected outputs | Validated software replication; substantive comparisons are approximate | Validated replication for stylized shocks; not a forecaster; responses are first-order | Research prototype; calibrated counterfactual with no ground truth | Partial replication — the macro block replicates manual Table 4; scenario deltas are design-gated, as no numeric scenario results are published |
| Microsim connection | Is the microsimulation — every bridge starts or ends here | Static costing in, macro feedback out — score_reform via HHDI_ADDFACTOR | CPI path → benefit-uprating incidence (svar_inflation_incidence, experimental) | Wage/hours path → employment-income incidence (frbus_shock_incidence, experimental) | Wage/labor IRFs → employment-income incidence (hank_shock_incidence, experimental) | Two-way: statute in via PE tax functions; long-run changes back into a second microsim run (og+microsim) | Scenario income deltas → employment-income incidence (define_scenario_incidence, experimental; hosted via define_payload) |
- | Reform scoring | Yes — a PolicyEngine parameter + a new value, applied directly to households | Yes — shocks to exogenous model variables; static-costing bridge from PolicyEngine reforms | No — the baseline/conditioning member: it reads the economy reforms are scored against | No — shock experiments only (funds-rate or fiscal shocks under VAR expectations); score_reform refuses model="frbus", as no PolicyEngine reform bridge exists | No — stylized shocks only (monetary, fiscal spending, productivity); the labor tax is endogenous, so score_reform refuses model="hank" | Yes — a PolicyEngine policy translated into estimated tax functions | No — no reform bridge; score_reform will not accept it |
- | Out of scope | GDP, inflation, interest rates, or macro feedback | Arbitrary reform incidence or borrowing through the current adapter | The causal effect of a specific statutory reform | PolicyEngine reform effects, anticipated-policy paths, or MCE scenarios | Forecasts, detailed tax reforms, or nonlinear/state-dependent dynamics | A short-run forecast or independently validated reform effect | Any quotable number today; forecasts; reform scoring; microsimulation incidence (planned, post-validation) |
- | Run surface | Hosted | Hosted (CLI, MCP, Python API) | Hosted (CLI, MCP, Python API) | Hosted (CLI, MCP, Python API) — raw shocks only | Hosted (CLI, MCP, Python API) — stylized shocks only | Local only | Local CLI (pe-macro define-scenario, deltas only); hosted MCP tools return run instructions |
- | Typical runtime | Sub-second per household; minutes for population runs | Seconds to minutes per scenario | Minutes per full estimation + identification run | Seconds to minutes per simulation | ~18s cold per variant (cached); instant warm | ~17+ min per steady-state solve (two per score); hours for transition paths | Instant from the cached pinned run; a fresh upstream run takes tens of minutes in R 4.3 (151 output files across four scenario blocks) |
+ | Reform scoring | Yes — a PolicyEngine parameter + a new value, applied directly to households | Yes — shocks to exogenous model variables; static-costing bridge from PolicyEngine reforms | No — the baseline/conditioning member: it reads the economy reforms are scored against | No — shock experiments only; no reform bridge, so score_reform refuses model="frbus" | No — stylized shocks only; the labor tax is endogenous, so score_reform refuses model="hank" | Yes — a PolicyEngine policy translated into estimated tax functions | No — no reform bridge; score_reform will not accept it |
+ | Out of scope | GDP, inflation, interest rates, or macro feedback | Arbitrary reform incidence; borrowing; capital spending (CGIPS is dead) and corporation tax (TCPRO never converges) | The causal effect of a specific statutory reform | PolicyEngine reform effects, anticipated-policy paths, or MCE scenarios | Forecasts, detailed tax reforms, or nonlinear/state-dependent dynamics | A short-run forecast or independently validated reform effect | Levels, forecasts, reform scoring; microsimulation incidence (planned, post-validation) |
+ | Run surface | Hosted | Hosted (CLI, MCP, Python API) | Hosted (CLI, MCP, Python API) | Hosted (CLI, MCP, Python API) — raw shocks only | Hosted (CLI, MCP, Python API) — stylized shocks only | Local only | Local CLI (pe-macro define-scenario); hosted MCP tools return run instructions |
+ | Typical runtime | Sub-second per household; minutes for population runs | Seconds to minutes per scenario | Minutes per full estimation + identification run | Seconds to minutes per simulation | ~18s cold per variant (cached); instant warm | ~17+ min per steady-state solve (two per score); hours for transition paths | Instant from the cached pinned run; a fresh upstream run takes tens of minutes in R 4.3 |
@@ -237,12 +237,9 @@