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 "SHA-256 matches README",14 "schema/missing/duplicates/gaps audited",15 "yoy recomputation check",16 "exclusions.csv sums to n_analysed"17 ],18 "notes": "COVID training exclusion pre-specified"19 },20 "P2": {21 "status": "passed",22 "checks": [23 "naive = gdp_yoy(t-2) computed for 48 origins x 2 horizons; rmse/mae_naive keys written"24 ],25 "notes": ""26 },27 "P3": {28 "status": "passed",29 "checks": [30 "analysis.py reads only data/, deterministic, no RNG",31 "in-loop asserts on info rules"32 ],33 "notes": ""34 },35 "P4": {36 "status": "passed",37 "checks": [38 "clean re-run byte-identical",39 "chronology checks",40 "row counts",41 "positive RMSE",42 "exclusion ledger sums"43 ],44 "notes": "see checks.md"45 },46 "P5": {47 "status": "passed",48 "checks": [49 "report has 6 required sections",50 "claims reference existing results keys (verified)",51 "numbers in report copied from results.json"52 ],53 "notes": ""54 }55}