From 037021f7090ce262666d958748eb83a0468ff605 Mon Sep 17 00:00:00 2001 From: rohitDalalStrique Date: Tue, 20 Jan 2026 17:14:03 +0530 Subject: [PATCH] chore: remove last message on stream error --- components/chat.tsx | 2 ++ components/multimodal-input.tsx | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/components/chat.tsx b/components/chat.tsx index 13902a4a57..885fba3ed2 100644 --- a/components/chat.tsx +++ b/components/chat.tsx @@ -86,6 +86,7 @@ export function Chat({ regenerate, resumeStream, addToolApprovalResponse, + error } = useChat({ id, messages: initialMessages, @@ -223,6 +224,7 @@ export function Chat({ setMessages={setMessages} status={status} stop={stop} + error={error} /> )} diff --git a/components/multimodal-input.tsx b/components/multimodal-input.tsx index ed62df19c9..f8f0e35790 100644 --- a/components/multimodal-input.tsx +++ b/components/multimodal-input.tsx @@ -68,6 +68,7 @@ function PureMultimodalInput({ selectedVisibilityType, selectedModelId, onModelChange, + error }: { chatId: string; input: string; @@ -83,6 +84,7 @@ function PureMultimodalInput({ selectedVisibilityType: VisibilityType; selectedModelId: string; onModelChange?: (modelId: string) => void; + error?:UseChatHelpers["error"]; }) { const textareaRef = useRef(null); const { width } = useWindowSize(); @@ -147,6 +149,10 @@ function PureMultimodalInput({ const submitForm = useCallback(() => { window.history.pushState({}, "", `/chat/${chatId}`); + //https://ai-sdk.dev/docs/ai-sdk-ui/error-handling#alternative-replace-last-message + if(error){ + setMessages(prev => prev.slice(0, -1)); // remove last message + } sendMessage({ role: "user", parts: [