P1: Закрывать WebSocket при размонтировании хука #4
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Проблема
useAdminWebSocketснимает таймеры при cleanup, но не закрывает активныйWebSocket. При смене токена, logout или remount возможны висячие соединения и дубли событий.Влияние
Лишняя нагрузка на
admin_ws_handler, возможные дубли уведомлений и метрик в UI.Ожидаемый результат
При размонтировании или смене
accessTokenстарое соединение явно закрывается; reconnect не создаёт дубликаты.Критерии приёмки
WebSocketхранится в ref и закрывается в cleanupФайлы
src/hooks/useAdminWebSocket.tssrc/layouts/AdminLayout.tsxПриоритет
P1
Готово: wsRef, явный close при unmount/logout, отмена reconnect, сброс metricsStore. Build OK.