From b69e90bdadbbb628454a1a514235ea1c522e3a17 Mon Sep 17 00:00:00 2001 From: kisfenyo Date: Thu, 29 Oct 2026 16:24:40 +0100 Subject: [PATCH] D65 = A: the busy file the agent reads before an operator reboot, and the household's 'Felhom support restarted your box' line; R-1350: a hold clear records the wanted stop so no app_start_failed follows it --- CHANGELOG.md | 25 ++++ controller/README.md | 13 ++ .../cmd/controller/busymark_wiring_test.go | 49 +++++++ controller/cmd/controller/holdclear.go | 23 ++- controller/cmd/controller/holdclear_test.go | 2 +- controller/cmd/controller/main.go | 16 ++- controller/cmd/controller/r1350_test.go | 80 +++++++++++ .../internal/agentapi/operatorreboot.go | 33 +++++ controller/internal/backup/hold_clear.go | 10 ++ controller/internal/busymark/busymark.go | 132 ++++++++++++++++++ controller/internal/busymark/busymark_test.go | 65 +++++++++ controller/internal/i18n/locales/en.json | 1 + controller/internal/i18n/locales/hu.json | 1 + controller/internal/stacks/desiredstate.go | 20 +++ .../internal/stacks/desiredstate_test.go | 24 ++++ controller/internal/web/handlers.go | 7 +- .../internal/web/operator_reboot_notice.go | 81 +++++++++++ .../web/operator_reboot_notice_test.go | 79 +++++++++++ controller/internal/web/server.go | 5 + .../internal/web/templates/dashboard.html | 2 +- controller/internal/web/templates/style.css | 2 + controller/scripts/i18n_go_keys.json | 3 +- 22 files changed, 662 insertions(+), 11 deletions(-) create mode 100644 controller/cmd/controller/busymark_wiring_test.go create mode 100644 controller/cmd/controller/r1350_test.go create mode 100644 controller/internal/agentapi/operatorreboot.go create mode 100644 controller/internal/busymark/busymark.go create mode 100644 controller/internal/busymark/busymark_test.go create mode 100644 controller/internal/web/operator_reboot_notice.go create mode 100644 controller/internal/web/operator_reboot_notice_test.go diff --git a/CHANGELOG.md b/CHANGELOG.md index 0c4bd79c..4f85f903 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,28 @@ +## Unreleased — the household line after an operator reboot and the busy file for it (D65 = A); a hold clear records the wanted stop (R-1350) + +### 2026-10-29 (evening) + +**MinAgent: 0.158.1** (unchanged). The new `GET /guest/operator-reboot` is asked once at start; an older agent answers +404, and such an agent cannot reboot from the hub either — nothing to show, nothing broken. The busy file is read BY the +agent (≥ the reboot_guest commit); an older agent never reads it. + +- **D65 = A — the busy file (`internal/busymark`).** `/ctl/busy`, rewritten every 15 s while a backup, a + restore, an off-site run, the night catch-up, an app update or an app export/import runs; removed when idle and at + start. The agent refuses the operator's „Reboot guest" while it is fresh. Tests `TestBusyFileFollowsTheWork`, + `TestBusyMarkPathIsTheOneTheAgentReads` (the path is the agent's guest path), `TestBusyMarkIsWiredAtStartup`. +- **D65 = A — „Felhom support restarted your box at