v0.169.0: disk-health card + degradation notification (Lemezek állapota)
Consumes the agent v0.94.0 smart payload (MinAgent floor unchanged; feature-detect by presence). One pure verdict fn agentapi.DiskVerdictFor shared by the dashboard card and the 6h check. Card via a 60s /disks TTL cache (anti-smartctl-storm); unreachable agent -> Nincs adat, page never blocks. disk-health-check (6h) emits disk_health_degraded on a degradation only vs an in-memory baseline (first run silent, recovery/UNKNOWN never notify, multi-attr -> one event). No global banner (deliberate). Pairs with the hub allowlist bump. Tests: verdict table (>=90 red-proof), notifier emit, check first-run-silent (red-proof), degradation-once, recovery-silent, UNKNOWN-excluded, FAILING-critical, nil-smart card, TTL cache.
This commit is contained in:
+17
@@ -7,6 +7,23 @@
|
||||
>
|
||||
> Ask Claude Code: "Please update CONTEXT.md with what we did today"
|
||||
|
||||
Last updated: 2026-07-24 (v0.169.0 — disk-health card + degradation notification "Lemezek állapota")
|
||||
|
||||
> **2026-07-24 — v0.169.0 (disk-health card + degradation alert).** Consumes the agent's new `smart`
|
||||
> field (agent v0.94.0; MinAgent floor unchanged — feature-detect by presence). **Rulings:** (1) ONE
|
||||
> pure verdict fn `agentapi.DiskVerdictFor` is the shared truth for the card chip AND the 6h check — they
|
||||
> can never disagree. Thresholds: FAILING→Hiba; PASSED + any(reallocated>0/pending>0/offline_unc>0/
|
||||
> critical_warning>0/media_errors>0/percentage_used **≥90**)→Figyelmeztetés; PASSED clean→Rendben;
|
||||
> nil/UNKNOWN→Nincs adat (never alarms). (2) **No global alert banner** — the card + email carry disk
|
||||
> health; banner fatigue is a real cost, so this is deliberately NOT wired into the dead-app/alert-banner
|
||||
> machinery. (3) Degradation-only notification with an in-memory baseline: first run baselines silently,
|
||||
> recovery never notifies, **UNKNOWN excluded both directions** (a transient blip neither fires nor erases
|
||||
> history). (4) **Controller restart re-baselines silently** (in-memory baseline lost on restart) — an
|
||||
> accepted trade consistent with the health-change pattern (a real post-restart degradation still fires on
|
||||
> the following 6h check once a baseline exists). (5) A **60s TTL cache** wraps the card's /disks call so
|
||||
> dashboard refresh-spam can't smartctl-storm the host; the 6h check fetches FRESH (cache-independent).
|
||||
> Pairs with hub +1 (allowlist `disk_health_degraded`). No new smartctl load — serialization only.
|
||||
|
||||
Last updated: 2026-07-24 (v0.168.0 — customer-configurable backup window "Mentési időablak")
|
||||
|
||||
> **2026-07-24 — v0.168.0 (customer-configurable backup window).** ONE customer setting — the window
|
||||
|
||||
Reference in New Issue
Block a user