21f17ed32b
gates / gates (push) Successful in 28s
09 §6.4 parts 2-3 SHIPPED. R-606, R-620, R-646 closed; R-647 (three leftovers) and R-648 (whole-box backup press in the harness) opened. Open rows 335 -> 334. Evidence: audits/undo-fleet-2026-09-23/. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
The undo reaches the fleet, and the household is told — controller v0.264.0 + hub v0.120.0, 2026-09-23
Method: endpoint-level. Every act is the endpoint the UI invokes (deploy, backup, sync, rescan, update,
remove, the language switch); pages are fetched as HTML (/apps/<app>?lang=hu|en); the mails are read from
the @felhom.eu catch-all mailbox with the Gmail connector; the hub's rows from a copy of hub.db+-wal+-shm.
No browser. The product performs every undo and every hold; the harness (walk.py, live.py, bakeoff.py,
copied from undo-live-2026-09-23/, now selectable by GUEST=9201|9202) only presses and reads.
Order of events
| # | what | evidence |
|---|---|---|
| 0 | floor 0.263.2 (Part 0) | 00-floor-0.263.2.txt |
| 1 | hub v0.120.0 deployed by manifest bump + ArgoCD, before any box ran v0.264.0; one-time add-only migration changed all 3 enabled_events rows |
10-enabled-events-before.txt, 11-hub-0.120.0-deploy-and-migration.txt |
| 2 | 9202 (no hub): v0.264.0; R-646 backfill recorded 3; vikunja undone then held; pages hu/en; WARN once per type, then DEBUG | 20-* … 29-* |
| 3 | 9201 (hub on): v0.264.0; backfill recorded 10; drill repoint with three controls; vikunja undone+held (box hu); language → en; glance undone+held (box en) | 30-* … 35-* |
| 4 | 8 mails as received + 8 notification_log rows |
40-notification-log.txt, 41-mails-as-received.md |
| 5 | teardown of 9201, floor 0.264.0 read back | 48-*, 49-*, 50-floor-0.264.0.txt |
Results
| proof | result |
|---|---|
| migration (hub) | demo-felhom kept its 10 types and gained 2; demo-hp and _resend-rotation-test (null / [] = nothing on) gained the 2; guard row set 11:49:03Z; log names all three |
| R-646 | applied-meta backfill (R-646): recorded 3 [gokapi paperless-ngx privatebin] (9202); recorded 10 […] (9201); skipped 0 on both |
| undone (9202, vikunja) | undone at +99 s; seeds A, B, C back; ledger equal; page hu „A(z) vikunja frissítése … — semmi nem veszett el." / en "The update of vikunja … — nothing was lost."; API ?lang=en label "Put back to the previous version" |
| held (9202, cut-off copy) | failed 1 s into undoing; hold sentence hu on the hu page and en on the en page (R-606); both copies kept |
| R-620 | WARN once each for controller_started, app_deploy_started, app_deployed, health_change, app_update_undone, app_update_held, app_start_failed; the second app_start_failed at 12:03:00Z is DEBUG |
| mails (9201) | 4 household + 4 operator, rows 937–946 all sent; subjects name the app; household text in the box language (hu for vikunja, en for glance); operator text Hungarian. Quoted in 41-mails-as-received.md |
| per-app cooldown | glance's undone mail went 14 min after vikunja's, inside the 6 h customer cooldown |
| standing apps (9201) | compose + .felhom.yml byte-identical before/after (10 apps), catalog back on live cfcfe52, controller.yaml identical to the saved copy. But not untouched: the harness's two „Mentés most" presses (whole-box backups) stopped and restarted 9 of 10 standing apps for their volume dumps — R-648 |
Found
- R-647 — (1) a reader in the other language than the box reads a HELD sentence in the box's language
(seen: 9202 box en,
?lang=hupage showed English); (2) the English mail's rawNote:line carries the Hungariancopy_holdsphrase; (3) two log wordings (hold recorded: trueon an undone event;severity warnprinting a health status). - R-648 — the drill's backup press is whole-box.
Teardown — three layers
- machine: 9202 — vikunja removed through the product (0 volumes, 0 undo copies), test images removed,
controller.yamlidentical tocontroller.yaml.pre-undofleet, catalog on livecfcfe52, apps as at the start. 9201 — vikunja and glance removed through the product (0 volumes, 0 copies), test images removed, language back tohu, config identical to the saved copy, catalog on livecfcfe52, the 10 standing apps deployed and healthy. Both stay on controller 0.264.0 (= the floor). - host: nothing provisioned on demo-hp.
- hub: v0.120.0 deployed (the one planned change); floor 0.264.0 / MinAgent 0.131.0; no customer reset.
- drill repo: reset to live
main(cfcfe52), read back from the remote.