diff --git a/REPORT.md b/REPORT.md index a0ac90a..790d886 100644 --- a/REPORT.md +++ b/REPORT.md @@ -47,12 +47,19 @@ rebaked golden are unaffected (mp activates at first boot, before the controller pending drives; P3 self-heal flags "restart to reconnect" for recovered drives. The staging-mp live-propagation alternative is deferred to its own spike. (Build remaining — see below.) +## Activation-UX — DONE (agent v0.26.0 + controller v0.49.0) +- **Agent `POST /guest/reboot`** (self-scoped, detached `pct reboot`, 202). Controller + `pendingActivationDrives()` flags registered drives the agent shows attached but not live-mounted in + the container; settings banner + batched **"Újraindítás most (~30 mp)"** button → `/api/storage/ + activate` → `agentapi.GuestReboot`. Live-validated on 9201: activate → guest reboots → drive active, + app writes to `/dev/sdb1`, banner absent. (Pending-banner display couldn't be forced live — LXC mp + mounts resist manual unmount + no 2nd drive — but the logic is unit-confident.) +- **Minor known artifact:** the bootstrap's `mount --rbind /mnt /mnt` duplicates the mp submount, so + `findmnt /mnt/` shows two (identical) rows — functional (IsMountPoint true, apps write fine); + inherent to rbind (a non-recursive bind would hide the submounts from the container). Tidy later. + ## Not done (next build increments) -- **Activation-UX:** agent self-reboot endpoint (`POST /guest/reboot` → `pct reboot `, token- - scoped) the controller calls; controller "pending activation" detection (registered + agent shows the - drive present/attached, but not a live mount in the container) + a batched "Újraindítás most (~30s)" - button. - **P3** self-heal watchdog reconcile (4-state new/enrolled/ejected/decommissioned, durable-id-keyed) + safety rails (flapping backoff, durable-id-only, in-progress-op respect, PVE coordination, - re-propagate); flags "restart to reconnect". + re-propagate); flags "restart to reconnect" for recovered drives. - **P4** dual-role eligibility + backup-aware wipe warning. Cross-drive backup ENGINE stays out of scope.