What's New
Persistent Sessions
Sessions now survive container restarts. Previously, all users were logged out whenever the Docker container restarted (regression introduced in v7.0.0 when switching from deterministic tokens to random session tokens).
How it works:
- New
viewer_sessionsdatabase table stores active sessions - In-memory write-through cache ensures zero additional latency on requests
- On startup, active sessions are restored from the database
- If the database is unavailable, falls back to in-memory only (same as v7.0.x)
Security Fix
- Sessions with corrupted
allowed_chat_idsJSON now deny access instead of silently granting access to all chats
Upgrade
Pull the new images and restart — migration is automatic for both SQLite and PostgreSQL.
Migration
- Alembic migration 009: creates
viewer_sessionstable with indexes onusernameandcreated_at
Full Changelog: v6.5.0...v7.1.0