1{2 "P0": {3 "status": "passed",4 "checks": [5 "TASK.md read fully",6 "contract.md written"7 ],8 "notes": ""9 },10 "P1": {11 "status": "passed",12 "checks": [13 "sha256 of both inputs computed and match README",14 "row/col counts, ranges, missing, duplicates, gaps recorded",15 "monthly->quarterly recomputation consistent",16 "exclusions.csv written and sums to n_analysed"17 ],18 "notes": "see data_audit.md"19 },20 "P2": {21 "status": "passed",22 "checks": [23 "seasonal-naive baseline computed for h=1,2,4 with the same RMSE/MAE rule; stored as rmse_snaive_*/mae_snaive_*"24 ],25 "notes": ""26 },27 "P3": {28 "status": "passed",29 "checks": [30 "analysis.py reads data/ only, deterministic, no RNG (random_seed null)",31 "expanding-window direct seasonal AR with BIC lag selection per origin"32 ],33 "notes": ""34 },35 "P4": {36 "status": "passed",37 "checks": [38 "clean re-run byte-identical",39 "consistency checks 1-14 in checks.md all PASS",40 "leakage perturbation test PASS",41 "gate run 1 receipt out/state/gate_receipts/20261030T042436.955372Z.json: all P4-relevant checks ok (keys, positivity, chronology, exclusion ledger, reproducibility); failures only for P5 deliverables not yet written (report, claims) and non-terminal phase ledger"42 ],43 "notes": ""44 },45 "P5": {46 "status": "passed",47 "checks": [48 "report.md written with 6 required sections, numbers cite results.json keys",49 "claims.json written (C1-C4), keys exist",50 "gate run 2 receipt out/state/gate_receipts/20261030T042512.222192Z.json: PASSED (0 of 57 failed)"51 ],52 "notes": ""53 }54}