From fafed256a6f60d49824f86109db8dbf63e746b2e Mon Sep 17 00:00:00 2001 From: Shakker Date: Tue, 26 May 2026 23:56:58 +0100 Subject: [PATCH] fix: isolate chat transcript fallback failures --- src/gateway/server-methods/chat.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/gateway/server-methods/chat.ts b/src/gateway/server-methods/chat.ts index c9e9ecd9399a..f91527d967de 100644 --- a/src/gateway/server-methods/chat.ts +++ b/src/gateway/server-methods/chat.ts @@ -2751,6 +2751,9 @@ export const chatHandlers: GatewayRequestHandlers = { }, ); }; + const persistGatewayUserTurnTranscriptBestEffort = async () => { + await persistGatewayUserTurnTranscript().catch(() => undefined); + }; const appendWebchatAgentMediaTranscriptIfNeeded = async (payload: ReplyPayload) => { if (!agentRunStarted || appendedWebchatAgentMedia || !isMediaBearingPayload(payload)) { return; @@ -2950,7 +2953,7 @@ export const chatHandlers: GatewayRequestHandlers = { !userTurnRecorder.hasPersisted() && !userTurnRecorder.isBlocked() ) { - await persistGatewayUserTurnTranscript(); + await persistGatewayUserTurnTranscriptBestEffort(); } if ( agentRunStarted && @@ -2959,7 +2962,7 @@ export const chatHandlers: GatewayRequestHandlers = { !userTurnRecorder.isBlocked() && userTurnRecorder.hasRuntimePersistencePending() ) { - await persistGatewayUserTurnTranscript(); + await persistGatewayUserTurnTranscriptBestEffort(); } let broadcastedSourceReplyFinal = false; // WebChat persistence has two owners. Agent runs persist model-visible turns @@ -2996,7 +2999,7 @@ export const chatHandlers: GatewayRequestHandlers = { sessionKey, }); } else { - await persistGatewayUserTurnTranscript(); + await persistGatewayUserTurnTranscriptBestEffort(); const rawFinalPayloads = appendedWebchatAgentMedia ? [] : deliveredReplies