Доска задач
Спринт 14 · 12 задач · фильтр: все агенты
Агрегация: одна задача → три прогона → один PR
relay.codes разбирает одну задачу на параллельные прогоны разных инструментов и сводит их в один результат.
Три агента — три разные подзадачи, а не три копии одного промпта. Claude Code реализует, ChatGPT (Codex) даёт альтернативу и тесты, Grok собирает внешний контекст. Иначе это тройной расход токенов без выигрыша.
TASK-201 · зона app-code · приоритет 95
Реализовать страницу результатов поиска
tsc --noEmit
unit ≥ 80%
a11y: 0 нарушений
bundle −15%
SSR-кеш 60s
SEO: title / description / OG
fan-out · 3 прогона параллельно
изолированные worktree
лимит: 3×$2.50 · 25 мин
лимит: 3×$2.50 · 25 мин
CC
Claude Code
основной исполнитель · рефакторинг, многофайловые изменения
relay/TASK-201/claude-code
+18вставок−4удалений3файла
tsc --noEmit0 ошибок
unit-тесты86%
a11y-нарушения0
bundle−18%
eligible84k токенов · $1.42 · 411s
CX
ChatGPT (Codex)
второй исполнитель и ревьюер · альтернатива, тесты, edge-cases
relay/TASK-201/codex-alt
+31вставок−2удаления2файла
tsc --noEmit0 ошибок
unit-тесты92%
a11y-нарушения0
bundle−9% · вне бюджета
eligible с предупреждением61k токенов · $1.09 · 287s
GX
Grok
исследователь · внешний контекст, семантика, проверка гипотез
research/serp-2026 · без изменений в коде
7фактов2рекомендации0строк кода
—
DoD-гейт кодане применимисточники с проверкой7/7
нет инструкций из вебапроверено
informational12k токенов · $0.21 · 64s
Claude Code · diff
src/features/search/SearchCard.tsxпересечение
src/features/search/page.tsxmerge
src/features/search/query.tsmerge
строки 42–48 менял и Codex
ChatGPT (Codex) · diff
src/features/search/SearchCard.tsxконфликт
src/features/search/SearchCard.test.tsxmerge
+ 7 тестов на edge-cases: пустой результат, длинный запрос, 3 языка
Grok · выводы
SERP-паттерны 2026: быстрые ответы + блок «похожие рейсы»
E-E-A-T: нужен блок условий перевозчика и дата обновления
Structured data: рекомендованы Offer + FlightOffer
в код не идёт — уходит в backlog как 2 задачи
Сведение по правилам
1 PR готов к ревью✓
Авто-merge · 3 файла
page.tsx, query.ts и SearchCard.test.tsx не пересекаются ни с кем — слиты без конфликта, +31/−2.
!
Семантический конфликт · SearchCard.tsx, строки 42–48
Claude Code менял высоту и отступы карточки, Codex — логику пустого результата. Формально разные строки, по смыслу одна зона → ушло Judge'у, а не в merge.
i
Информационный канал · Grok
2 рекомендации (E-E-A-T блок, structured data) не правили код — ушли в бэклог как отдельные задачи со ссылкой на источники.
✓
Отклонено по DoD-гейту
Вариант Codex по bundle (−9% против требуемых −15%) не внесён в слияние; расхождение зафиксировано в отчёте прогона.
Итоговый PR
1
Строк изменено
+49 / −6
Стоимость задачи
$2.72
Цикл (параллельно)
411s
Движок конфликтов
DETECT → CLASSIFY → RESOLVE → LOG → PREVENT. Протокол одинаков для всех типов.
Контракт проекта · версия 7
Читается каждым агентом перед каждой задачей. Изменение — только через гейт.
# .relay/contract.yaml version: 7 project: "Sales Travel — бронирование" goal: "Снизить отказы на шаге оплаты на 30%" non_goals: - "Рефакторинг биллинга" - "Новая партнёрская интеграция" stack: frontend: "Next.js 15 / React 19 / TS" backend: "Node 22 / Fastify / Postgres 16" design_system: "Tokens v3" metrics: - { name: "LCP", target: "< 2.0s", owner: agent:fullstack } - { name: "SEO-трафик", target: "+25% Q", owner: agent:seo } ownership: zone:requirements -> agent:product zone:design-tokens -> agent:design zone:component-spec -> agent:design zone:app-code -> agent:fullstack zone:semantics -> agent:seo zone:acceptance -> agent:qa definition_of_done: code: - "tsc --noEmit" - "unit >= 80%" - "no a11y violations" - "bundle -15% vs baseline" design: - "tokens синхронизированы" - "a11y contrast AA" - "dark theme variant"
Карта владения зонами
Версии контракта
Реестр артефактов
Результат работы агента — версионируемый объект с интерфейсом потребления, а не сообщение в чат.
| Артефакт | Тип | Версия | Владелец | Потребители | Состояние |
|---|
Impact-граф · color.brand.primary v11 → v12
Журнал решений
Спор разрешается фактами из лога, а не памятью агентов.
Метрики экипажа
Считаются автоматически по ленте событий. Baseline зафиксирован в Фазе 0.
Конфликты без человека
72%
цель Фазы 3 — 85%
First-Pass Acceptance
78%
baseline 45%
MTTR конфликта
12 мин
baseline 4 ч
Lead time goal → done
6.4 дн
baseline 9.8 дн
Прогресс по целям
Конверсия оплаты
+8.4%
LCP на результатах
1.9s
Покрытие семантикой
41%
Дизайн-система v3
86%
Покрытие тестами
68%
Стоимость по агентам
| Агент | Задач | Токены | Стоимость |
|---|---|---|---|
| product | 7 | 412k | $38 |
| design | 11 | 286k | $26 |
| fullstack | 14 | 1.02M | $44 |
| seo | 6 | 198k | $19 |
| qa | 9 | 121k | $11 |
Итого $138 · переделки после внедрения RELAY: 2 из 11 задач (baseline 5 из 11).