From 84ac0c0e60eaae6d437b93318aba83a96161e775 Mon Sep 17 00:00:00 2001 From: benya Date: Sun, 8 Mar 2026 19:57:11 +0300 Subject: [PATCH] fix(websocket): force logout on revoked session close codes --- web/src/hooks/useRealtime.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/web/src/hooks/useRealtime.ts b/web/src/hooks/useRealtime.ts index 16f8a1e..9f2a09b 100644 --- a/web/src/hooks/useRealtime.ts +++ b/web/src/hooks/useRealtime.ts @@ -256,7 +256,7 @@ export function useRealtime() { } }; - ws.onclose = () => { + ws.onclose = (closeEvent) => { if (heartbeatIntervalRef.current !== null) { window.clearInterval(heartbeatIntervalRef.current); heartbeatIntervalRef.current = null; @@ -269,6 +269,11 @@ export function useRealtime() { window.clearInterval(reconcileIntervalRef.current); reconcileIntervalRef.current = null; } + if (closeEvent.code === 4401 || closeEvent.code === 1008) { + manualCloseRef.current = true; + useAuthStore.getState().logout(); + return; + } if (manualCloseRef.current) { return; }