v0.39.1: 8C orphan-template cleanup (delete 5 dead templates)

Remove five orphaned HTML templates left behind when slice 8C retired the
disk/storage/restore web handlers (storage_handlers.go, handler_restore.go and
the /api/storage/* + /api/restore/* routes): storage_init, storage_attach,
migrate, migrate_drive, restore. Zero .go references, zero cross-template
references, no route, no nav entry; embed is a glob so deletion is safe (14
templates remain, build + tests green). No behaviour change; the deleted pages
were already unreachable.

Also ships the live demo validation (v0.39.0) writeup in REPORT.md.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-11 12:24:13 +02:00
parent d8d1e17758
commit 6e77bea4d3
7 changed files with 217 additions and 1809 deletions
+22
View File
@@ -1,5 +1,27 @@
## Changelog
### v0.39.1 — 8C orphan-template cleanup (source hygiene) (2026-06-11)
Dead-template removal — no behaviour change. Slice 8C de-privileged the controller and retired the
disk/storage/restore web handlers (`storage_handlers.go`, `handler_restore.go` and the `/api/storage/*`
+ `/api/restore/*` routes), but five HTML templates that those handlers rendered were left behind.
They have **zero** `.go` references, **zero** cross-template `{{template …}}` references, no route, and
no nav entry; the embed is a glob (`//go:embed templates/*.html templates/*.css`), so deleting them is
safe and the remaining 14 templates still embed cleanly.
#### Removed (`internal/web/templates`)
- `storage_init.html`, `storage_attach.html`, `migrate.html`, `migrate_drive.html`, `restore.html`
orphaned pages for removed endpoints. Re-confirmed unreferenced before deletion
(`grep -rn` over `internal/`: only the templates' own `{{define}}` lines matched).
#### Noted, not changed (dead-but-harmless restic/cross-drive remnants)
- Two never-called notifier methods `NotifyCrossDriveCompleted`/`NotifyCrossDriveFailed`
(`internal/notify/notifier.go:353,359`) and a vestigial `crossdrive_failed` entry in the
notification-events list (`internal/web/handlers.go:937`) that still renders a settings toggle for an
event that can no longer fire. Plus restic config fields/comments in `config/config.go`,
`settings/settings.go`, `report/types.go`. None are live emitters — left in place, flagged for a
future dedicated cleanup.
### v0.39.0 — slice 9: host metrics in the controller (customer host-health view) (2026-06-10)
The customer-facing half of slice 9. Pairs with `felhom-agent` v0.14.0. The de-privileged controller (slice 8C) sees only its own cgroup, so it can't read the host. The monitoring page now shows the **real Proxmox box** — CPU% + load, memory used/total, **CPU/chassis temperature** (or "n/a" when the hardware exposes none), uptime, and **per-storage capacity** (used/total bar, thin-pool fill, disk temp/wear) — proxied from the agent's new `GET /host/metrics`.