{
  "task_id": "F2-conf-01",
  "required_files": ["out/results.json", "out/report.md", "out/analysis.py", "out/claims.json"],
  "results_keys": {
    "task_id": {"type": "string", "nullable": false},
    "tau_hat": {"type": "number", "nullable": false},
    "se_iid": {"type": "number", "nullable": false},
    "se_cluster": {"type": "number", "nullable": false},
    "p_value": {"type": "number", "nullable": false},
    "tau_ci_low": {"type": "number", "nullable": false},
    "tau_ci_high": {"type": "number", "nullable": false},
    "effect_significant_5pct": {"type": "boolean", "nullable": false},
    "icc_hat": {"type": "number", "nullable": false},
    "n_schools": {"type": "integer", "nullable": false},
    "n_treated_schools": {"type": "integer", "nullable": false},
    "n_analysed": {"type": "integer", "nullable": false},
    "feasibility": {"type": "string", "nullable": false},
    "feasibility_reason": {"type": "string", "nullable": true},
    "data_issues": {"type": "array", "nullable": false},
    "n_input_rows": {"type": "object", "nullable": false},
    "random_seed": {"type": "integer", "nullable": true}
  },
  "report_sections": ["Question", "Data and exclusions", "Method", "Results", "Uncertainty", "Limitations and open issues"],
  "family_checks": ["ci_contains_estimate", "positive_se", "claims_reference_existing_keys", "phase_ledger_consistent", "exclusion_ledger_sums"],
  "ci_pairs": [["tau_hat", "tau_ci_low", "tau_ci_high"]],
  "positive_keys": ["se_iid", "se_cluster"],
  "chronology_pairs": [],
  "analysis_timeout_s": 300,
  "reproducibility_tolerance_rel": 1e-6
}
