Модуль XXII — здоровье, SLA и аптайм
Модуль XXII отвечает на три вопроса об AI-компонентах estate (парка) — что здорово, что деградировало или упало, и что от чего зависит. Он ограничен надёжностью агентов и MCP-серверов, а не здоровьем хоста или инфраструктуры в целом. Эта страница — справочник о том, что измеряет модуль, что он материализует, и где его честные границы.
Что это
Заголовок раздела «Что это»XXII — это потребитель ядра, а не зонд: открытие сокетов в инфраструктуру заказчика — это забота коннектора, а в запечатанном наборе наблюдений нет вида здоровья. Поэтому здоровье выводится из сигналов, которые модуль может доказать:
- Живость (пассивная). Сессия или агент, обращающиеся к MCP-серверу — или агент, действующий — это свидетельство того, что субъект жив. Это обновляет маркер последнего появления субъекта и складывает ребро зависимости.
- Результаты активных зондов. Внешний проверяющий здоровье или сам агент отправляет результат на эндпоинт отчёта по проверке — честный путь приёма для «проверок здоровья / OTEL-метрик».
- Устаревание (staleness). Известный субъект, который перестаёт появляться в рамках ожидаемой
каденции, сам является сигналом. Фоновая зачистка переводит его в
degraded, затемdown, и открывает инцидент. Зачистка только деградирует или помечает как упавший; восстановление приходит исключительно из реальной живости, так что свежесозданная проверка никогда не эмитит ложного восстановления.
Его контракт и сущности
Заголовок раздела «Его контракт и сущности»Модулю принадлежат четыре сущности. Проверка здоровья — это объявленный оператором отслеживаемый
субъект (агент или MCP-сервер) с ожидаемой каденцией и целевым SLA; она
несёт текущее снимочное состояние субъекта — healthy, degraded, down или
unknown. Событие здоровья — это журнал переходов, доступный только для добавления, из которого аптайм
и SLA реконструируются — но никогда не хранятся как текущий счётчик. Инцидент
здоровья — это жизненный цикл open→resolved периода деградации или падения, с обеспечением одного
открытого инцидента на субъект. Зависимость здоровья — это автоматически обнаруженное
ребро инициатор → цель — карта зависимостей, накапливаемая идемпотентно.
Здоровье материализуется только для объявленных проверок. Субъект, наблюдаемый живым, но с
необъявленной проверкой, честно выводится на карте зависимостей как observed —
виден живым, здоровье не измерено — состояние, отличное от healthy (объявленная
проверка просигналила) и от unknown (назван, нет свидетельства живости). Продукт никогда
не фабрикует состояние «измеренно-здоров», которое он не вычислял. XXII также зеркалирует текущее
состояние субъекта в сущность ядра HealthStatus, когда субъект является id ядра, так что
другие плоскости могут читать здоровье агента или MCP.
Что он потребляет и производит
Заголовок раздела «Что он потребляет и производит»XXII потребляет edge.observed из шины для пассивной живости
и карты зависимостей, плюс отчёты активных зондов, которые приходят на его API. Он
производит, он не доставляет: сигналы down, degraded, recovered и нарушения SLA
эмитятся как FindingReport с минимальными данными в канале
finding.reported — общепродуктовый поток оповещений, который
модуль XV (уведомления) маршрутизирует в Slack, PagerDuty
или SIEM. XXII никогда не доставляет и никогда не подписывается на собственные находки.
См. также
Заголовок раздела «См. также»- Справочник по шине событий —
edge.observed(живость) иfinding.reported(сигналы, которые эмитит XXII). - Модуль XV — выходные интеграции и уведомления — маршрутизирует находки здоровья XXII по назначениям.
- Обзор модулей — где расположен XXII и разделение по актуации.
- Обзор архитектуры — движок, шина и уровень ядра.
- Честность и ограничения — что продукт наблюдает сегодня против того, что он актуирует.