### 3b — the PULL SUCCEEDS AND THE APP DOES NOT. The compose is pointed at alpine:3.20:
### a real image that pulls cleanly, then exits at once, so restart:unless-stopped puts it
### into a crash-loop. This is the shape of a real upstream image whose config the template
### can no longer supply — the catalog's own 2026-07-18 wger 2.6 revert was exactly that.
2026-09-01T18:00:42Z
file now:
    image: alpine:3.20
alpine present locally?
0
container BEFORE:
ghcr.io/alam00000/bentopdf:v2.8.5 aa443836a4cd612a6f5000f8d0481f3daf15fcc2a3faf59ccbffb941b5485db9 status=running
### POST /api/stacks/bentopdf/update — EXACT status and body:
{"ok":true,"message":"Stack bentopdf update completed"}

HTTP=200
### 3b AFTER — what the customer actually has
2026-09-01T18:01:20Z
image=alpine:3.20 id=436a8ae4fe639581dd05febd183f0476ad4aff91c8180063582ad9162ecacb3e status=restarting restarts=9 exit=0

bentopdf | alpine:3.20 | Restarting (0) 5 seconds ago

### the controller's own post-start status line (what it logged about the result)
2026/09/01 18:00:43 auth.go:134: [DEBUG] [web] auth: valid session for POST /api/stacks/bentopdf/update
2026/09/01 18:00:43 router.go:80: [DEBUG] [api] POST /api/stacks/bentopdf/update (path=/stacks/bentopdf/update)
2026/09/01 18:00:43 router.go:566: [INFO] [api] update requested for stack: bentopdf
2026/09/01 18:00:43 router.go:80: [DEBUG] [api] actionStack: action=update name=bentopdf
2026/09/01 18:00:43 manager.go:1176: [INFO] [stacks] Updating stack: bentopdf
2026/09/01 18:00:43 manager.go:1439: [INFO] [stacks] Deploying stack bentopdf — checking 1 images...
2026/09/01 18:00:43 manager.go:1320: [DEBUG] Running: docker compose pull (in /opt/docker/stacks/bentopdf)
2026/09/01 18:00:46 manager.go:1320: [DEBUG] Running: docker compose up -d --remove-orphans (in /opt/docker/stacks/bentopdf)
2026/09/01 18:00:47 manager.go:1195: [INFO] [stacks] Stack bentopdf updated successfully (took 3.5s)
2026/09/01 18:00:50 manager.go:1320: [DEBUG] Running: docker compose ps -a --format table {{.Name}}	{{.Image}}	{{.State}}	{{.Status}} (in /opt/docker/stacks/bentopdf)
2026/09/01 18:00:50 manager.go:1400: [INFO] [stacks] Stack bentopdf post-start status:
2026/09/01 18:00:50 manager.go:1403: [INFO] [stacks]   bentopdf   alpine:3.20   restarting   Restarting (0) Less than a second ago
### 3b — the EXACT customer-facing row while the app is crash-looping
ataset.fallback&&this.dataset.step==='1'){this.dataset.step='2';this.src=this.dataset.fallback;}else{this.onerror=null;this.style.visibility='hidden';}">||BentoPDF||pdf.enkisfelhom.hu ↗||URL nem elérhető – útvonal nincs publikálva||||Újraindítás...|||Adatvédelmi fókuszú PDF eszköztár|||~100M||Pi kompatibilis|||||bentopdf||Restarting (0) 15 seconds ago|||||Frissítés||Újraindítás||Leállítás||Naplók||Részletek||||||<img class="stack-logo-lg" src="/static/assets/bookstack-logo.svg" alt="" data-fallback="/static/app-placeholder.svg"
                     onerror="if(!thi
