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
geosc pipeline \
--config data-config/geolift_analysis_config.yaml \
--output-dir outputs/tutorial_run \
--no-progress
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.