temporality
Изменить страницу↗
Инженерные документы

Ревизия планов: что не реализовано (2026-10-16)

Полная ревизия «план → код» по шести направлениям (секреты, артефакты, знания/навыки, каналы/intake/триггеры/саги, платформа агентов, хвосты ROADMAP). Доказательства — файл:строка по дереву e02b638.

#В работе (волна фиксов, октябрь 2026)

  1. ✅ Согласование артефактов (сделано): решение матчится с записями согласующих через профиль принципала (MatchArtifactReviewers) — групповые записи (org:/role:/project_owner) решает любой активный участник, решение хранится под записью с decided_by; правка approved теперь 409 (SaveArtifactEdit), а не молча снимает статус; кнопка правки в UI заблокирована.
  2. ✅ Event-триггеры (сделано): слушатель журнала (cmd/agent-kernel/eventtriggers.go) — хвост журнала с курсором journal:events, срабатывание только на пост-активационных событиях (без переигрывания истории), идемпотентность по (trigger, event), анти-цикл на события триггерных ранов, без event-триггеров журнал не читается. Конструктор: event_type + фильтры actor_id/actor_type/project/data.<поле> (валидация на сохранении, неизвестные ключи — 422) + промпт; UI-форма с подсказками типов и чипами фильтров. Контракт: docs/triggers-and-escalations.md §1.
  3. ✅ kernel/probe (решено — удалён): пробы нерабочие по предпосылкам — FileProbe ждал > отдельным argv-токена (реальные run_command несут редиректы внутри sh -c-строки, см. трейсы), MCPProbe читал назад собственный журнал ядра (циркулярно). Боль подтверждения побочных эффектов закрыта классификацией эффектов при сбоях (toolFailureData) и операциями с эффектами; заметка в ROADMAP P2.
  4. ✅ Slack-треды + настройки каналов (сделано): thread_ts на исходящих, thread_ref на вопросах (human_request, миграция 000065), точный матчинг тредовых ответов с бэкфиллом; настройки каналов — аккордеон (настроенные сверху, раскрыты). Контракт: docs/channels.md §9.1.
  5. ✅ Approved-хвосты (сделано): skill_inspect отдаёт status/version и помечает не-утверждённые артефакты предупреждением; artifact_search принимает status=/kind= и отдаёт origin_type; редактор навыков предлагает только approved.
  6. ✅ Уведомления согласующим (сделано): submit рассылает текстовое уведомление со ссылкой каждому раскрытому согласующему по каналу с той же политикой выбора, что ask_human (cmd/agent-kernel/artifactnotify.go), вне цикла запроса, best-effort.

#1. Команды агентов (plan-agent-teams.md) — самый большой незакрытый план

MVP по плану = волны A–D; A–B сделаны, C и D нет.

Волна Что Статус Доказательство
C Подбор агентов на role-слоты по capabilities, GET .../resolve ❌ kernel/agent/teamrun.go:29,58-63 — без явного биндинга отказ
D UI «Команды» ❌ нет клиента в workspaceApi.ts, нет раздела (события team.* рендерятся в Runs)
E Formation builder POST /v1/workspace/teams/builder ❌ роута нет
F Team scratch, контракты как артефакты, scoped hints ❌ контракты текстом в промпт (teamrun.go:185-213)
G cost/team-run, метрики версий, evolution proposals 🟡 только rollup в team.completed; ProposeTeamVersion — ручной путь
H Миграция примера LeadCoderReviewerQA ❌ examples_enabled.go:15,41-45, спец-обработка в AgentRuns.tsx:567,585

#2. Секреты (secrets-management.md)

Фаза 1 — закрыта в основном; хвосты:

Фаза 2 — ❌ целиком: SecretProvider-контракт, адаптеры Infisical/Vault, динамические секреты, TTL-lease, ротация по расписанию, revoke, gейтинг политиками (провайдеры жёстко builtin|env, migrations/000050).

Фаза 3 — ❌ целиком: GitHub Apps-брокер, OIDC/STS-федерация, SIEM-экспорт аудита.

Нюанс: resolve-эндпоинт (main.go:4771-4812) проверяет service-principal, но не орг-видимость — разграничение на стороне ядра (sandboxSecretEnv).

#3. Артефакты

Lifecycle Фаза 2 — 0/3: кнопки approve/reject в каналах (база — human_requests с orphan-RunID — тоже нет, channelinbound.go:291-320 сигналит только в workflow рана); напоминания ARTIFACT_REVIEW_TIMEOUT — только в доке; эскалация — не решено, кому (артефакты не привязаны к проектам; кандидат — head оргединицы).

Lifecycle Фаза 3 — 0/4: снапшоты тел (правка затирает, workspace/artifacts.go:304-307), пиннг версии в манифесте (skills/manifest.go:19-22 — только ID), трассировка сага→раны→фича (в ProjectOverview.tsx артефактов нет), конвертация work→reference.

Registry Фаза 3 — 0/3: адаптеры S3/СЭД (провайдеры жёстко builtin|url, main.go:7351), версионирование, полнотекстовый поиск (только метаданные).

Открытые вопросы §14 lifecycle: ко-редактирование черновиков, обязательный ревью человеческих reference, агентское пред-ревью, пиннг vs always-latest, квоты размера агентских черновиков.

Прочее: статус superseded и события artifact.superseded/artifact.updated не эмитятся; cancelled у review — мёртвое значение; kind-чипа-фильтра в UI нет.

#4. Каналы / intake / триггеры / саги

#5. Навыки и знания

#6. Контур качества (agent-quality-loop.md)

Бэкенд закрыт (гейт, judge+калибровка, настройка судьи из UI, интервальное расписание qualityschedule.go). Хвосты — UI/метрики:

#7. Прочие хвосты

#8. Устаревшие доки

#9. Приоритет следующих волн (предложение)

  1. Волна фиксов (см. «В работе») — доверие к заявленному.
  2. Artifact Lifecycle Фаза 2 (уведомления → напоминания → эскалация) — прямое продолжение фиксов.
  3. Команды, волны C+D — единственный план с недостигнутым MVP.
  4. Качество: дашборд UI + метрики здоровья петли; гейт для навыков.
  5. Секреты Фаза 2 (внешние провайдеры) — по мере потребности в enterprise-интеграциях.