Files
orchestrator/docs/work-items/ORCH-078/04-test-plan.yaml

99 lines
4.8 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
work_item: ORCH-078
stage: analysis
author_agent: analyst
status: ready-for-review
created_at: 2026-06-09
model_used: claude-opus-4-8
title: "ORCH-52e: трассировка ORCH-NNN — стандарт маркеров + правило чтения"
framework: pytest
scope: >
Покрытие — структурные текстовые проверки (без запуска агентов, без импорта src/):
наличие и содержание docs/_standards/TRACEABILITY.md, присутствие правила чтения в
developer/architect, контроль соблюдения в reviewer, fallback-доступ, анти-археология,
анти-регресс промптов 52d. Вне покрытия — массовый ретро-фит маркеров в src/ и любое
поведение кода (src/** не меняется).
notes: >
Тесты — расширение существующего tests/test_agent_prompts_canon.py (tests-only; src/ не
трогается, что согласуется с AC-7). Проверки текстовые (open()+read() по файлам репозитория),
как и канон 52d. test_agent_frontmatter_no_model.py остаётся зелёным. Полный регресс
pytest tests/ -q должен оставаться зелёным.
tests:
- id: TC-01
type: unit
description: "docs/_standards/TRACEABILITY.md существует и непустой (AC-1)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-02
type: unit
description: "TRACEABILITY.md описывает формат маркера ORCH-NNN и правило размещения рядом с нетривиальным инвариантом (AC-1)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-03
type: unit
description: "TRACEABILITY.md содержит реальный пример: ссылается на существующий путь src/...py и на существующий docs/work-items/ORCH-NNN/06-adr/...md (AC-1)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-04
type: unit
description: "TRACEABILITY.md документирует fallback-доступ git show origin/main:docs/work-items/... (AC-4)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-05
type: unit
description: "TRACEABILITY.md документирует анти-археологию: порог 3+ маркеров → сводная ссылка на сквозной ADR docs/architecture/adr/ (AC-5)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-06
type: unit
description: "developer.md несёт правило чтения чужого маркера + ссылку на TRACEABILITY.md + fallback git show origin/main: (AC-2, AC-4)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-07
type: unit
description: "architect.md несёт правило чтения маркированного кода + анти-археологию (3+ → сквозной ADR) + ссылку на TRACEABILITY.md (AC-2, AC-5)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-08
type: unit
description: "reviewer.md несёт ось контроля: правка маркированного кода без сверки с ADR → finding (AC-3)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-09
type: unit
description: "АНТИ-РЕГРЕСС 52d: 5 XML-секций и 6 полей 52c-схемы присутствуют во всех 6 промптах (NFR-2)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-10
type: unit
description: "АНТИ-РЕГРЕСС 52d: machine-verdict ключи сохранены байт-в-байт (verdict:/result:/staging_status:/deploy_status:/security_status:, точный регистр и наборы значений) (NFR-2)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-11
type: unit
description: "frontmatter промптов остаётся валидным без ключа model: (повторно зелёный) (NFR-2)."
module: tests/test_agent_frontmatter_no_model.py
expected: PASS
- id: TC-12
type: unit
description: "CLAUDE.md и docs/architecture/README.md ссылаются на docs/_standards/TRACEABILITY.md как слой 4 эпика 52 (AC-8)."
module: tests/test_agent_prompts_canon.py
expected: PASS
- id: TC-13
type: integration
description: "Полный регресс pytest tests/ -q зелёный; src/ не изменён (поведение кода идентично) (AC-7)."
module: tests/
expected: PASS