72 lines
5.0 KiB
Markdown
72 lines
5.0 KiB
Markdown
---
|
||
type: review
|
||
work_item_id: ORCH-075
|
||
verdict: APPROVED
|
||
version: 1
|
||
---
|
||
|
||
# Review ORCH-075 — ORCH-52b: стандарт документов конвейера
|
||
|
||
## Summary
|
||
Docs-only задача: создан golden source структуры номерных документов (`docs/_standards/PIPELINE_DOCS.md`),
|
||
15 копируемых шаблонов (`docs/_templates/*`), зафиксирована конвенция ADR-naming, заведён сквозной
|
||
ADR `adr-0019`, обновлены точки-ссылки (CLAUDE.md, architecture/README.md, CHANGELOG.md).
|
||
Манифест и шаблоны **сверены с фактическим кодом** — соответствие подтверждено. Все 7 критериев
|
||
приёмки выполнены. P0/P1/P2 findings нет → **APPROVED**.
|
||
|
||
## Оси проверки
|
||
|
||
### 1. Соответствие ТЗ (02-trz.md)
|
||
- FR-1 (манифест) — таблица покрывает весь реальный набор `00/01/02/03/04/06/07/08/10/12/13/14/15/16/17`,
|
||
колонки владелец/категория/стадия/гейт/machine-key присутствуют. ✓
|
||
- FR-2 (шаблоны) — все 15 шаблонов созданы; секции совпадают с FR-2.1 (спот-чек 01-brd, 02-trz,
|
||
06-adr, 04-test-plan). ✓
|
||
- FR-3 (ADR-naming) — §4 фиксирует путь, `ADR-NNN-<kebab-slug>`, связь с глобальным реестром, примеры. ✓
|
||
- FR-4 (точки-ссылки) — CLAUDE.md (раздел «Артефакты задачи» + правило 2), README §«Стандарт
|
||
документов конвейера», CHANGELOG `## [Unreleased]` (`docs`-тип). ✓
|
||
|
||
### 2. Соответствие ADR (06-adr/ADR-001 + adr-0019)
|
||
- D2 «манифест документирует, источник истины — код» отражён в самом манифесте (блок «Статус истины»). ✓
|
||
- D5 ground-truth сверка соответствует тому, что реально читает код (проверено независимо). ✓
|
||
- Стандарт следует собственной конвенции (заведён `adr-0019`). ✓
|
||
|
||
### 3. Качество кода (docs-only) — сверка с `src/`
|
||
Независимо подтверждено по источнику истины:
|
||
- `STAGE_TRANSITIONS` (`src/stages.py`) — рёбра и exit-гейты совпадают с манифестом 1:1.
|
||
- Frontmatter-ключи совпадают с парсерами: `verdict:`→`check_reviewer_verdict`; `result:`/`verdict:`/
|
||
`status:`→`_parse_tests_verdict`; `deploy_status:`→`_parse_deploy_status`; `staging_status:`→
|
||
`_parse_staging_status`; `security_status:`→`check_security_gate`/`security_gate.py`.
|
||
- `check_analysis_complete` (01/02/03/04) и `check_architecture_done` (06-adr ≥1 файл ИЛИ 07-infra) —
|
||
формулировки манифеста точны.
|
||
- Под-гейты ребра `deploy-staging→deploy` корректно помечены как врезки в `advance_stage`, не строки
|
||
`STAGE_TRANSITIONS` (AC-7).
|
||
- AC-6: `git diff` по `src/` пуст — код/гейты/схема БД не тронуты.
|
||
|
||
### 4. Качество тестов
|
||
`tests/test_orch_52b_docs_standard.py` — 20 содержательных структурных тестов (наличие манифеста,
|
||
покрытие всех доков, владельцы/категории, frontmatter-ключи каждого машинного шаблона, ADR-naming
|
||
против реального репо, валидность YAML тест-плана, точки-ссылки, CHANGELOG). Прогон: **20 passed**.
|
||
|
||
## Findings
|
||
|
||
### P0 — Blocker
|
||
- нет
|
||
|
||
### P1 — Must fix
|
||
- нет
|
||
|
||
### P2 — Should fix
|
||
- нет
|
||
|
||
### P3 — Nice-to-have
|
||
- [ ] В `06-adr/ADR-001` §D4 формулировка «реестр идёт до `adr-0018`» описывает состояние ДО добавления
|
||
текущего `adr-0019` (что верно), тогда как `PIPELINE_DOCS.md` §4 говорит «доходит до `adr-0019`».
|
||
Несоответствие безвредно (разные срезы времени), правка не требуется.
|
||
|
||
## Документация
|
||
Это docs-only задача — документация **является** деливерейблом. `src/` не изменён, поэтому правило
|
||
CLAUDE.md «изменил src → обнови доку» неприменимо в блокирующем смысле. Сама документация проверена на
|
||
достоверность против кода (`src/stages.py`, `src/qg/checks.py`, `src/security_gate.py`) и эталонных
|
||
доков — расхождений нет. Точки-онбординга (CLAUDE.md, architecture/README.md) и CHANGELOG обновлены.
|
||
Статус документации: **полностью обновлена и верифицирована**.
|