## 2026-09-29T19:24:22Z step 6 — deploy bookstack (Admin jelszó: 'Generálás' = 24 characters, held 0600)
fields sent: ['ADMIN_PASSWORD', 'APP_KEY', 'DB_PASSWORD', 'SUBDOMAIN']
{"ok":true,"message":"Telepítés elindítva – az állapot a kártyán követhető"}

http=202
19:24:38 deploying healthy=None | stranger 404  [404 page not found]
19:24:55 degraded healthy=None | stranger 404  [404 page not found]
19:25:00 starting healthy=True | stranger 404  [404 page not found]
19:25:22 starting healthy=True | stranger 302 https://wiki.enkicsifelhom.hu/login [Redirecting to https://wiki.enkicsifelhom.hu/login]
19:25:27 running healthy=True | stranger 302 https://wiki.enkicsifelhom.hu/login [Redirecting to https://wiki.enkicsifelhom.hu/login]
19:25:27 healthy
## 2026-09-29T19:26:05Z step 6 — bookstack first password
  the settings page's 👁 (POST /stacks/bookstack/auto-field/reveal) returns the 24-char password typed at install: shown == typed YES
  stranger's old default admin@admin.com / password → 302 https://wiki.enkicsifelhom.hu/login
  admin@admin.com / the shown password → 302 https://wiki.enkicsifelhom.hu/
## 2026-09-29T19:26:18Z step 6 — deploy audiobookshelf (gated, status probe)
fields sent: ['HDD_PATH', 'SUBDOMAIN']
{"ok":false,"error":"a(z) \"Hangoskönyv tár útvonal\" (HDD_PATH) mező kitöltése kötelező"}

http=400
  (audiobookshelf first: 400 „a(z) "Hangoskönyv tár útvonal" (HDD_PATH) mező kitöltése kötelező“ — it needs a data drive; refused before anything was written; not a finding)
## 2026-09-29T19:26:47Z step 6 — deploy actualbudget (gated, status probe needs-bootstrap)
fields sent: ['SUBDOMAIN']
{"ok":true,"message":"Telepítés elindítva – az állapot a kártyán követhető"}

http=202
19:26:48 not_deployed healthy=None | stranger 404  [404 page not found]
19:26:53 deploying healthy=None | stranger 404  [404 page not found]
19:27:04 starting healthy=None | stranger 404  [404 page not found]
19:27:10 running healthy=True | stranger 401  [{"error":"this app is waiting for its first setup"}]
19:27:10 healthy
## 2026-09-29T19:27:21Z step 6 — the stranger (no session, no gate cookie) on budget. before the setup
  browser GET / → 302
  page: Found | .
  stranger /account/needs-bootstrap → 401
  stranger /account/bootstrap → 401
  stranger POST /account/bootstrap {password} → {"error":"this app is waiting for its first setup"} 401
  stranger browser, redirects followed → 200 at https://felhom.enkicsifelhom.hu/__gate/start?rd=…
  page: ActualBudget — Beállításra vár | ActualBudget | Ez az alkalmazás még beállításra vár. Jelentkezz be a Felhom vezérlőpultba. | Bejelentkezés | budget.enkicsifelhom.hu | Magyar | English
## 2026-09-29T19:27:45Z step 6 — the household presses „Kész, beállítottam“ BEFORE the setup
{"data":null,"error":"Az alkalmazás szerint még nincs kész az első beállítás. Hozd létre a fiókodat, aztán próbáld újra.","ok":false}
 http=409
  stranger after the press: 401
## 2026-09-29T19:27:57Z step 6 — the household (dashboard session) opens budget.
  household browser → 200 at https://budget.enkicsifelhom.hu/ (3 redirects)
  gate cookie for budget.: 1
  needs-bootstrap → {"status":"ok","data":{"bootstrapped":false,"loginMethod":"password","availableLoginMethods":[],"multiuser":false}}
  POST /account/bootstrap (the app's own first-setup screen) → {"status":"ok","data":{"token":"…"}}
  needs-bootstrap → {"status":"ok","data":{"bootstrapped":true,"loginMethod":"password","availableLoginMethods":[{"method":"password","active":1,"displayName":"Password"}],"multiuser":false}}
## 2026-09-29T19:28:09Z the gate opened by itself 1 s after the setup (probe)
  stranger needs-bootstrap → {"status":"ok","data":{"bootstrapped":true,"loginMethod":"password","availableLo
  stranger POST /account/bootstrap → {"status":"error","reason":"already-bootstrapped"} 400
  stranger login with a wrong password → {"status":"error","reason":"invalid-password"} 400
## 2026-09-29T19:28:19Z step 6 — deploy vikunja (gated, sign-up lock: block + its own switch)
fields sent: ['SUBDOMAIN', 'VIKUNJA_SERVICE_JWTSECRET']
{"ok":true,"message":"Telepítés elindítva – az állapot a kártyán követhető"}

http=202
19:28:20 not_deployed healthy=None | stranger 404  [404 page not found]
19:28:25 running healthy=None | stranger 401  [{"error":"this app is waiting for its first setup"}]
19:28:31 running healthy=True | stranger 401  [{"error":"this app is waiting for its first setup"}]
19:28:31 healthy
## 2026-09-29T19:28:43Z step 6 — stranger's sign-up on vikunja BEFORE the setup
  stranger POST /api/v1/register → {"error":"this app is waiting for its first setup"} 401
## the household passes the gate and registers the first account
  household browser → 200 at https://tasks.enkicsifelhom.hu/
  POST /api/v1/register → {"id":1,"name":"","username":"csalad",,}
 200
  login → token len 296
## 2026-09-29T19:28:53Z step 6 — vikunja: the household presses „Kész, beállítottam“ after making its account
{"data":{"opened":true},"error":"","ok":true}
 http=200
  stranger GET / → 404
  stranger POST /api/v1/register → {"error":"sign-up is closed on this app; its admin adds new accounts"} 403
  19:29:06 stranger GET / → 200  /api/v1/info registration_enabled=None
  19:29:12 stranger GET / → 200  /api/v1/info registration_enabled=None
  19:29:17 stranger GET / → 200  /api/v1/info registration_enabled=None
  19:29:22 stranger GET / → 200  /api/v1/info registration_enabled=None
  19:29:28 stranger GET / → 200  /api/v1/info registration_enabled=None
  19:29:33 stranger GET / → 200  /api/v1/info registration_enabled=None
  own switch in the running container: VIKUNJA_SERVICE_ENABLEREGISTRATION=false
  app.yaml after_setup / setup_gate: state: open ok: true 
