{
 "P0": {
  "status": "passed",
  "checks": [
   "TASK.md read fully",
   "contract.md written"
  ],
  "notes": ""
 },
 "P1": {
  "status": "passed",
  "checks": [
   "SHA-256 recorded and match README",
   "row/col counts, ranges, missing, duplicates audited (data_audit.md)",
   "exclusion ledger sums: 319-79=240"
  ],
  "notes": "UNRATE 2025-10 missing, outside window"
 },
 "P2": {
  "status": "passed",
  "checks": [
   "baseline OLS with iid SE computed: se_iid, baseline_ci_iid_*"
  ],
  "notes": ""
 },
 "P3": {
  "status": "passed",
  "checks": [
   "analysis.py reads only data/, deterministic, writes results.json, exclusions.csv, figure1.png"
  ],
  "notes": "no random seed needed"
 },
 "P4": {
  "status": "passed",
  "checks": [
   "clean re-run: results.json byte-identical",
   "CI contains estimate",
   "SEs positive",
   "exclusion ledger sums",
   "independent manual recomputation matches",
   "see checks.md"
  ],
  "notes": ""
 },
 "P5": {
  "status": "passed",
  "checks": [
   "report.md has all 6 sections citing results keys",
   "claims.json keys all exist in results.json"
  ],
  "notes": ""
 }
}