Skip to content

Commit 7b96b0e

Browse files
committed
add logs
1 parent 794d5ea commit 7b96b0e

File tree

1 file changed

+18
-4
lines changed
  • apps/sim/app/workspace/[workspaceId]/home/hooks

1 file changed

+18
-4
lines changed

apps/sim/app/workspace/[workspaceId]/home/hooks/use-chat.ts

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1799,8 +1799,19 @@ export function useChat(
17991799
})
18001800
}
18011801
} catch (err) {
1802-
if (err instanceof Error && err.name === 'AbortError') return
1802+
if (err instanceof Error && err.name === 'AbortError') {
1803+
logger.error('Send aborted (AbortError)', { streamId: userMessageId })
1804+
return
1805+
}
18031806
const errorMessage = err instanceof Error ? err.message : 'Failed to send message'
1807+
logger.error('Send catch block entered', {
1808+
streamId: userMessageId,
1809+
errorMessage,
1810+
errorName: err instanceof Error ? err.name : 'unknown',
1811+
gen,
1812+
currentGen: streamGenRef.current,
1813+
hasActiveStreamId: Boolean(streamIdRef.current),
1814+
})
18041815
if (requestChatId && isActiveStreamConflictError(errorMessage)) {
18051816
logger.info('Active stream conflict detected while sending message; reattaching', {
18061817
chatId: requestChatId,
@@ -1859,9 +1870,12 @@ export function useChat(
18591870

18601871
const activeStreamId = streamIdRef.current
18611872
if (activeStreamId && streamGenRef.current === gen) {
1873+
const reconnectController = new AbortController()
1874+
abortControllerRef.current = reconnectController
1875+
18621876
for (let attempt = 0; attempt < MAX_RECONNECT_ATTEMPTS; attempt++) {
18631877
if (streamGenRef.current !== gen) return
1864-
if (abortControllerRef.current?.signal.aborted) return
1878+
if (reconnectController.signal.aborted) return
18651879

18661880
const delayMs = Math.min(RECONNECT_BASE_DELAY_MS * 2 ** attempt, RECONNECT_MAX_DELAY_MS)
18671881
logger.info('Reconnect attempt after network error', {
@@ -1876,15 +1890,15 @@ export function useChat(
18761890
await new Promise((resolve) => setTimeout(resolve, delayMs))
18771891

18781892
if (streamGenRef.current !== gen) return
1879-
if (abortControllerRef.current?.signal.aborted) return
1893+
if (reconnectController.signal.aborted) return
18801894

18811895
try {
18821896
await resumeOrFinalize({
18831897
streamId: activeStreamId,
18841898
assistantId,
18851899
gen,
18861900
fromEventId: lastEventIdRef.current,
1887-
signal: abortController.signal,
1901+
signal: reconnectController.signal,
18881902
})
18891903
return
18901904
} catch (reconnectErr) {

0 commit comments

Comments
 (0)