R-304: the recovery screen says 'we do not know' when earlier packages were not checked (hu + en)
gates / gates (push) Successful in 54s

Unreleased; ships with tomorrow's release.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
2026-10-08 07:53:09 +02:00
parent 6d07ca2be4
commit 75b3b39254
7 changed files with 94 additions and 1 deletions
+9 -1
View File
@@ -1,4 +1,4 @@
## Unreleased (2026-10-08) — a daytime press never cancels the night's whole-guest backup (R-899; operator ruling 2026-10-08, option A) — ships with tomorrow's release
## Unreleased (2026-10-08) — a daytime press never cancels the night's whole-guest backup (R-899; operator ruling 2026-10-08, option A); an honest answer when older recovery packages were not checked (R-304) — ships with tomorrow's release
**MinAgent: 0.131.0** (unchanged — the new `trigger=manual` query is ignored by an older agent, which keeps running the
OS leg after a press exactly as before; the night itself is fixed by the controller alone).
@@ -12,6 +12,14 @@ OS leg after a press exactly as before; the night itself is fixed by the control
„owed" tier never fires the window gate's safety valve (it waits for the window). A scheduled success inside tonight's
window ends it; a failed one does not. `internal/quiesce/nightowed.go`; tests `TestR899_*` (6; red-proved: with the
rule off, the 2026-10-07 replay started nothing on night 2 — `started=[local local]`, and two more failed).
- **R-304 — the recovery screen no longer calls a code wrong when earlier packages were not checked.** The agent (same
day) answers **424** when the current sealed package refused the code, no earlier package opened it, and at least one
earlier package the hub holds was never tried (no key material, over the hub's cap, malformed, past the attempt cap, or
the list could not be read). `agentapi.RecoveryOlderUnchecked`; the page says we do not know whether the code is wrong,
names the mistype as one possibility and sends the household to support — new bundle key `recovery.older_unchecked`,
Hungarian and English. Not version-gated on purpose (it accuses nobody; a stray 424 lands on a neutral sentence).
Tests `TestR304_OlderUnchecked_IsNotAWrongCode` (hu + en; red-proved: without the case the page fell to the „nem tudjuk
biztosan, miért" default) and `TestR304_Classify424`.
- The press now reaches the agent as `POST /backup?…trigger=manual` (`agentapi.StartBackupForTrigger`); an agent that
knows it runs no OS leg after a press (agent, same day). Test `TestR899_PressCarriesTriggerManual` asserts the query the
agent receives for each of the four shapes.