End-to-End Synthetic Study
This tutorial uses the repository’s synthetic panel to exercise all three stages and their explicit hand-offs.
1. Inspect the stage configs
The pipeline requires three canonical filenames in one directory:
power_analysis_config.yaml;donor_eval_config.yaml;geolift_analysis_config.yaml.
Confirm that all three identify the same outcome, geography universe, treatment units, and launch date. The key names differ by stage; use the stage-specific configuration reference.
2. Run the pipeline
The command runs power, donor evaluation, and inference independently. It then summarises their artefacts. It does not feed recommended donors into inference.
3. Review the design outputs
Open multicell_power_analysis/power_analysis_results.csv. Retain only rows
where valid is true. MDE is the smallest tested effect_size that reaches
target_power for a duration; it is grid-based and conditional on the simulated
DGP.
Open multicell_donor_eval/donor_pool_quality.json. Treat
quality_assessment: "INSUFFICIENT", incomplete metrics, dominant recommendation
weights, or poor overlap as redesign signals.
4. Review inference
Open multicell_geolift_analysis/geolift_results.json. The primary estimate is
the unscaled post-period average effect (att). The top-level p_value is the
two-sided in-space placebo p-value for that average effect. Scaled quantities
remain diagnostics and must not be combined with the unscaled interval.
5. Record the hand-off
If the donor screen changes eligibility, materialise a new panel containing the treated units and approved donors. Rerun power and inference on that same panel. Record the input hash, configs, exclusions, software version, and random seeds.