From 05746666b65b251ff0ebd4df234988467d738893 Mon Sep 17 00:00:00 2001 From: Adam Weidman Date: Wed, 13 May 2026 13:45:49 -0400 Subject: [PATCH] fix(core): add optional chaining for optional abortSignal in RemoteSessionInvocation --- packages/core/src/agents/remote-session-invocation.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/core/src/agents/remote-session-invocation.ts b/packages/core/src/agents/remote-session-invocation.ts index 94c40320c9..2434f6fc30 100644 --- a/packages/core/src/agents/remote-session-invocation.ts +++ b/packages/core/src/agents/remote-session-invocation.ts @@ -129,7 +129,7 @@ export class RemoteSessionInvocation extends BaseToolInvocation< // Wire external abort signal to session abort const abortListener = () => void session.abort(); - _signal.addEventListener('abort', abortListener, { once: true }); + _signal?.addEventListener('abort', abortListener, { once: true }); // Subscribe for parent session observability let unsubscribeParent: (() => void) | undefined; @@ -170,7 +170,7 @@ export class RemoteSessionInvocation extends BaseToolInvocation< // The protocol resolves aborts with an empty result rather than // rejecting. Detect this and surface proper error state. - if (_signal.aborted) { + if (_signal?.aborted) { const partialProgress = session.getLatestProgress(); const errorProgress: SubagentProgress = { isSubagentProgress: true, @@ -229,7 +229,7 @@ export class RemoteSessionInvocation extends BaseToolInvocation< stateKey, session.getSessionState(), ); - _signal.removeEventListener('abort', abortListener); + _signal?.removeEventListener('abort', abortListener); unsubscribeProgress(); unsubscribeParent?.(); }