v0.94.0: serialize per-disk SMART into the /disks payload
Additive, backward-compatible (MinAgent floor unchanged). The SMART is already computed on the request path (storage.Observe -> enrich); this copies the target's Smart into localapi.DiskInfo (pointer, omitempty) only when Health != "", so an unread/absent summary stays omitted and the controller renders "Nincs adat". No new smartctl load, endpoint, or sudoers change. Test TestDisks_SmartSerialized + red-proof (drop the copy -> fails).
This commit is contained in:
@@ -1,3 +1,20 @@
|
||||
## v0.94.0 — serialize per-disk SMART into the /disks payload (2026-07-24)
|
||||
|
||||
Additive, backward-compatible; **MinAgent floor unchanged** (the controller feature-detects by payload
|
||||
presence). No new smartctl load, no new endpoint, no sudoers change — the SMART is already computed on
|
||||
the request path (`storage.Observe` → `enrich` runs `smartctl -a -j` for dir-backed targets); this
|
||||
release simply copies the target's already-populated `Smart` into `localapi.DiskInfo`.
|
||||
|
||||
- `DiskInfo` gains `Smart *hub.SmartSummary \`json:"smart,omitempty"\``. In `handleDisks` the summary is
|
||||
copied **only when `t.Smart.Health != ""`** — a zero-value summary (SMART never read: no smartctl
|
||||
device, USB bridge, or a failed read) stays omitted, so the controller sees *absent* and renders
|
||||
"Nincs adat" rather than a misleading UNKNOWN. The union-in drives (driveTargets.Known path, no
|
||||
enrichment) carry no SMART and are omitted by the same guard.
|
||||
- The controller (v0.169.0) consumes this to render a "Lemezek állapota" card + a 6-hourly
|
||||
degradation notification. Old controllers ignore the extra field.
|
||||
- Test `TestDisks_SmartSerialized` (payload includes SATA counters + temperature for a fixture target;
|
||||
absent-SMART target omits the field); red-proof: drop the copy → the serialized-Smart assertion fails.
|
||||
|
||||
## v0.93.0 — a recovery code can no longer contain a hyphenated word (2026-07-21)
|
||||
|
||||
> **SHIPPED 2026-07-22:** built + published (sha256 `a68b2ff73200622e…`), Day-0-manifest-vouched,
|
||||
|
||||
Reference in New Issue
Block a user