summaryrefslogtreecommitdiff
path: root/packages/core/src/telemetry
diff options
context:
space:
mode:
Diffstat (limited to 'packages/core/src/telemetry')
-rw-r--r--packages/core/src/telemetry/loggers.test.ts2
-rw-r--r--packages/core/src/telemetry/tool-call-decision.ts32
-rw-r--r--packages/core/src/telemetry/types.ts30
-rw-r--r--packages/core/src/telemetry/uiTelemetry.test.ts8
-rw-r--r--packages/core/src/telemetry/uiTelemetry.ts8
5 files changed, 41 insertions, 39 deletions
diff --git a/packages/core/src/telemetry/loggers.test.ts b/packages/core/src/telemetry/loggers.test.ts
index 14de83a9..e1c4e65b 100644
--- a/packages/core/src/telemetry/loggers.test.ts
+++ b/packages/core/src/telemetry/loggers.test.ts
@@ -35,11 +35,11 @@ import {
logToolCall,
logFlashFallback,
} from './loggers.js';
+import { ToolCallDecision } from './tool-call-decision.js';
import {
ApiRequestEvent,
ApiResponseEvent,
StartSessionEvent,
- ToolCallDecision,
ToolCallEvent,
UserPromptEvent,
FlashFallbackEvent,
diff --git a/packages/core/src/telemetry/tool-call-decision.ts b/packages/core/src/telemetry/tool-call-decision.ts
new file mode 100644
index 00000000..167df10a
--- /dev/null
+++ b/packages/core/src/telemetry/tool-call-decision.ts
@@ -0,0 +1,32 @@
+/**
+ * @license
+ * Copyright 2025 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+import { ToolConfirmationOutcome } from '../tools/tools.js';
+
+export enum ToolCallDecision {
+ ACCEPT = 'accept',
+ REJECT = 'reject',
+ MODIFY = 'modify',
+ AUTO_ACCEPT = 'auto_accept',
+}
+
+export function getDecisionFromOutcome(
+ outcome: ToolConfirmationOutcome,
+): ToolCallDecision {
+ switch (outcome) {
+ case ToolConfirmationOutcome.ProceedOnce:
+ return ToolCallDecision.ACCEPT;
+ case ToolConfirmationOutcome.ProceedAlways:
+ case ToolConfirmationOutcome.ProceedAlwaysServer:
+ case ToolConfirmationOutcome.ProceedAlwaysTool:
+ return ToolCallDecision.AUTO_ACCEPT;
+ case ToolConfirmationOutcome.ModifyWithEditor:
+ return ToolCallDecision.MODIFY;
+ case ToolConfirmationOutcome.Cancel:
+ default:
+ return ToolCallDecision.REJECT;
+ }
+}
diff --git a/packages/core/src/telemetry/types.ts b/packages/core/src/telemetry/types.ts
index db84e2da..766d5f47 100644
--- a/packages/core/src/telemetry/types.ts
+++ b/packages/core/src/telemetry/types.ts
@@ -7,33 +7,11 @@
import { GenerateContentResponseUsageMetadata } from '@google/genai';
import { Config } from '../config/config.js';
import { CompletedToolCall } from '../core/coreToolScheduler.js';
-import { ToolConfirmationOutcome } from '../tools/tools.js';
import { AuthType } from '../core/contentGenerator.js';
-
-export enum ToolCallDecision {
- ACCEPT = 'accept',
- REJECT = 'reject',
- MODIFY = 'modify',
- AUTO_ACCEPT = 'auto_accept',
-}
-
-export function getDecisionFromOutcome(
- outcome: ToolConfirmationOutcome,
-): ToolCallDecision {
- switch (outcome) {
- case ToolConfirmationOutcome.ProceedOnce:
- return ToolCallDecision.ACCEPT;
- case ToolConfirmationOutcome.ProceedAlways:
- case ToolConfirmationOutcome.ProceedAlwaysServer:
- case ToolConfirmationOutcome.ProceedAlwaysTool:
- return ToolCallDecision.AUTO_ACCEPT;
- case ToolConfirmationOutcome.ModifyWithEditor:
- return ToolCallDecision.MODIFY;
- case ToolConfirmationOutcome.Cancel:
- default:
- return ToolCallDecision.REJECT;
- }
-}
+import {
+ getDecisionFromOutcome,
+ ToolCallDecision,
+} from './tool-call-decision.js';
export class StartSessionEvent {
'event.name': 'cli_config';
diff --git a/packages/core/src/telemetry/uiTelemetry.test.ts b/packages/core/src/telemetry/uiTelemetry.test.ts
index ac9727f1..cd509a8e 100644
--- a/packages/core/src/telemetry/uiTelemetry.test.ts
+++ b/packages/core/src/telemetry/uiTelemetry.test.ts
@@ -6,12 +6,8 @@
import { describe, it, expect, vi, beforeEach } from 'vitest';
import { UiTelemetryService } from './uiTelemetry.js';
-import {
- ApiErrorEvent,
- ApiResponseEvent,
- ToolCallEvent,
- ToolCallDecision,
-} from './types.js';
+import { ToolCallDecision } from './tool-call-decision.js';
+import { ApiErrorEvent, ApiResponseEvent, ToolCallEvent } from './types.js';
import {
EVENT_API_ERROR,
EVENT_API_RESPONSE,
diff --git a/packages/core/src/telemetry/uiTelemetry.ts b/packages/core/src/telemetry/uiTelemetry.ts
index fbf5b8dc..8d1b044f 100644
--- a/packages/core/src/telemetry/uiTelemetry.ts
+++ b/packages/core/src/telemetry/uiTelemetry.ts
@@ -11,12 +11,8 @@ import {
EVENT_TOOL_CALL,
} from './constants.js';
-import {
- ApiErrorEvent,
- ApiResponseEvent,
- ToolCallEvent,
- ToolCallDecision,
-} from './types.js';
+import { ToolCallDecision } from './tool-call-decision.js';
+import { ApiErrorEvent, ApiResponseEvent, ToolCallEvent } from './types.js';
export type UiEvent =
| (ApiResponseEvent & { 'event.name': typeof EVENT_API_RESPONSE })