=== v0.240.0 live validation on demo-hp — 2026-09-13T17:28:41Z ===
controller: gitea.dooplex.hu/admin/felhom-controller:0.240.0
catalog-cache template carries DEBUG=False: 1
--- deploy ---
HTTP 202 {"ok":true,"message":"Telepítés elindítva – az állapot a kártyán követhető"}
healthy: True
--- R-482: a CSRF failure page must NOT be a debug page ---
login with a bogus CSRF -> 403 | mentions 'DEBUG = True': False | length: 300
--- sign up + a place, then backup now (R-484: a db-dump must appear) ---
signup: 200
login: (302, '/')
location: 201
HTTP 200 {"ok":true,"message":"Mentés elindítva"}
backup idle after 100 s
HTTP 200 {"ok":true,"message":"2. mentés elindítva"}
/mnt/sys_drive/felhom-data/backups/primary/adventurelog:
  2026-09-13T17:30:42.0264751580 8170290 db-dumps/adventurelog-postgres.sql
  2026-09-13T17:32:19.5796963680 1385 manifest.json
  2026-09-13T17:32:19.5796963680 452 compose/app.yaml
  2026-09-13T17:32:19.5786963550 2623 compose/.felhom.yml
  2026-09-13T17:32:19.5786963550 3844 compose/docker-compose.yml
  2026-09-13T17:30:47.5035437220 199777280 volume-dumps/adventurelog_adventurelog_postgres_data.tar
  2026-09-13T17:30:46.3705295390 47497728 volume-dumps/adventurelog_adventurelog_media.tar
/mnt/felhom-drives/hdd_1/backups/primary/adventurelog: ABSENT
/mnt/felhom-drives/hdd_1/backups/secondary/adventurelog:
  2026-09-13T17:30:42.0264751580 8170290 recovery-unit/db-dumps/adventurelog-postgres.sql
  2026-09-13T17:32:19.5786963550 2623 recovery-unit/compose/.felhom.yml
  2026-09-13T17:32:19.5786963550 3844 recovery-unit/compose/docker-compose.yml
  2026-09-13T17:32:19.5796963680 452 recovery-unit/compose/app.yaml
  2026-09-13T17:30:47.5035437220 199777280 recovery-unit/volume-dumps/adventurelog_adventurelog_postgres_data.tar
  2026-09-13T17:30:46.3705295390 47497728 recovery-unit/volume-dumps/adventurelog_adventurelog_media.tar
  2026-09-13T17:32:19.5796963680 1385 recovery-unit/manifest.json
  2026-09-13T17:32:22.5337333470 1 .felhom-tier2-layout
DB dump discovered: 2026/09/13 17:28:47 logscanner.go:69: [DEBUG] [metrics] logscanner: scanned adventurelog-postgres: errors=0 warnings=2 issues=2 (took 27ms)
2026/09/13 17:28:56 installed.go:408: [INFO] [stacks] installed-images adventurelog: recorded 3 service(s) (adventurelog=ghcr.io/seanmorley15/adventurelog-backend:v0.12.1 (sha256:7c759efab147…), adv
2026/09/13 17:28:56 pin.go:93: [INFO] [stacks] pin adventurelog: adventurelog=ghcr.io/seanmorley15/adventurelog-backend:v0.12.1, adventurelog-frontend=ghcr.io/seanmorley15/adventurelog-frontend:v0.12.
--- R-485: the card ---
HTTP 200 {"ok":true,"data":{"stack":"adventurelog","backup_paths":[{"path":"/mnt/sys_drive/felhom-data/backups/primary/adventurelog","size_bytes":255469986,"size_human":"244M","exists":true},{"path":"/mnt/felhom-drives/hdd_1/backups/secondary/adventurelog","size_bytes":255474083,"size_human":"244M","exists":true}],"has_backups":true}}
truth: [('Tihany', 5.0, 'Levendulamező.')]
--- R-486: remove with backups KEPT, then the second-drive restore must WORK ---
HTTP 200 {"ok":true,"data":{"removed":"adventurelog","volumes_removed":null,"hdd_paths_removed":[],"hdd_paths_preserved":[],"hdd_note":"Az alkalmazás nem tárolt saját adatot külső meghajtón, így ott nem volt mit törölni."},"message":"Stack adventurelog removed"}
volumes after removal: 0
cross_drive record kept: True
HTTP/2 302 
location: /backups/apps?flash=Teljes+vissza%C3%A1ll%C3%ADt%C3%A1s+elindult+%E2%80%94+az+%C3%A1llapot+itt+friss%C3%BCl.

restore-status: {"running": false, "op": "tier2-unit-restore", "stack": "adventurelog", "started_at": "2026-09-13T17:32:40.44475981Z", "last": {"op": "tier2-unit-restore", "stack": "adventurelog", "ok": true, "message": "A(z) adventurelog: 2 adatkötet és az adatbázis visszaállítva — az alkalmazás újraindult. A visszaállítás forrása a második meghajtón lévő másolat volt (2026-09-13 19:32).", "finished_at": "2026-0
healthy: True
login: (302, '/')
READ BACK after the Tier-2 restore identical: True [('Tihany', 5.0, 'Levendulamező.')]
--- R-480: card after a successful restore (no update failure here, so update_error must be empty) ---
state=running updating=False phase=None err='' hold=''
--- R-474: remove with delete my data AND delete backups → clean ---
HTTP 200 {"ok":true,"data":{"removed":"adventurelog","volumes_removed":null,"hdd_paths_removed":[],"hdd_paths_preserved":[],"hdd_note":"Az alkalmazás nem tárolt saját adatot külső meghajtón, így ott nem volt mit törölni.","backup_paths_removed":["/mnt/sys_drive/felhom-data/backups/primary/adventurelog (244M)","/mnt/felhom-drives/hdd_1/backups/secondary/adventurelog (243.6 MB)"]},"message":"Stack adventurelog removed"}
/mnt/sys_drive/felhom-data/backups/primary/adventurelog: ABSENT
/mnt/felhom-drives/hdd_1/backups/primary/adventurelog: ABSENT
/mnt/felhom-drives/hdd_1/backups/secondary/adventurelog: ABSENT
prefs left: None
--- controller log (removal + mirror deletion) ---
2026/09/13 17:33:12 delete.go:569: [INFO] Removed backup data: /mnt/sys_drive/felhom-data/backups/primary/adventurelog (244M)
2026/09/13 17:33:12 r474_remove_mirrors.go:91: [INFO] [backup] remove adventurelog: Tier-2 mirror deleted: /mnt/felhom-drives/hdd_1/backups/secondary/adventurelog (243.6 MB)
=== done 2026-09-13T17:33:18Z ===
