Repository Hygiene
DispatchAtlas repository hygiene — what source control tracks, what stays private, and the gates that keep generated outputs, caches, and credentials out of Git.
DispatchAtlas source control contains hand-authored source, tests, configuration, documentation, and reproducible metadata. Local execution products stay outside Git unless a policy explicitly promotes them to source.
🧹 Generated Output Policy
Generated experiment data, checkpoints, result bundles, coverage reports, docs build output, package artifacts, and release candidates are ignored by default. They are regenerated from source and recorded through provenance when later gates promote them.
Tracked generated files require:
- A source owner.
- A regeneration command.
- A retention rationale.
- A review path for stale output.
🗃️ Cache Policy
Local caches from Python, Ruff, mypy, pytest, coverage, documentation builds, and virtual environments are ignored. CI may cache dependencies, but cache keys must derive from lockfiles and workflow inputs.
🔬 Local Experiment Output Policy
Local experiment runs write to the experiments workspace's ignored output
layers — run results, logs, checkpoints, and evidence bundles, as laid out in
the workspace's own README — alongside other ignored scratch locations such
as outputs/ or artifacts/. Final research evidence is produced through
validated campaign and analysis commands before any public use.
📋 Artifact Retention Rules
| Artifact class | Default location | Git status | Retention |
|---|---|---|---|
| Package builds | dist/ | Ignored | Rebuild on demand. |
| Docs build | site/out/ | Ignored | Rebuild on demand. |
| Coverage | htmlcov/, .coverage* | Ignored | Rebuild during quality checks. |
| Smoke outputs | outputs/ | Ignored | Keep locally only when debugging. |
| Campaign results | the experiments workspace's results and checkpoint layers | Ignored | Promote only through provenance-gated exports. |
| Release evidence | artifacts/ | Ignored until approved | Retain by release-candidate policy. |