model 07 — ecological stock-flow consistent · define-uk · UK · experimental
Validated to the ceiling the publications allow.
The manual's macro block replicates; the emissions path diverges and is pinned; scenario switch sets are design-gated; the calibration gap to official data is computed. Deltas only, never levels.
The replication gates, check by check.
Everything below is recorded in the adapter repository's
VALIDATION.md
and enforced by tests against the cached pinned run (upstream commit
846081a), so drift fails loudly rather than silently.
| what is checked | tolerance | status |
|---|---|---|
| Manual Table 4, macro block — real GDP growth, unemployment, population 16+, labour force at 2025/2030/2040, S1 baseline | population and labour force ±0.01m; growth ±0.31pp; unemployment ±0.2pp | PASS (2026-08-04) — growth exact at 2030/2040, −0.30pp at 2025 |
| Manual Table 4, total emissions, S1 baseline | gated at the observed ratios so further drift fails | DIVERGENCE — pinned; see below |
| Scenario design — each cached scenario toggles exactly the policy switches its published description claims | exact flag set per scenario; HOUSING_SUB_RATE=0.4 pinned |
PASS (2026-08-05, 10 tests) |
| FMM-2023 anchors — green public investment GDP peak; baseline 2030 emissions | wide (pre-1.0 vintage): GDP peak 0.7–1.3%; emissions 330–352 MtCO2e | PASS — peak +0.92% vs published ≈+1%; 342.8 vs “just under 350” |
| Published numeric scenario results for v1.1 | — | CLOSED at the achievable ceiling — none exist; see below |
| Clean-room reimplementation, milestone 1 — §2.2 transactions and balance-sheet matrices on the §5 initial values | manual's 4-significant-figure printing precision | PASS (2026-08-04, 27 identity tests) |
| Calibration vs external observations (ONS/DESNZ/OBR) | computed and regression-tested, not tolerance-gated | COMPUTED — gaps are material; see the table below |
The baseline against official numbers, computed not prose.
Since 2026-08-05 this comparison is an artifact, not a paragraph:
define_uk.validation.baseline_calibration() recomputes
every row from the cached pinned run against pinned external
observations, the result is committed as
validation/baseline_vs_external.csv,
and the test suite fails on any drift between the committed table and
a recomputation. Values use the annual-mean convention, so 2025
growth reads 4.66% where Table 4 prints 4.96% — the same
−0.30pp anchoring gap recorded under the Table 4 gate.
| quantity | model | external | verdict |
|---|---|---|---|
| Real GDP growth, 2025 | 4.66% y/y | 1.31% y/y | Far above outturn — never a forecast |
| Real GDP growth, mean 2025–40 | 2.4% y/y | ≈1.65% y/y | High vs official long-run |
| Unemployment, 2025 | 4.39% | 4.88% | Below outturn by ≈0.5pp |
| Population 16+, 2025 | 55.66m | ≈56m | Consistent |
| Labour force, 2025 | 35.97m | ≈34.5m | Slightly high |
| Total emissions, 2024 | 401.5 MtCO2e/yr | 371 MtCO2e/yr | Above the actuals it should start from |
| Emissions, 2030, vs NDC path | 342.8 MtCO2e/yr | ≈260 MtCO2e/yr | Short of the NDC by design — current-policies baseline |
external sources, row by row: ONS quarterly national accounts (uk_gdp_cvm vintage 2026-07-26; 2025 calendar-year mean over 2024) and OBR March 2026 EFO near-term 1–2%; OBR long-run growth assumption ≈1.5–1.8%; ONS MGSX (vintage 2026-07-26; 2025 annual mean, matching the model column's annual-mean convention); ONS 16+ population estimate; ONS labour force ≈34–35m; DESNZ UK territorial greenhouse gas emissions, 2024 provisional (2023 final: 384); UK NDC of 68% below 1990 by 2030 — the manual itself notes the current-policies baseline falls short by design.
The implication drives the product: near-term baseline levels are not competitive with the OBR emulator or the BoE SVAR and must never be presented as forecasts. The manual says the baseline “should not be seen as a prediction”; we take that literally. The defensible outputs are scenario deltas, with the demand-led caveat stated.
The fiscal multiplier, stated honestly.
Our own computation of the model's cumulative green-public-investment multiplier — cumulative ΔGDP over cumulative ΔSPEND_GVT, nominal, over the full simulation — is 1.78. IMF estimates of green-spending multipliers run 1.1–1.5 (Batini et al. 2021); the OBR's capital-spending impact multiplier is ≈1.0. Above but near the IMF range, as the demand-led closure predicts, and labelled accordingly wherever a delta is served.
The upstream repository's own Multiplier_Summary.csv is
documented unusable: its multiplier columns are
identical across all eight scenarios, and its ΔG figure matches the
cumulative delta of no variable in the scenario file. It is never
quoted; a previously circulated ≈2.4 derived from it should not
be either. Our computation supersedes it and is pinned in the test
suite.
The emissions path diverges from the published table.
The one open divergence: the pinned upstream code runs below the manual's published Table 4 emissions, and the gap widens with horizon.
| year | pinned run | published table | gap |
|---|---|---|---|
| 2025 | 393 | 407 | −3.5% |
| 2030 | 343 | 382 | −10% |
| 2040 | 249 | 324 | −23% |
846081a) against the published Table 4. The gap widens from −3.5% in 2025 to −23% in 2040 and is gated at the observed ratios. Source: validation/figures/data/define_emissions_divergence.csv, from the adapter repository's VALIDATION.md.
This is not an extraction error: the components
(EMIS_NELEC + EMIS_ELEC) sum
exactly to the total, and the baseline is identical across scenario
folders — so it is a vintage or calibration gap between the published
table and commit 846081a. The divergence is gated at the
observed ratios so any further drift fails loudly, and it has been
raised with the authors on the upstream issue tracker
(DEFINE-model/DEFINE_UK_1.1#1).
No numeric v1.1 scenario results are published. That is the ceiling.
What is verifiable is verified, at three levels. The design gate pins that each scenario toggles exactly its published policy switches. The oracle gates pin the delta paths against the cached pinned run — deltas finite, baselines identical across scenario blocks, sign sanity, eleven pinned delta points. And the two figures the paper's open 2023 conference vintage states in text both anchor, within deliberately wide vintage tolerances: green public investment peaks at +0.92% of GDP against a published ≈+1%, and the 2030 current-policies baseline emits 342.8 MtCO2e/yr against “just under 350”.
The upgrade path is equally explicit: the gate reopens if the authors publish scenario tables, or if the paywalled papers become accessible. Until then the status label stands — experimental; partial replication; scenario deltas only, never levels — and the score a reform workflow does not accept this model.