This solution uses ActionCable for real-time notifications and AJAX requests for session management. Redis serves as both the session store and ActionCable's pub/sub backend.
- ActionCable cannot access the session directly - Sessions are tied to HTTP, not WebSockets
- All session modifications must go through controllers via AJAX requests