Definition of Done

Минимальные критерии завершённости задачи по типам. Задача не переходит в status = 'done' пока не выполнены все пункты.


Research Task DoD

Применяется к: intel.*, research.*, niche.*

Обязательные критерии

#КритерийПроверка
R1Бриф закрыт: question из payload получил ответresult содержит executive_summary или answer
R2Минимум 5 независимых источниковresult.source_count >= 5 или len(result.competitors) >= 5
R3Структурированный отчётresult содержит JSON с expected fields (не raw text)
R4Meta-данные записаныresult._meta содержит {cost_usd, tokens, duration_ms}
R5Confidence указанresult.confidence >= 0 (число, не null)
R6Нет JSON parse failuresresult не содержит "error": "json_parse_failed"

Желательные критерии (enforce после 3.2)

#КритерийПроверка
R7Judge score ≥ 0.6TBD: Judge agent, Week 3.2
R8Source URLs валидныTBD: URL validation tool
R9Нет hallucinated factsTBD: cross-reference check

Failure modes (из Week 3.1)

Типичные причины, по которым research task не проходит DoD:

  • Aggregate JSON truncation (R6 fail) — увеличить max_tokens или chunk input
  • Scout возвращает 0 results (R2 fail) — domain mismatch в framing
  • _meta не записана при failure (R4 fail) — обеспечить _meta даже в error path

Code Task DoD

Применяется к: code.*, refactor.*, fix.*

#КритерийПроверка
C1Тесты пройденыpytest / make test exit code 0
C2Линтер пройденruff check exit code 0
C3Коммит созданgit log содержит коммит с описанием изменения
C4Нет regressionsсуществующие тесты не сломаны
C5Документация обновлена (если API изменился)README или docstrings актуальны

Не требуется для code tasks:

  • 100% test coverage (покрываем critical paths)
  • Документация для internal-only helpers
  • Benchmark/performance тесты (если нет явного требования)

Decision Task DoD

Применяется к: decision.*, архитектурные решения, выбор tooling

#КритерийПроверка
D1ADR создан по Template-ADRфайл в 09-Decisions/
D2Alternatives рассмотрены (минимум 2)ADR содержит секцию Alternatives
D3Decision записан в Decision-Logстрока в таблице Decision-Log
D4Consequences описаныADR содержит секцию Consequences
D5Stakeholder awareNotify или Approve по DecisionRights

Pipeline Task DoD

Применяется к: multi-agent pipeline (CEO → Director → Executors)

#КритерийПроверка
P1Все child tasks завершеныNOT EXISTS (children WHERE status NOT IN ('done','judging','failed'))
P2Aggregate выполненDirector result содержит stage: 'aggregate'
P3Суммарный cost в бюджетеsum(children._meta.cost_usd) <= parent.budget_usd
P4Каждый child прошёл свой DoDResearch children → R1-R6, Code children → C1-C4

Enforcement

Сейчас (MVP)

DoD проверяется вручную через dashboard + meta.json файлы. mark_task_done() ставит status = 'judging' — финальный done после review.

После 3.2 (Judge agent)

Judge agent автоматически проверяет R1-R6 / C1-C4 и выставляет status = 'done' или status = 'failed' + revision instructions.

Note: Until Judge enforcement layer ships, enforcement steps executed manually by Founder + Strategy Claude. Judge-the-agent is operational (running in Navigator/Chamber), Judge-as-governance-enforcer is planned.

Связанные документы