00:43:02   drill's radicale: {'radicale': 'ghcr.io/kozea/radicale:3.8.1'}
00:43:10   [5] the box's drill mirror now at c760fca93
00:43:15   [1] required fields filled beyond DOMAIN/SUBDOMAIN: ['RADICALE_USER', 'RADICALE_PASSWORD']
00:43:15   [1] deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}
00:43:40   [1] deployed, controller state=running, pinned={'radicale': 'ghcr.io/kozea/radicale:3.8.1'}
00:43:41     radicale: MKCALENDAR /csalad/felhom-0a551a4a/ http=201
00:43:41     radicale: PUT event http=201
00:43:44     radicale: readback http=200 found=True (controls: no auth 401, wrong 401, absent 404)
00:43:44   seeded: True; read back: True
00:43:47   volumes: ['radicale_radicale_data']
00:43:50   blocker: 8ac54e1274ef

00:43:51   [5] drill commit 3017cbb89641: radicale ghcr.io/kozea/radicale:3.8.1 -> busybox:1.36.1 (push rc=0)
00:44:00   [5] the box's drill mirror now at 3017cbb89
00:44:00   drill commit 3017cbb89641
00:44:04   box read TO after 4.5 s
00:44:05   [6] Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}
00:44:05       +   0.0s  phase=backing-up  label=Biztonsági mentés készül a frissítés előtt…  err=None  hold=None
00:44:07       +   2.0s  phase=safety-dump  label=Adatbázis pillanatkép…  err=None  hold=None
00:44:09       +   4.1s  phase=copying  label=Az adatok másolása a frissítés előtt…  err=None  hold=None
00:44:11       +   6.1s  phase=verifying  label=Működés ellenőrzése…  err=None  hold=None
00:49:12       + 307.7s  phase=undoing  label=Visszaállítás az előző változatra…  err=None  hold=None
00:49:20       + 315.8s  phase=undone  label=Visszaállítva az előző változatra  err=None  hold=None
00:49:20   update: accepted=True final=undone err=None
00:49:31   after the update: state=running hold=None phase=undone key=None
00:49:34   controller log:
2026/11/02 23:44:05 update.go:556: [INFO] [stacks] update radicale: accepted — guarded update started
2026/11/02 23:44:05 update.go:1397: [INFO] [stacks] update radicale: phase checking
2026/11/02 23:44:05 update.go:814: [INFO] [stacks] update radicale: ladder — the installed version radicale=ghcr.io/kozea/radicale:3.8.1 is AT THE HEAD of the update_ladder (1 entries) — the catalog's current definition
2026/11/02 23:44:05 update.go:844: [INFO] [stacks] update radicale: no usable copy on any tier — younger than 24h0m0s and not older than this install's deploy (2026-11-02T23:43:15Z) (found: none) — backing up first
2026/11/02 23:44:05 update.go:1397: [INFO] [stacks] update radicale: phase backing-up
2026/11/02 23:44:07 update.go:859: [INFO] [stacks] update radicale: precondition met after the backup — Tier 2 (second drive) copy from 2026-11-02T23:44:05Z
2026/11/02 23:44:07 update.go:1397: [INFO] [stacks] update radicale: phase safety-dump
2026/11/02 23:44:07 update.go:874: [INFO] [stacks] update radicale: safety dump done (0 file(s)) []
2026/11/02 23:44:07 undo.go:287: [INFO] [stacks] update radicale: the undo copy will hold 1 named volume(s), 0.0 MiB
2026/11/02 23:44:07 update.go:1397: [INFO] [stacks] update radicale: phase pinning
2026/11/02 23:44:07 pin.go:385: [INFO] [stacks] update radicale: pin advanced to /opt/docker/felhom-controller/data/catalog-cache/templates/radicale/docker-compose.yml (radicale=busybox:1.36.1)
2026/11/02 23:44:07 update.go:1397: [INFO] [stacks] update radicale: phase pulling
2026/11/02 23:44:08 update.go:1397: [INFO] [stacks] update radicale: phase copying
2026/11/02 23:44:09 update.go:1397: [INFO] [stacks] update radicale: phase copying
2026/11/02 23:44:09 undo.go:437: [INFO] [stacks] update radicale: copied radicale_radicale_data → radicale_radicale_data.pre-update-20261102T234409Z in 470ms
2026/11/02 23:44:09 update.go:1397: [INFO] [stacks] update radicale: phase starting
2026/11/02 23:44:10 update.go:1397: [INFO] [stacks] update radicale: phase verifying
2026/11/02 23:49:12 update.go:1096: [ERROR] [stacks] update radicale FAILED after the new version was started: not healthy: not healthy within 5m0s (last: state restarting)
2026/11/02 23:49:12 update.go:1088: [INFO] [stacks] update radicale: kept 868 bytes of the app's own log at /opt/docker/stacks/radicale/hold-logs/20261102T234912Z/compose-logs.txt before stopping it (R-621)
2026/11/02 23:49:12 update.go:1397: [INFO] [stacks] update radicale: phase undoing
2026/11/02 23:49:12 undo.go:515: [WARN] [stacks] update radicale: UNDO — putting back the previous version and its 1 volume copy(ies) (reason: not healthy: not healthy within 5m0s (last: state restarting))
2026/11/02 23:49:18 unattended.go:527: [INFO] [stacks] update radicale: step radicale=busybox:1.36.1 recorded as undone — the automatic leg will not press it again until the catalog's ladder changes (ladder 3c58efa0dee4c41c)
2026/11/02 23:49:19 undo.go:641: [INFO] [stacks] update radicale: event app_update_undone
2026/11/02 23:49:19 undo.go:569: [INFO] [stacks] update radicale: UNDONE in 7s — the previous version is running on the data from before the update (the app's health check passed)

00:49:34   STOP: no update hold — the stage did not work; nothing to prove
00:49:34 PHASE r1347 rc=1
