Этот runbook описывает операции именно с дашбордом: проверку актуальности поверхности проекта, первичную настройку уведомлений, сохранение воспроизводимых представлений и сравнение истории. Телеметрия хостов и сервисов описана в руководстве по мониторингу.
Выполняйте команды из репозитория CodeGraph с той же конфигурацией runtime и областью проекта, которые использует API.
1. Установить basis проекта
python -m src.cli dashboard health <project> --format json
python -m src.cli dashboard basis <project> --format json
Проверяйте вместе проект, ревизию доказательств, basis анализа, доступность
балла и свежесть. Успешно завершившаяся команда с состоянием stale,
missing, failed или unknown — это диагностический результат, а не
доказательство готовности.
Если поверхность возвращает рекомендованную команду, сначала убедитесь, что
refresh_supported = true, а action_availability = available. При
updating наблюдайте текущую задачу и не запускайте дубликат. При failed
сохраните идентификатор задачи и причину ошибки до повтора.
2. Инициализировать уведомления проекта
Аргумент проекта обязателен:
python -m src.cli dashboard notifications bootstrap <project> --format json
Параметры --channel, --delivery-mode, --events и
--minimum-severity должны соответствовать одобренной политике получателя.
Чувствительные детали исключены, пока --include-sensitive-details не
потребуется и не будет разрешён.
Ответ bootstrap доказывает конфигурацию. Для полноценного эксплуатационного доказательства также нужно событие успешной доставки из рабочего контура; одной тестовой отправки недостаточно.
3. Сохранить и проверить представления
python -m src.cli dashboard saved-views list --format json
Перед повторяющимся сравнением или экспортом сохраните идентификатор представления, владельца, область, фильтры и период. Сохранённые представления привязаны к пользователю: нельзя считать, что другой вошедший пользователь может их прочитать или переиспользовать.
Текущие REST-чтения:
GET /api/v1/traceability/saved-views;GET /api/v1/traceability/subscriptions.
Для обоих требуется аутентификация API и подходящая область проекта и пользователя.
4. Сравнить историю
Для одного проекта:
python -m src.cli dashboard compare-periods <project> --format json
Для автоматизации по портфелю используйте
GET /api/v1/traceability/portfolio/compare-periods с теми же фильтрами,
базовым и сравниваемым периодами, что и в сохранённом представлении. Это
операция чтения. Сохраните селекторы вместе с результатом, чтобы его можно было
воспроизвести.
5. Передать инцидент
Зафиксируйте:
- проект и группу;
- текущий commit или идентификатор развёрнутого образа;
- маршрут или команду с очищенными параметрами;
- состояние и причину свежести;
- идентификатор и этап активной задачи, если они есть;
- сохранённое представление и периоды;
- событие доставки, если инцидент связан с уведомлениями.
Не включайте токены доступа, секреты получателей, сырые приватные замечания и пути хранилища.
Источники истины
src/cli/dashboard_commands.py— parser и выполнение команд дашборда.src/api/routers/dashboard_core/dashboard_v2_history.py— сравнение периодов проекта и портфеля.src/api/routers/dashboard_domains/dashboard_v2_notifications.py— сохранённые представления и подписки.src/api/services/dashboard/surface_state/surface_freshness.py— состояние восстановления и поддерживаемые действия.
Карта рабочих областей находится в руководстве пользователя.