| name | writing-reports |
| description | Invoke this skill when writing oci-report.md from an executed OCI analysis.
Keywords:
- oci-report.md, actor-critic report
- results.json, analysis spec, analysis plan
- diagnostics: covariate balance, overlap, placebo outcome
- SMD, P1 confounders, propensity scores
- ATE, ATT, ATO estimands
- decision-grade results, diagnostic table
|
- Review only the analysis plan, spec, and results.json. Do not use ground truth when reviewing evals.
- Keep reports short.
Interpreting the plan
- Plan rules scoped to a specific iteration (e.g. "for the first iteration", "for iter_01") bind only that iteration. They are starting conditions for the actor-critic loop, not invariants.
- When reviewing iter_NN with NN > 1, do not flag deviations from first-iteration defaults as compliance issues. Subsequent iterations are graded against (a) results-vs-spec consistency, (b) the diagnostic rules below, and (c) iteration-agnostic plan rules only.
- Iteration-agnostic plan rules (no iteration-scoping phrase) bind every iteration.
- Plan instructions about how to revise on later iterations (e.g. "if diagnostics fail for the ATO, rerun with a higher ATO_THRESHOLD") describe legitimate revisions — do not flag them as deviations.
Fail conditions
- The parameterization in results.json does not match the spec.
- results.json includes no estimands.
- An estimand is missing its estimate, standard error, or 95% confidence interval.
Diagnostics
- Covariate balance: max standardized mean difference (SMD) of P1 confounders must be < 0.2. Otherwise fail.
- Overlap: warn if more than 10% of observations have propensity scores outside (0.1, 0.9).
- Placebo outcome: warn if the treatment effect on the placebo is significant (p < 0.05).
Report structure
- Executive summary: treatment, outcome, dataset, P1 confounders, estimand(s), estimate(s), confidence interval(s).
- Diagnostic table and whether the results are satisfactory.
- Next steps: remedies for failed diagnostics and warnings, unobserved confounders, confirmatory experiments.
Diagnostic table columns
- Estimand: ATE, ATT, or ATO (diagnostics are per-estimand — one row per estimand × diagnostic).
- Diagnostic: Covariate Balance, Overlap, Placebo Outcome.
- Target Result: Max P1 SMD < 0.2, < 10% extreme propensities, no significant effect.
- Actual Result.
- Grade: ✅ Pass, ⛔ Fail, ⚠️ Warning. ⛔ is reserved exclusively for Max P1 SMD > 0.2 (covariate balance) — it is the only blocking failure. Overlap and placebo can only be ✅ or ⚠️ — never ⛔.
Satisfaction (three tiers)
-
Decide one of three labels for the overall analysis and report it in the executive summary:
- fully_satisfactory — every diagnostic is ✅. Results are decision-grade as-is.
- satisfactory_with_caveats — no ⛔, but at least one ⚠️ (overlap and/or placebo). Results are usable but the caveats must be called out, and remedies should still be suggested.
- not_satisfactory — at least one ⛔ (covariate balance failure). Results are blocked from decision use until the balance failure is remedied.
-
The covariate-balance check is the only blocking failure. Overlap and placebo warnings degrade results to "with caveats" but never block.
-
If any diagnostic fails or warns, invoke the suggesting-remedies skill.