36 lines
2.4 KiB
Markdown
36 lines
2.4 KiB
Markdown
# REPORT — controller v0.335.0 (2026-10-19 evening/night brief, Part 1 + Part 9)
|
||
|
||
## What changed
|
||
|
||
**R-921 — no app stop for an off-site (or any whole-guest) tier the agent will refuse because its host is busy.**
|
||
Before any app is stopped the quiesce loop reads the agent's new `host_busy` answer on `GET /backup/status`
|
||
(felhom-agent, Unreleased `56aabc7`, operator answer „add one field" 2026-10-19). Held → no app stopped, no backup
|
||
asked, each due tier recorded as contention (skip 15 min, one „BLOCKED" alarm after 3 h). Free, an older agent, or a
|
||
failed read → the old order (stop, ask, resume at once on 409). The window's own tier in flight attaches as before.
|
||
The race (free at the read, busy at the start) keeps the old behaviour: one short stop, resumed at once.
|
||
|
||
## Tests (red-proved)
|
||
|
||
- `TestR921_NoStopWhileTheHostIsBusy` — without the branch: 3 apps stopped, the start refused.
|
||
- `TestR921_HostBusySkipsStillAlarmAfterTheCeiling` — a gate that never lets go still alarms once.
|
||
- `TestR921_HostBusyOtherAnswersKeepTheOldOrder` — free / older agent / failed read / own tier in flight.
|
||
- `TestHostBusy_ReadsTheAgentsGate` — the wire shape; no field = „not known", never „free".
|
||
|
||
## Release (decision 250)
|
||
|
||
- `0.335.0-rc.1` on demo-hp 9201 by hand (18:08 UTC): healthy, 0 `[ERROR]`. The live agent's `GET /backup/status`
|
||
carries no `host_busy` (read inside 9201) — so until the agent release every box keeps the old order.
|
||
- `0.335.0` image `sha256:262831f97cec39ecc3fad9bd198de5cb4ee59fc398cdf828604df5de84d4daae` (from `15ea002`).
|
||
- Per-box floors 18:22:21 UTC; all three moved by 18:37:36 UTC (demo-hp from rc.1).
|
||
- Box walk 18:38–18:39 UTC: 0 unhealthy, 0 allow-list refusals, catalog in sync on all three; https-only 28 OK,
|
||
0 FAIL; „Fájlok ↗" with no second sign-in on demo-hp and Tester 1.
|
||
- **Global floor 0.335.0 / MinAgent 0.158.1 at 18:39:26 UTC**, read back from hub.db + WAL; per-box floors cleared.
|
||
- Evidence: `felhom.eu/documentation/audits/night-2026-10-19/P9/`.
|
||
- i18n: no page changed, no fixture changed.
|
||
|
||
## Also tonight (tooling, no release): the security-scan gate (R-986)
|
||
|
||
`controller_gates.py` registers the shared `felhom.eu/scripts/security_scan_gate.py` (fast set: hook and CI),
|
||
warn-first; `.security-accepted` holds the first scan's 4 accepted hits (test constants, decoy values); decoys in
|
||
`controller/scripts/test_gate_decoys.py` (55 cases OK). Commit `a03c25a`, CI 2109 success.
|