Funk-lab/stt/client
ALI YESILKAYA d4b053622c
feat(stt-client): pages détail par service + santé live (probe + Prometheus + Alertmanager) (#36)
Transforme le portail (tuiles ouvrant un lien) en mini-pages par service, avec état
de santé temps réel — comme demandé.

Page détail (clic sur une tuile) : icône+nom, pilule d'état (en ligne/dégradé/hors
ligne + latence), description, composants (pastilles), alertes actives, infos (URL),
bouton « Ouvrir ». Tuiles : pastille de santé live + badge global d'alertes.

- registry.py : Service enrichi (description, health_url, components[{name,prom}],
  alerts_match) — toujours config-driven.
- health.py : StatusPoller en thread. Probe HTTP (up/down+latence) + Prometheus
  /api/v1/query (composants via up{}/kube-state-metrics) + Alertmanager /api/v2/alerts
  (hors Watchdog). Parallélisé (ThreadPoolExecutor), pousse portal-status au HUD.
- config.py : métadonnées homelab vérifiées en live (7 services ; traefik retiré —
  URL injoignable) + section [portal] (intervalle, URLs, timeouts).
- app.py : démarre le poller, diffuse portal-status (+ dernier état au connect).
- HUD : vues liste⟷détail, pastilles, badge alertes, mise à jour live.
- bump 0.9.0 → 0.10.0.

Validé : StatusPoller en direct contre le homelab (cycle 0.12s, 7 services ok,
composants Prometheus résolus, 0 alerte) ; HUD via Playwright (pastilles ok/dégradé/
hors-ligne, page détail complète, alerte rendue, bouton Ouvrir → open-service).

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 23:17:27 +02:00
..
config feat(stt-client): pages détail par service + santé live (probe + Prometheus + Alertmanager) (#36) 2026-06-20 23:17:27 +02:00
stt feat(stt-client): pages détail par service + santé live (probe + Prometheus + Alertmanager) (#36) 2026-06-20 23:17:27 +02:00
pyproject.toml feat(stt-client): pages détail par service + santé live (probe + Prometheus + Alertmanager) (#36) 2026-06-20 23:17:27 +02:00