File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -280,7 +280,6 @@ export function ChatProvider({ children }: PropsWithChildren) {
280280 } ) ;
281281
282282 if ( ! response . ok ) {
283- setMessages ( ( prev ) => prev . filter ( ( m ) => ! isDraftMessage ( m ) ) ) ;
284283 const errorData = await response . json ( ) as APIErrorModel ;
285284 console . error ( "Failed to send message:" , errorData ) ;
286285 const detail = errorData . detail ;
@@ -297,14 +296,15 @@ export function ChatProvider({ children }: PropsWithChildren) {
297296 }
298297
299298 } catch ( error ) {
300- setMessages ( ( prev ) => prev . filter ( ( m ) => ! isDraftMessage ( m ) ) ) ;
301299 console . error ( "Error sending message:" , error ) ;
302300 const message = getErrorMessage ( error )
303301
304302 toast . error ( `Error sending message` , {
305303 description : message ,
306304 } ) ;
307305 } finally {
306+ // Remove optimistic draft message if still present (may have been replaced by server response via SSE).
307+ setMessages ( ( prev ) => prev . filter ( ( m ) => ! isDraftMessage ( m ) ) ) ;
308308 if ( type === "user" ) {
309309 setLoading ( false ) ;
310310 }
You can’t perform that action at this time.
0 commit comments