378
*/
379
toolCallDetails(report: IAgentHostToolCallDetailsReport): void {
381
>
if (!restricted || report.availableTools.length === 0) {
382
>
return;
383
>
}
384
>
const session = isAhpChatChannel(report.session) ? parseRequiredSessionUriFromChatUri(report.session) : report.session;
385
>
const properties = multiplexProperties({
386
>
conversationId: AgentSession.id(session),
387
>
requestId: report.turnId,
388
>
messageId: report.turnId,
389
>
responseType: report.responseType,
390
>
...(report.model ? { model: report.model } : {}),
391
>
toolCounts: JSON.stringify(report.toolCounts),
392
>
availableTools: JSON.stringify(report.availableTools),
393
>
});
394
>
const measurements = {
395
>
numRequests: report.numRequests,
396
>
availableToolCount: report.availableTools.length,
397
>
totalToolCalls: report.totalToolCalls,
398
>
parallelToolCallRounds: report.parallelToolCallRounds,
399
>
parallelToolCallsTotal: report.parallelToolCallsTotal,
400
>
};
401
>
restricted.sendEnhancedGHTelemetryEvent('toolCallDetailsExternal', properties, measurements);
402
>
restricted.sendInternalMSFTTelemetryEvent('toolCallDetailsInternal', properties, measurements);
403
>
}
404
405
/**