Files
orchestrator/docs/overview/tech-observability.md
claude-bot 19c31778b2
All checks were successful
CI / test (push) Successful in 1m15s
CI / test (pull_request) Successful in 1m14s
docs(overview): sync system showcase with analyst open-questions auto-park (ORCH-120)
Address reviewer P1 (ось ORCH-011/ORCH-079, правило агентов №6): витрина
описывала паузу serial-gate как исключительно операторскую, но ORCH-120
добавил движковый авто-park/unpark на analyst Needs Input.

- tech-pipeline.md: абзац пауз теперь называет два источника (оператор +
  авто-park движком на Needs Input, флаг analyst_needs_input_autopause_enabled,
  скоуп self-hosting, симметричный unpark на resume).
- tech-observability.md: пункт пауз в GET /queue — оба источника.
- tech-agents.md: when-applicable сигнальный канал 01-questions.md у analyst
  (строка таблицы + поясняющая врезка; не machine-verdict, не deliverable).
- CHANGELOG: запись ORCH-120 дополнена строкой про обновление витрины.

tests/test_system_docs.py зелёный (29 passed). src/STAGE_TRANSITIONS/QG_CHECKS
не тронуты — docs-only.

Refs: ORCH-120
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 13:28:06 +03:00

4.9 KiB
Raw Blame History

Блок 7. Наблюдаемость и аналитика

Машинный контракт метрик и устройство sidecar-наблюдателя — в инженерном справочнике (разделы /metrics и sidecar-watchdog).

Живая Telegram-карточка задачи

Каждая задача — одна карточка в Telegram, обновляемая на каждом событии:

  • текущая стадия и Plane-статус (включая человеческие гейты — видно, когда задача ждёт вас);
  • строка работающего агента: роль · модель · эффорт;
  • стоимость задачи нарастающим итогом (токены/доллары по каждому запуску агента);
  • честные метрики времени на финише: время агентов / время ожидания человека / общее календарное — три независимые цифры, а не одна вводящая в заблуждение сумма;
  • кликабельный номер задачи (ведёт в Plane), отметка багфикс-маршрута.

Карточка тихая (без пингов); пингуют только алерты: красный гейт, ожидание решения человека, инциденты.

Служебные страницы платформы

  • GET /queue — человекочитаемый снимок всего конвейера: очередь и job'ы, состояние serial gate (заморозки, паузы задач, причина ожидания успешника), авто-лейблы, багфикс-трек, coverage, журнал уроков, владение переходами (transition_lease), фоновые демоны. Первая точка диагностики «что сейчас происходит». Паузу/возобновление задачи в serial gate включают два источника: оператор — явными эндпоинтами POST /serial-gate/pause|resume, и движок — автоматически, когда аналитик задаёт блокирующие вопросы и задача уходит в Needs Input (авто-park; снимается на возобновлении; под флагом analyst_needs_input_autopause_enabled, скоуп self-hosting).
  • GET /metrics — машинный контракт для внешнего наблюдателя (версионированная схема): health, возраст последних событий, счётчики сбоев.
  • GET /health — живость процесса.

Sidecar-watchdog: наблюдатель отделён от наблюдаемого

Отдельный контейнер-сторож опрашивает /metrics платформы и шлёт алерты в собственный Telegram-канал со своим ботом. Падение платформы, зависание очереди или протухание событий видно даже тогда, когда сама платформа уже не может пожаловаться.

Журнал уроков

Машинная таблица отклонений конвейера: красные гейты, ложные блокировки слияния, исчерпание ретраев, деградации после выкладки. Каждая запись — контекст (задача, стадия, агент, репо), первопричина и предложение. Журнал — наблюдатель (никогда не влияет на продвижение задач) и фундамент петли самообучения платформы: уроки доступны через API и копятся для будущего ретроспективного анализа.

Стоимость и аналитика по агентам

Каждый запуск агента фиксирует модель, эффорт, длительность и стоимость (модель объектов). Это даёт ответы на вопросы «сколько стоит задача», «какая роль ест бюджет», «как изменилась экономика после смены модели» — по фактам, не по ощущениям.


Что делать при инцидентах и как устроен прод — docs/operations/ (через инженерный справочник); бизнес-взгляд на наблюдаемость — business.md.