From f9d5aeee9193055f672aedce6f2dfd646d0fea5b Mon Sep 17 00:00:00 2001 From: Mo Tarbin Date: Sun, 18 Jan 2026 12:54:49 -0500 Subject: [PATCH] feat: Add reconnection schedule and timeout configuration to Developer Settings --- src/views/Settings/DeveloperSettings.jsx | 98 +++++++++++++++++++++--- 1 file changed, 89 insertions(+), 9 deletions(-) diff --git a/src/views/Settings/DeveloperSettings.jsx b/src/views/Settings/DeveloperSettings.jsx index e2c0486..7664d62 100644 --- a/src/views/Settings/DeveloperSettings.jsx +++ b/src/views/Settings/DeveloperSettings.jsx @@ -286,8 +286,7 @@ const DeveloperSettings = () => { ) : ( - Refresh tokens are managed via HTTP-only cookies on web - platform + Refresh tokens are managed via HTTP-only cookies on web platform )} @@ -327,11 +326,7 @@ const DeveloperSettings = () => { > @@ -409,6 +404,88 @@ const DeveloperSettings = () => { + + + Reconnection Schedule + + {sseDebugInfo ? ( + + {sseDebugInfo.nextReconnectTime ? ( + <> + + Next Reconnect:{' '} + {new Date( + sseDebugInfo.nextReconnectTime, + ).toLocaleString()} + + + Time Until Reconnect:{' '} + + {formatTimeLeft(sseDebugInfo.timeUntilReconnect)} + + + + Current Delay:{' '} + + {formatTimeLeft(sseDebugInfo.currentReconnectDelay)} + + + + ) : ( + + No reconnection scheduled + + )} + + ) : ( + + No reconnection information available + + )} + + + + + + + Timeout Configuration + + {sseDebugInfo ? ( + + + Heartbeat Timeout:{' '} + + {formatTimeLeft(sseDebugInfo.heartbeatTimeout)} + + + + Monitor Interval:{' '} + + {formatTimeLeft(sseDebugInfo.heartbeatMonitorInterval)} + + + + Monitor Timeout:{' '} + + {formatTimeLeft(sseDebugInfo.heartbeatMonitorTimeout)} + + + + Circuit Breaker Reset:{' '} + + {formatTimeLeft(sseDebugInfo.circuitBreakerResetTime)} + + + + ) : ( + + No timeout information available + + )} + + + + Debug Information @@ -418,7 +495,8 @@ const DeveloperSettings = () => { Reconnect Attempts:{' '} - {sseDebugInfo.reconnectAttempts} + {sseDebugInfo.reconnectAttempts} /{' '} + {sseDebugInfo.maxReconnectAttempts} @@ -426,7 +504,9 @@ const DeveloperSettings = () => { {sseDebugInfo.isCircuitBreakerOpen ? 'OPEN' : 'CLOSED'}