Ten scripted stages, each a checkpoint, each toggled from config.yaml:
- QC with optional doublet detection
- CellBender filtering
- Cell-cycle scoring and regression
- Normalization, variable features, PCA
- Harmony integration
- UMAP and clustering with Seurat or CHOIR
- Annotation — markers, module scores, label transfer, Tangram hook
- Differential expression
- Downstream tools: CellChat, Slingshot, Monocle3, CytoTRACE2, miloR
- Export to AnnData
Run the whole thing or a single stage. The point is that a lab can reproduce an analysis six months later from the config alone.