mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-27 12:56:01 -06:00
fix: isolate chat transcript fallback failures
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user