diff --git a/packages/twenty-front/src/modules/ai/hooks/useAgentChat.ts b/packages/twenty-front/src/modules/ai/hooks/useAgentChat.ts index 177efe2ca6a..b8d2e5e72e8 100644 --- a/packages/twenty-front/src/modules/ai/hooks/useAgentChat.ts +++ b/packages/twenty-front/src/modules/ai/hooks/useAgentChat.ts @@ -132,6 +132,7 @@ export const useAgentChat = ( store.set(errorAtom, null); const fileIds = agentChatUploadedFiles.map((file) => file.fileId); + const uploadedFilesSnapshot = agentChatUploadedFiles; setAgentChatUploadedFiles([]); @@ -186,6 +187,7 @@ export const useAgentChat = ( ? { [AGENT_CHAT_NEW_THREAD_DRAFT_KEY]: '' } : {}), })); + setAgentChatUploadedFiles(uploadedFilesSnapshot); const latestMessages = store.get(messagesAtom); diff --git a/packages/twenty-front/src/modules/ai/hooks/useAiChatFileUpload.ts b/packages/twenty-front/src/modules/ai/hooks/useAiChatFileUpload.ts index 63084ff68fa..9074540f799 100644 --- a/packages/twenty-front/src/modules/ai/hooks/useAiChatFileUpload.ts +++ b/packages/twenty-front/src/modules/ai/hooks/useAiChatFileUpload.ts @@ -37,8 +37,8 @@ export const useAiChatFileUpload = () => { throw new Error(t`Couldn't upload the file.`); } - setAgentChatSelectedFiles( - agentChatSelectedFiles.filter((f) => f.name !== file.name), + setAgentChatSelectedFiles((prev) => + prev.filter((f) => f.name !== file.name), ); return { filename: file.name, @@ -72,10 +72,7 @@ export const useAiChatFileUpload = () => { ); if (successfulUploads.length > 0) { - setAgentChatUploadedFiles([ - ...agentChatUploadedFiles, - ...successfulUploads, - ]); + setAgentChatUploadedFiles((prev) => [...prev, ...successfulUploads]); } const failedCount = uploadResults.filter(