From dab44f38255591896528ed5a707b843803ff61d1 Mon Sep 17 00:00:00 2001 From: 134 Date: Tue, 7 Jul 2026 21:21:12 +0800 Subject: [PATCH] fix canvas agent duplicate user message --- components/canvas/CanvasChatPanel.tsx | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/components/canvas/CanvasChatPanel.tsx b/components/canvas/CanvasChatPanel.tsx index d9eadd00f..96e36c683 100644 --- a/components/canvas/CanvasChatPanel.tsx +++ b/components/canvas/CanvasChatPanel.tsx @@ -11006,20 +11006,16 @@ export function CanvasChatPanel({ metadata: optimisticUserMetadata, } as ChatMessage; - setMessages((previousMessages) => - sortCanvasMessagesByCreatedAt([ - ...previousMessages.filter((message) => message.id !== userMessageId), - optimisticUserMessage, - ]) - ); - // 使用与 multimodal-input 相同的格式发送消息 try { sendMessage(optimisticUserMessage as any); - } catch (error) { setMessages((previousMessages) => - previousMessages.filter((message) => message.id !== userMessageId) + sortCanvasMessagesByCreatedAt([ + ...previousMessages.filter((message) => message.id !== userMessageId), + optimisticUserMessage, + ]) ); + } catch (error) { releaseSendGuard(activeChatId); if (shouldShowOptimisticImageGeneration) { clearStreamImageGenerationStateForChat(activeChatId);