CI Reproducibility Contract
Краткий контракт воспроизводимости локальных CI-gates.
Каноничный источник: этот runbook в angarabook/src/operations/.
Goal
Сделать CI-гейты воспроизводимыми в чистом локальном окружении, чтобы снизить bus factor.
Pinned entrypoint:
tools/ci_pr.sh
Must
- Скрипт явно сообщает о требуемых инструментах.
- Запуски детерминированы там, где это возможно.
- Артефакты сохраняются в стабильные пути под
artifacts/. - Все ключевые гейты доступны через единый entrypoint.
Should
- Иметь container/dev-env вариант запуска.
- Добавить advisory/license gate (
cargo-denyи аналоги), когда это допустимо по сетевой политике.
Non-goals
- Жёсткая привязка к конкретному CI provider.
- Идентичные perf-метрики между разными машинами.
Dogfooding linkage (pilot)
Практический цикл: deploy -> smoke -> workload -> observe -> backup/restore rehearsal -> triage.
Pinned evidence paths (legacy surface):
docs/planning/evidence/archive/legacy-root-20260417/pilot/latest.mddocs/planning/evidence/archive/legacy-root-20260417/pilot/report_v0.md
Дальше
- Testing and validation baseline — какие сценарии должны быть воспроизводимы по этому контракту.
- Golden dataset management — как версии фикстур пиннятся для воспроизводимости.