{
 "P0": {
  "status": "passed",
  "checks": [
   "contract.md written covering question, estimands, outputs, info rules, invalidity conditions"
  ],
  "notes": ""
 },
 "P1": {
  "status": "passed",
  "checks": [
   "SHA-256 matches README/bundle",
   "417 rows x 7 cols, no duplicate/gap months",
   "missing values: neworder_chg 1992-01/02 only",
   "outliers identified",
   "exclusions.csv sums to n_analysed"
  ],
  "notes": "see data_audit.md"
 },
 "P2": {
  "status": "passed",
  "checks": [
   "naive and expanding-mean baselines computed over same 60 origins: rmse_naive, rmse_mean in results.json"
  ],
  "notes": ""
 },
 "P3": {
  "status": "passed",
  "checks": [
   "analysis.py runs and writes results.json/forecasts.csv/exclusions.csv",
   "no random components (random_seed null)"
  ],
  "notes": ""
 },
 "P4": {
  "status": "passed",
  "checks": [
   "verify.py all PASS",
   "clean rerun byte-identical",
   "leakage test PASS",
   "gate run 20261030T041144.120435Z: all P4-relevant checks ok (keys, reproducibility, exclusion ledger, chronology); failures only for P5 artifacts not yet written (report, claims, phase terminal)"
  ],
  "notes": "gate receipt out/state/gate_receipts/20261030T041144.120435Z.json"
 },
 "P5": {
  "status": "passed",
  "checks": [
   "report.md written with 6 sections citing results keys",
   "claims.json written (5 claims, all keys exist)",
   "final gate run (see notes)"
  ],
  "notes": "final gate receipt out/state/gate_receipts/20261030T041216.641142Z.json: PASSED 38/38"
 }
}