2169
2170
onClientToolCallComplete(session: URI, _chat: URI, toolCallId: string, result: ToolCallResult): void {
2172
>
let parsed;
2173
>
while ((parsed = parseSubagentSessionUri(target))) {
2174
target = parsed.parentSession;
2175
}
2177
>
const entry = this._sessions.get(sessionId);
2178
>
// `AgentSideEffects` forwards every `ChatToolCallComplete` envelope
2179
>
// (including SDK-owned tools); silent on miss is the expected path.
2180
>
entry?.defaultChat?.completeClientToolCall(toolCallId, result);
2181
>
}
2182
2183
async syncClientCustomizations(session: URI, clientId: string, customizations: ClientPluginCustomization[], options?: { readonly quiet?: boolean }): Promise<ISyncedCustomization[]> {