Parent
Часть плана модульной декомпозиции: #489
Контекст
HealthRegistry реализован в modules/core/health.py (78 строк), покрыт тестом (tests/unit/test_health_registry.py), но нигде не подключён — ни к startup, ни к /health endpoint. Текущий /health в modules/core/router_health.py собирает статус вручную.
Что нужно
- Инстанцировать
HealthRegistry в ServiceContainer (аналогично event_bus)
- Каждый домен регистрирует свои health checks при startup:
llm — LLM backend доступен
knowledge — Wiki RAG загружен
channels/telegram — бот-процессы живы
channels/whatsapp — бот-процессы живы
internet — InternetMonitor статус
database — SQLite доступна
- Переписать
/health endpoint на health_registry.check_all()
- Сохранить обратную совместимость формата ответа
Критерии готовности
Зависимости
Нет.
Оценка: S (1 PR)
Parent
Часть плана модульной декомпозиции: #489
Контекст
HealthRegistryреализован вmodules/core/health.py(78 строк), покрыт тестом (tests/unit/test_health_registry.py), но нигде не подключён — ни к startup, ни к/healthendpoint. Текущий/healthвmodules/core/router_health.pyсобирает статус вручную.Что нужно
HealthRegistryвServiceContainer(аналогичноevent_bus)llm— LLM backend доступенknowledge— Wiki RAG загруженchannels/telegram— бот-процессы живыchannels/whatsapp— бот-процессы живыinternet— InternetMonitor статусdatabase— SQLite доступна/healthendpoint наhealth_registry.check_all()Критерии готовности
/healthendpoint использует HealthRegistryЗависимости
Нет.
Оценка: S (1 PR)