You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Backend:
- Add Setting.get_many() for batch key lookups (1 query instead of 4)
- Use get_many() in settings endpoints (4x fewer DB queries)
- Add TTL + max-size eviction to HLS playlist/access-log caches
(prevents unbounded memory growth with many cameras)
- Fix require_active_billing to reuse request's DB session via
Depends(get_db) instead of opening a separate SessionLocal()
Frontend:
- Add PlanInfoProvider context: single 60s poll shared by all pages
(Layout, Dashboard, Settings, Admin, MCP) — eliminates 3-4 duplicate
getPlanInfo() calls per navigation
- Add SharedTokenProvider: one 30s token refresh interval shared by
all HlsPlayer instances — eliminates N intervals for N cameras
- Replace JSON.stringify camera comparison with shallow field check
(status, name, last_seen) to avoid blocking main thread on polls
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
0 commit comments