Observer now optionally (PROM_SHADOW_URL) queries Prometheus up{} once per
cycle and LOGS SHADOW_LIVENESS_MISMATCH when its event-driven liveness
disagrees. Parallel-run only: compute_liveness and _emit_node_transition are
untouched; authoritative liveness stays 100% event-driven. Fail-open on any
Prometheus error (down/timeout/bad JSON -> {}). 9 new tests, incl. proof that
shadow-read does not change node_info liveness/status.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| __init__.py | ||
| test_incident_lifecycle.py | ||
| test_liveness.py | ||
| test_observer_shadow_liveness.py | ||
| test_operator_ui_liveness.py | ||
| test_state_reliability.py | ||
| test_supervisor_ha.py | ||
| test_supervisor_node_events.py | ||