before: pinned={'wger': 'wger/server:2.6'}
drill: 55f293e DRILL wger: {'wger': 'wger/server:2.7'} (box proof)
  phase +0.0s backing-up | err=None
  phase +12.3s safety-dump | err=None
  phase +13.4s pulling | err=None
  phase +45.1s copying | err=None
  phase +56.4s starting | err=None
  phase +57.4s verifying | err=None
  phase +72.8s done | err=None
    wger: login failed: POST /en/user/login -> 500
2026/09/30 15:47:22 update.go:536: [INFO] [stacks] update wger: accepted — guarded update started
2026/09/30 15:47:22 update.go:1365: [INFO] [stacks] update wger: phase checking
2026/09/30 15:47:22 update.go:786: [INFO] [stacks] update wger: ladder — the last step (1 of 1) — the catalog's current definition
2026/09/30 15:47:22 update.go:816: [INFO] [stacks] update wger: no usable copy on any tier — younger than 24h0m0s and not older than this install's deploy (2026-09-30T15:45:17Z) (found: none) — backing up first
2026/09/30 15:47:22 update.go:1365: [INFO] [stacks] update wger: phase backing-up
2026/09/30 15:47:34 update.go:831: [INFO] [stacks] update wger: precondition met after the backup — Tier 2 (second drive) copy from 2026-09-30T15:47:33Z
2026/09/30 15:47:34 update.go:1365: [INFO] [stacks] update wger: phase safety-dump
2026/09/30 15:47:34 update.go:846: [INFO] [stacks] update wger: safety dump done (0 file(s)) []
2026/09/30 15:47:35 undo.go:287: [INFO] [stacks] update wger: the undo copy will hold 2 named volume(s), 4.1 MiB
2026/09/30 15:47:35 update.go:1365: [INFO] [stacks] update wger: phase pinning
2026/09/30 15:47:35 pin.go:373: [INFO] [stacks] update wger: pin advanced to /opt/docker/felhom-controller/data/catalog-cache/templates/wger/docker-compose.yml (wger=wger/server:2.7)
2026/09/30 15:47:35 update.go:1365: [INFO] [stacks] update wger: phase pulling
2026/09/30 15:48:06 update.go:1365: [INFO] [stacks] update wger: phase copying
2026/09/30 15:48:17 update.go:1365: [INFO] [stacks] update wger: phase copying
2026/09/30 15:48:18 undo.go:437: [INFO] [stacks] update wger: copied wger_wger_data → wger_wger_data.pre-update-20260930T154817Z in 550ms
2026/09/30 15:48:18 update.go:1365: [INFO] [stacks] update wger: phase copying
2026/09/30 15:48:18 undo.go:437: [INFO] [stacks] update wger: copied wger_wger_media → wger_wger_media.pre-update-20260930T154817Z in 505ms
2026/09/30 15:48:18 update.go:1365: [INFO] [stacks] update wger: phase starting
2026/09/30 15:48:18 update.go:1365: [INFO] [stacks] update wger: phase verifying
2026/09/30 15:48:34 update.go:997: [INFO] [stacks] update wger: healthy after 15s (the app's health check passed)
2026/09/30 15:48:34 update.go:1033: [INFO] [stacks] update wger: DONE in 1m12s

RESULT final_phase=done after={'wger': 'wger/server:2.7'} seed_after=False verdict=failed (72.8 s)
