5.5 KiB
10 — Технические риски: ORCH-075 (ORCH-52b — стандарт документов)
Work Item: ORCH-075 · Repo: orchestrator · Стадия: architecture
Изменение docs-only (NFR-1): только
docs/**+CLAUDE.md+CHANGELOG.md. Рантайм-рисков деградации прода нет по построению. Основные риски — достоверность манифеста и дрейф стандарта относительно кода.
Реестр рисков
| ID | Риск | Вер. | Влия. | Митигейшн |
|---|---|---|---|---|
| TR-1 | Рассинхрон манифеста с кодом — манифест приписывает доку неверную стадию/гейт/агента или неверный frontmatter-ключ (напр. 12-review → не verdict:). |
Сред. | Сред. (вводит агентов в заблуждение, ложные ожидания) | NFR-2: ground-truth сверен с src/stages.py / src/qg/checks.py / src/stage_engine.py на стадии architecture (ADR-001 §D5, таблица сверки). AC-4 проверяет привязку буквально по файлам. Источник истины остаётся код (D2). |
| TR-2 | Дрейф во времени — будущая правка гейта (ORCH-52c+) не отражается в манифесте, т.к. форсинга нет. | Сред. | Низ. (до 52c — описательный документ) | D2 (источник истины — код, манифест производный); reviewer-правило «обновлена ли документация»; явная привязка строк манифеста к именам check_*; ORCH-52c добавит машинную проверку. |
| TR-3 | Шаблон вводит выдуманную секцию или, наоборот, упускает секцию общего канона эталонов. | Сред. | Низ. | NFR-3: скелеты выведены строго из эталонов ORCH-088/073/089/071 + ORCH-075; TRZ §FR-2.1 фиксирует минимальный обязательный набор секций; AC-2/AC-4 проверяют. |
| TR-4 | Неверный machine-key в шаблоне машинного дока — скопированный скелет уронит гейт ложно (напр. deploy_status написан Deploy-Status/иной регистр). |
Низ. | Выс. (если бы дошло до прода — ложный откат БАГ-8) | Ключи в шаблонах берутся ДОСЛОВНО из _parse_* (deploy_status/staging_status/security_status/verdict/result); парсеры делают .upper() на значении, но имя ключа чувствительно — шаблон фиксирует точное имя. AC-2 проверяет наличие ключа. Гейты при этом не трогаются (docs-only). |
| TR-5 | Коллизия имени файла-шаблона ADR с реальной нумерацией (06-adr/ADR-NNN-…). |
Низ. | Низ. | TRZ §2: имя шаблона ADR без <plane-id>-контекста и вне docs/work-items/ (напр. docs/_templates/06-adr-ADR-NNN-slug.md); внутри фиксируется реальный целевой путь/формат. |
| TR-6 | Шаблоны парсятся гейтами наличия файлов (check_architecture_done / check_analysis_complete ловят docs/_templates/*). |
Оч.низ. | Сред. | D1: служебные каталоги docs/_standards/ / docs/_templates/ лежат ВНЕ docs/work-items/<plane-id>/; гейты сканируют только путь work item → шаблоны структурно невидимы гейтам. |
| TR-7 | Регресс существующих тестов от docs-изменения. | Оч.низ. | Сред. | Изменения не трогают src/; новый тест tests/test_orch_52b_docs_standard.py — только структурные проверки наличия/секций; TC-21 требует зелёного полного pytest tests/. |
| TR-8 | CHANGELOG-конфликт при merge (## [Unreleased] правят параллельные задачи). |
Низ. | Низ. | Корневой .gitattributes CHANGELOG.md merge=union (ORCH-073 FR-4) авто-сливает append-правки без конфликта. |
Сводный вывод
Риск для прод-конвейера (self-hosting) — отсутствует по построению: изменение docs-only,
полностью обратимо (NFR-5), STAGE_TRANSITIONS / QG_CHECKS / check_* / схема БД не затрагиваются
(AC-6). Доминирующий класс рисков — достоверность и дрейф манифеста (TR-1/TR-2); закрыт сверкой
с src/ на стадии architecture (ADR-001 §D5) и принципом «источник истины — код, манифест —
производная». Эскалация arch:major-change не требуется (нет новой стадии/QG/компонента/смены БД).
Возврат в анализ не требуется — ТЗ удовлетворяется без нарушения принципов архитектуры.