{
 "P0": {
  "status": "passed",
  "checks": [
   "contract.md written covering question, estimands, outputs, rules, invalidity"
  ],
  "notes": ""
 },
 "P1": {
  "status": "passed",
  "checks": [
   "sha256 recorded",
   "field-count audit: 1164 x5, 36 malformed",
   "sale_id uniqueness/format checked",
   "dates/prices/areas parsed and ranged",
   "municipality counts vs control: shortfall sums to 36"
  ],
  "notes": ""
 },
 "P2": {
  "status": "passed",
  "checks": [
   "baseline = control totals n_records_control/sum_price_control recorded in results.json"
  ],
  "notes": ""
 },
 "P3": {
  "status": "passed",
  "checks": [
   "analysis.py runs, reads only data/, writes results.json/analytic.csv/exclusions.csv; no randomness (random_seed null)"
  ],
  "notes": ""
 },
 "P4": {
  "status": "passed",
  "checks": [
   "clean re-run byte-identical",
   "12 consistency checks PASS (out/state/checks.md)",
   "gate run 20261030T050004.422028Z: all results/reproducibility/exclusion checks ok; failures only P5 deliverables (report, claims, phase ledger) not yet written"
  ],
  "notes": "gate receipt out/state/gate_receipts/20261030T050004.422028Z.json"
 },
 "P5": {
  "status": "passed",
  "checks": [
   "report.md with 6 sections, keys cited",
   "claims.json 6 claims",
   "final gate run (see notes)"
  ],
  "notes": "final gate receipt out/state/gate_receipts/20261030T050028.102786Z.json: PASSED 0/32 failed"
 }
}