### 07:54:16 banner on 9202 — the ledger set by hand to a box whose last dump is 3 days old (scratch fixture, said so); window back to 02:30
HTTP 303
ledger set: last dump 2026-10-02T07:54:19.875183Z
2026/10/05 07:54:20 nightchain.go:291: [INFO] [catch-up] controller start: the box missed [db-dump tier2 offsite] (last scheduled 2026-10-05 04:15) — ONE catch-up in 15m0s (backup legs only; app updates wait for a real night)
--- the banner as GET /launcher served it (9202, Hungarian household):
<div class="alerts-container">
    <div class="alert-banner alert-banner-warning" id="missed-backup-banner">
        <span class="alert-icon"><svg class="ico"><use href="#i-triangle-alert"/></svg></span>
        <span class="alert-message">A legutóbbi mentés 3 nappal ezelőtt készült. Válassz egy olyan időpontot, amikor a doboz általában be van kapcsolva.</span>
        <span class="alert-actions">
            <a href="/backups#window_start" class="btn btn-sm btn-primary">Mentési idő módosítása</a>
            <form method="POST" action="/backups/missed-banner/dismiss" style="display:inline">
                <input type="hidden" name="_csrf" value="(redacted)"><input type="hidden" name="back" value="/launcher">
                <button type="submit" class="btn btn-sm btn-outline">Bezárás</button>
            </form>
        </span>
    </div>
</div
### 07:54:54 POST /backups/missed-banner/dismiss (the Bezárás button)
HTTP 302
banner on /launcher after closing: 0
2026/10/05 07:54:46 missed_backup_banner.go:90: [DEBUG] [web] missed-backup banner: rendered on /launcher (last=2026-10-02T07:54:19Z off_at="" suggest="")
2026/10/05 07:54:46 missed_backup_banner.go:90: [DEBUG] [web] missed-backup banner: rendered on /launcher (last=2026-10-02T07:54:19Z off_at="" suggest="")
2026/10/05 07:54:57 missed_backup_banner.go:90: [DEBUG] [web] missed-backup banner: rendered on /launcher (last=2026-10-02T07:54:19Z off_at="" suggest="")
2026/10/05 07:54:57 missed_backup_banner.go:90: [DEBUG] [web] missed-backup banner: rendered on /launcher (last=2026-10-02T07:54:19Z off_at="" suggest="")
2026/10/05 07:54:57 missed_backup_banner.go:100: [INFO] [web] missed-backup banner: closed by the household until the next missed backup time (after 2026-10-05T02:30:00+02:00)
  "banner_dismissed_through": "2026-10-05T00:30:00Z"
