From d480101115b6d04b521d59d926c98a2a63c70fd5 Mon Sep 17 00:00:00 2001 From: Mohamed Boudra Date: Tue, 14 Apr 2026 12:25:59 +0700 Subject: [PATCH] fix: thread allowEmptySubmit through submit pipeline submitAgentInput returned "noop" for empty messages regardless of allowEmptySubmit, breaking the new-workspace empty-submit flow. Now the flag is passed from Composer through to submitAgentInput so empty submissions are allowed when the prop is set. --- packages/app/src/components/agent-input-submit.ts | 3 ++- packages/app/src/components/composer.tsx | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/app/src/components/agent-input-submit.ts b/packages/app/src/components/agent-input-submit.ts index 8f2500075..eb711d082 100644 --- a/packages/app/src/components/agent-input-submit.ts +++ b/packages/app/src/components/agent-input-submit.ts @@ -3,6 +3,7 @@ export type AgentInputSubmitResult = "noop" | "queued" | "submitted" | "failed"; export interface AgentInputSubmitActionInput { message: string; imageAttachments?: TImage[]; + allowEmptySubmit?: boolean; forceSend?: boolean; isAgentRunning: boolean; canSubmit: boolean; @@ -22,7 +23,7 @@ export async function submitAgentInput( const trimmedMessage = input.message.trim(); const imageAttachments = input.imageAttachments; - if (!trimmedMessage && !imageAttachments?.length) { + if (!trimmedMessage && !imageAttachments?.length && !input.allowEmptySubmit) { return "noop"; } diff --git a/packages/app/src/components/composer.tsx b/packages/app/src/components/composer.tsx index 1ec7fe397..c191aaff2 100644 --- a/packages/app/src/components/composer.tsx +++ b/packages/app/src/components/composer.tsx @@ -354,6 +354,7 @@ export function Composer({ await submitAgentInput({ message, imageAttachments, + allowEmptySubmit, forceSend, isAgentRunning: agentState.status === "running", // Parent-managed submits are still valid submit paths even when the