7.7 KiB
work_item, stage, author_agent, status, created_at, model_used
| work_item | stage | author_agent | status | created_at | model_used |
|---|---|---|---|---|---|
| ORCH-078 | analysis | analyst | ready-for-review | 2026-06-09 | claude-opus-4-8 |
03 — Критерии приёмки (Acceptance Criteria): ORCH-078 — ORCH-52e: трассировка ORCH-NNN
Work Item: ORCH-078 · Repo: orchestrator · Стадия: analysis
Формат: каждый критерий имеет PASS (что должно быть истинно для приёмки) и FAIL (что считается провалом). Reviewer проверяет их буквально по файлам репозитория.
AC-1 — Стандарт маркеров создан с реальным примером из кода
Условие: в docs/_standards/ существует TRACEABILITY.md с форматом маркера, правилом
размещения и проверяемым примером из реального кода.
- PASS: файл
docs/_standards/TRACEABILITY.mdсуществует; описывает форматORCH-NNN, где ставится (рядом с нетривиальным инвариантом), как читать историю; содержит ≥1 пример, ссылающийся на реально существующие вmainфайлsrc/...+ маркерORCH-NNN+ путьdocs/work-items/ORCH-NNN/06-adr/...(напр.src/serial_gate.py→ ORCH-088 →ADR-001-serial-gate.md). - FAIL: файла нет; нет формата/правила размещения; пример отсутствует или ссылается на несуществующие файл/ADR (нерабочая трассировка).
AC-2 — Правило чтения присутствует в developer и architect
Условие: правило «правишь код с маркером ORCH-NNN → прочитай его 06-adr ПЕРЕД изменением,
не сломай инвариант» присутствует в developer.md и architect.md.
- PASS: оба промпта содержат правило (со ссылкой на
TRACEABILITY.md), сформулированное как правило для чужих маркеров в правимом коде (не просто «реализуй по06-adr/текущей задачи»); developer-формулировка соблюдает формат «❌ X → ✅ Y». - FAIL: правило отсутствует в одном из промптов; либо лишь повторяет 52d-упоминание ADR текущей задачи без сути «читай ADR чужого маркера перед правкой».
AC-3 — Reviewer проверяет соблюдение трассировки
Условие: reviewer.md содержит ось/под-пункт контроля: правка маркированного кода без сверки с
его ADR / со сломом инварианта → finding.
- PASS: reviewer-промпт явно требует проверять сверку правок маркированного (
ORCH-NNN) кода с его06-adr; нарушение даёт finding с severity (≥P1); есть ссылка наTRACEABILITY.md. - FAIL: reviewer не проверяет соблюдение трассировки (правило есть у автора, но никто не контролирует) либо проверка не привязана к severity/finding.
AC-4 — Fallback-доступ задокументирован
Условие: способ git show origin/main:docs/work-items/ORCH-NNN/06-adr/... задокументирован.
- PASS: команда присутствует в
TRACEABILITY.mdи вdeveloper.md(рядом с правилом чтения), с пояснением «когда папки нет в текущей ветке». - FAIL: fallback не задокументирован нигде, либо приведён без контекста применения.
AC-5 — Анти-археология зафиксирована
Условие: конвенция «3+ маркеров в блоке → сводная ссылка на сквозной ADR (docs/architecture/ adr/)» зафиксирована.
- PASS: правило присутствует в
TRACEABILITY.md(с примером, напр.src/merge_gate.py→ ORCH-043/065/071/073 → сквозныеadr-0006/0013/0014/0016) и вarchitect.md. - FAIL: правило отсутствует либо сформулировано без числового порога/без указания на сквозной ADR.
AC-6 — Анти-дубль: 52e не повторяет 52d
Условие: 52e не дублирует уже сделанное в 52d; где смежное поведение есть — ссылается/усиливает.
- PASS: промпты ссылаются на единый текст правила в
TRACEABILITY.md(а не копируют его в каждый); XML-канон 52d (5 секций) и 52c-эмиссия сохранены; нет дословного повтора уже имевшихся 52d-формулировок. - FAIL: правило скопировано дословно в несколько промптов вместо ссылки; либо промпты переписаны целиком (нарушен канон 52d).
AC-7 — Код не изменён; анти-регресс промптов держится; регресс зелёный
Условие: изменены только docs/** и .openclaw/agents/*.md (+ tests-only расширение
структурного теста); src/** не тронут; анти-регресс промптов сохранён.
- PASS:
git diff --name-only origin/mainпоказывает изменения только вdocs/**,.openclaw/agents/*.md,tests/test_agent_prompts_canon.py,CLAUDE.md,CHANGELOG.md(нетsrc/**,STAGE_TRANSITIONS,QG_CHECKS,_parse_*, схемы БД);tests/test_agent_prompts_canon.pyиtests/test_agent_frontmatter_no_model.pyзелёные; machine-verdict ключи (verdict:/result:/staging_status:/deploy_status:/security_status:) сохранены байт-в-байт; полныйpytest tests/ -qзелёный. - FAIL: любой файл
src/**изменён; потерян verdict-ключ/XML-секция/запрет; красный тест.
AC-8 — Сопутствующая документация обновлена
Условие: CLAUDE.md, docs/architecture/README.md, CHANGELOG.md обновлены; есть ADR задачи.
- PASS:
CLAUDE.mdиdocs/architecture/README.mdссылаются наTRACEABILITY.md(слой 4 эпика 52); вCHANGELOG.mdесть запись## [Unreleased]; созданdocs/work-items/ORCH-078/06-adr/ ADR-001-*.md. - FAIL: любой из перечисленных документов не обновлён/не создан (для reviewer: необновлённая
документация при изменении репозитория →
REQUEST_CHANGES).
Сводная матрица AC ↔ FR/BR
| AC | Покрывает |
|---|---|
| AC-1 | BR-1 / FR-1 |
| AC-2 | BR-2 / FR-2, FR-3 |
| AC-3 | BR-3 / FR-4 |
| AC-4 | BR-4 / FR-1, FR-5 |
| AC-5 | BR-5 / FR-1, FR-6 |
| AC-6 | BR-6 / FR-1..FR-4 |
| AC-7 | NFR-1, NFR-2 / FR-8 |
| AC-8 | BR-7 / FR-7 |