# Contract (P0) **Question.** With few clusters, how reliable are cluster-robust 95% CIs for a population mean μ estimated by the sample mean ȳ? **Estimands of the study**, for each of 9 cells (G∈{5,10,30} × ICC∈{0,0.2,0.5}) and procedures CR0, CR1, WCB: (a) actual coverage of the nominal 95% interval (fraction of R=2000 intervals containing μ=0); (b) for CR0/CR1, relative bias E[V̂]/Var(ȳ), with exact Var(ȳ)=[ICC Σn_g² + (1−ICC)N]/N², E[V̂] estimated by MC mean; (c) MC SE of coverage √(p̂(1−p̂)/R); (d) failure regimes: pairs with coverage < 0.90; also "nominal" pairs |p̂−0.95| ≤ 2 MC SE. Assumptions: DGP y=μ+u_g+e_ig, Gaussian, as specified; procedures exactly as in TASK.md (CR0 z=1.96; CR1 t_{G−1}; WCB unrestricted Rademacher bootstrap-t with B=399, critical value = 0.95 empirical quantile of |t*|). **Outputs:** out/table1.csv (27 rows: estimator,cell_id,G,icc,coverage,mc_se_coverage,rel_bias_var[empty for wcb],mean_ci_halfwidth,R); out/results.json (task_id,R,B,n_cells,coverage,mc_se_coverage,rel_bias_var,failure_cells,n_failure_cells,nominal_cells,best_procedure_small_G,feasibility,feasibility_reason,data_issues,n_input_rows,n_analysed,random_seed); out/figure1.png; out/report.md (6 sections); out/analysis.py; out/claims.json. **Information rules:** use only data/design.csv; do not change grid, R, B or seeds; per-cell seed via numpy default_rng(seed). **Invalidity:** changing R/B/grid/seeds, deviating from the procedure formulas, non-deterministic output, runtime >10 min.