hub: F2 — alert on host already degraded/stale at (re)start (seed only healthy) v0.21.0
Constructors seed only healthy hosts; an already-degraded/stale host is left unseeded so the first Check() emits once (cooldown dedups on hub restart). Born-degraded red-proof + staleness test updated. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Pg8ANF97SEeKYSN5Jxw3qJ
This commit is contained in:
@@ -1,5 +1,21 @@
|
||||
# Felhom Hub — Changelog
|
||||
|
||||
## v0.21.0 — F2: alert on a host already degraded/stale at hub (re)start (2026-06-29)
|
||||
|
||||
Mirror of the controller's F2 fix, for the hub checkers: a host that was already **degraded**
|
||||
(capability) or **stale/down** (staleness) when the hub (re)started was seeded silently and **never
|
||||
alerted**. Now the constructors seed only HEALTHY hosts; an unhealthy host is left **unseeded** so the
|
||||
first `Check()` emits once. The dispatcher's 1 h operator cooldown dedups the re-emit across a hub
|
||||
restart (so a hub bounce doesn't re-page for an already-known issue within the window).
|
||||
|
||||
- `internal/monitor/host_capability.go` + `host_staleness.go`: constructor seeds only the healthy
|
||||
state; `Check()` first-obs (`oldState==""`) emits `emitTransition(…, "unknown", newState, …)` when
|
||||
the observed state isn't healthy, else seeds silently.
|
||||
- Tests: born-degraded **red-proof** (host degraded at construction → unseeded → one
|
||||
`agent_capability_degraded` on first Check, no duplicate on the next); the staleness test updated to
|
||||
the F2 behavior (born-stale → unseeded → one `host_stale` on first Check). Version `0.20.0 → 0.21.0`.
|
||||
|
||||
|
||||
## v0.20.0 — Accept controller `agent_channel_*` events (channel-health relay) (2026-06-29)
|
||||
|
||||
Companion to felhom-controller v0.90.0's controller→agent channel health-check. The controller pushes
|
||||
|
||||
Reference in New Issue
Block a user