✨ Features
🐛 Bug Fixes
- auth: keep browser sessions in protected cookies (e9e3d13)
- auth: rate limit credential verification endpoints (fb9162b)
- auth: reject API keys in URL query strings (88d0d03)
- auth: revoke JWT sessions on logout and password change (bca1363)
- auth: secure first-run account creation (41e94a2)
- auth: secure proxy bypass without exposing the API key (1f63dd3)
- history: make media details accessible and visible (114f940), closes #80
- history: persist safely and isolate malformed records (40743e1)
- history: preserve data when renamed paths collide (674a534)
- logging: redact credentials from logs and log responses (63b9c0a)
- logs: highlight searches without rewriting html (9ffe6b4)
- scheduler: fail actions with no configured targets (4c8d98e)
- scheduler: persist schedule definitions safely (44886d5)
- scheduler: persist scheduled settings safely (e6fb8ed)
- scheduler: preserve execution windows across midnight (73fd560)
- scheduler: resolve UI app targets correctly (f2943fe)
- scheduling: prevent stored xss in schedule rows (6f6a365)
- security: constrain history paths to trusted roots (5e3961c)
- security: prevent exception details from leaking in API responses (b25eae3)
- security: prevent sensitive upstream data from reaching logs (db97bc9)
- settings: avoid redundant system timezone writes (cbf5d46), closes #79
- settings: escape persisted values in app forms (95fc45e)
- settings: prevent partial configuration writes (b4bcb5a)
- stateful: serialize and atomically persist state (65016b7)
- stats: serialize hourly resets and persist counters atomically (1580e42)
- storage: isolate colliding instance state files (2b34098)
- swaparr: isolate and safely persist instance state (524c43b)
- swaparr: prevent stored xss in log views (372b97d)
- swaparr: support paginated v1 queue responses (c592b0b), closes #78
- ui: correct local bypass auth and cycle status (741254f)
- ui: establish an accessible application shell (631a292)
- ui: prevent activity card overflow on mobile (a301354)
- ui: scale automation cards to enabled app count (05da44d)
📖 Documentation
- readme: guide first-time users through setup (67db50f)
🛠️ Build System
- deps: refresh Python dependencies and GitHub Actions (b51c10c)