From 674494e80b6629e5329013469adaa24a0cf4d160 Mon Sep 17 00:00:00 2001 From: David Pierce Date: Tue, 9 Dec 2025 15:30:50 +0000 Subject: [PATCH] allow final:true to be returned on a2a server edit calls. (#14747) --- packages/a2a-server/src/agent/task.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/a2a-server/src/agent/task.ts b/packages/a2a-server/src/agent/task.ts index e37965af6a..5322f9edf0 100644 --- a/packages/a2a-server/src/agent/task.ts +++ b/packages/a2a-server/src/agent/task.ts @@ -791,7 +791,14 @@ export class Task { } as ToolConfirmationPayload) : undefined; this.skipFinalTrueAfterInlineEdit = !!payload; - await confirmationDetails.onConfirm(confirmationOutcome, payload); + try { + await confirmationDetails.onConfirm(confirmationOutcome, payload); + } finally { + // Once confirmationDetails.onConfirm finishes (or fails) with a payload, + // reset skipFinalTrueAfterInlineEdit so that external callers receive + // their call has been completed. + this.skipFinalTrueAfterInlineEdit = false; + } } else { await confirmationDetails.onConfirm(confirmationOutcome); }