diff --git a/apps/web/src/hooks/useThreadActions.permissions.test.ts b/apps/web/src/hooks/useThreadActions.permissions.test.ts index de5056c4af696..829e0ad900dd5 100644 --- a/apps/web/src/hooks/useThreadActions.permissions.test.ts +++ b/apps/web/src/hooks/useThreadActions.permissions.test.ts @@ -319,6 +319,12 @@ describe("thread action permissions", () => { expect(state.requests).toEqual([ expect.objectContaining({ action: "delete", environmentId: secondary }), ]); + expect(state.localEffects).toEqual([ + "refresh-archive", + "release-uploads", + "clear-draft", + "clear-terminal-ui", + ]); expect(threadPanelStatePresence(target)).toEqual(panelStateCleared); }); diff --git a/apps/web/src/hooks/useThreadActions.ts b/apps/web/src/hooks/useThreadActions.ts index e5eedffc16698..bc7f29c81fb54 100644 --- a/apps/web/src/hooks/useThreadActions.ts +++ b/apps/web/src/hooks/useThreadActions.ts @@ -447,6 +447,9 @@ export function useThreadActions() { if (result._tag === "Success") { expireThreadUndos(target, [...LIST_PLACEMENT_UNDO_KINDS, "archive"]); refreshArchivedThreadsForEnvironment(target.environmentId); + releaseComposerDraftUploads(target); + clearComposerDraftForThread(target); + clearTerminalUiState(target); clearDeletedThreadPanelState(target); } return result;