@google/gemini-cli-core 0.1.18 → 0.1.19-nightly.250813.9d023be1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +199 -132
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/src/code_assist/converter.d.ts +3 -2
- package/dist/src/code_assist/converter.js +2 -2
- package/dist/src/code_assist/converter.js.map +1 -1
- package/dist/src/code_assist/converter.test.js +48 -1
- package/dist/src/code_assist/converter.test.js.map +1 -1
- package/dist/src/code_assist/oauth2.js +1 -1
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/code_assist/server.test.js +4 -1
- package/dist/src/code_assist/server.test.js.map +1 -1
- package/dist/src/code_assist/setup.js +4 -4
- package/dist/src/code_assist/setup.js.map +1 -1
- package/dist/src/config/config.d.ts +19 -3
- package/dist/src/config/config.js +29 -10
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +34 -0
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/core/client.d.ts +5 -4
- package/dist/src/core/client.js +163 -117
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +282 -37
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/contentGenerator.js +3 -2
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +3 -2
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +21 -8
- package/dist/src/core/coreToolScheduler.js +170 -61
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/coreToolScheduler.test.js +181 -37
- package/dist/src/core/coreToolScheduler.test.js.map +1 -1
- package/dist/src/core/geminiChat.d.ts +7 -6
- package/dist/src/core/geminiChat.js +43 -43
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/logger.d.ts +1 -0
- package/dist/src/core/logger.js +18 -0
- package/dist/src/core/logger.js.map +1 -1
- package/dist/src/core/logger.test.js +29 -0
- package/dist/src/core/logger.test.js.map +1 -1
- package/dist/src/core/loggingContentGenerator.d.ts +29 -0
- package/dist/src/core/loggingContentGenerator.js +97 -0
- package/dist/src/core/loggingContentGenerator.js.map +1 -0
- package/dist/src/core/nonInteractiveToolExecutor.js +20 -1
- package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
- package/dist/src/core/nonInteractiveToolExecutor.test.js +7 -31
- package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
- package/dist/src/core/subagent.d.ts +230 -0
- package/dist/src/core/subagent.js +447 -0
- package/dist/src/core/subagent.js.map +1 -0
- package/dist/src/core/subagent.test.d.ts +6 -0
- package/dist/src/core/subagent.test.js +515 -0
- package/dist/src/core/subagent.test.js.map +1 -0
- package/dist/src/core/turn.js +1 -0
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/core/turn.test.js +4 -0
- package/dist/src/core/turn.test.js.map +1 -1
- package/dist/src/ide/detect-ide.d.ts +10 -2
- package/dist/src/ide/detect-ide.js +48 -5
- package/dist/src/ide/detect-ide.js.map +1 -1
- package/dist/src/ide/ide-client.d.ts +20 -1
- package/dist/src/ide/ide-client.js +145 -19
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/ide/ide-installer.js +1 -26
- package/dist/src/ide/ide-installer.js.map +1 -1
- package/dist/src/ide/ide-installer.test.js +0 -4
- package/dist/src/ide/ide-installer.test.js.map +1 -1
- package/dist/src/ide/ideContext.d.ts +95 -0
- package/dist/src/ide/ideContext.js +45 -0
- package/dist/src/ide/ideContext.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/google-auth-provider.js +9 -0
- package/dist/src/mcp/google-auth-provider.js.map +1 -1
- package/dist/src/mcp/google-auth-provider.test.js +45 -10
- package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
- package/dist/src/mocks/msw.d.ts +6 -0
- package/dist/src/mocks/msw.js +8 -0
- package/dist/src/mocks/msw.js.map +1 -0
- package/dist/src/services/loopDetectionService.js +14 -11
- package/dist/src/services/loopDetectionService.js.map +1 -1
- package/dist/src/services/loopDetectionService.test.js +191 -0
- package/dist/src/services/loopDetectionService.test.js.map +1 -1
- package/dist/src/services/shellExecutionService.js +29 -9
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.test.js +8 -0
- package/dist/src/services/shellExecutionService.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +48 -6
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +211 -116
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +6 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +219 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -0
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +5 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +8 -0
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/dist/src/telemetry/loggers.test.circular.js +7 -2
- package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +7 -2
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/metrics.d.ts +3 -2
- package/dist/src/telemetry/metrics.js +7 -1
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js +50 -0
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/telemetry/tool-call-decision.d.ts +13 -0
- package/dist/src/telemetry/tool-call-decision.js +29 -0
- package/dist/src/telemetry/tool-call-decision.js.map +1 -0
- package/dist/src/telemetry/types.d.ts +4 -7
- package/dist/src/telemetry/types.js +17 -21
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.d.ts +4 -1
- package/dist/src/telemetry/uiTelemetry.js +3 -1
- package/dist/src/telemetry/uiTelemetry.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.test.js +13 -2
- package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
- package/dist/src/test-utils/config.d.ts +16 -0
- package/dist/src/test-utils/config.js +32 -0
- package/dist/src/test-utils/config.js.map +1 -0
- package/dist/src/test-utils/tools.d.ts +23 -0
- package/dist/src/test-utils/tools.js +41 -0
- package/dist/src/test-utils/tools.js.map +1 -0
- package/dist/src/tools/diffOptions.d.ts +2 -0
- package/dist/src/tools/diffOptions.js +28 -0
- package/dist/src/tools/diffOptions.js.map +1 -1
- package/dist/src/tools/diffOptions.test.d.ts +6 -0
- package/dist/src/tools/diffOptions.test.js +119 -0
- package/dist/src/tools/diffOptions.test.js.map +1 -0
- package/dist/src/tools/edit.d.ts +9 -33
- package/dist/src/tools/edit.js +142 -132
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/edit.test.js +115 -51
- package/dist/src/tools/edit.test.js.map +1 -1
- package/dist/src/tools/glob.d.ts +3 -10
- package/dist/src/tools/glob.js +85 -89
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/glob.test.js +22 -12
- package/dist/src/tools/glob.test.js.map +1 -1
- package/dist/src/tools/grep.d.ts +3 -35
- package/dist/src/tools/grep.js +111 -83
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/grep.test.js +40 -23
- package/dist/src/tools/grep.test.js.map +1 -1
- package/dist/src/tools/ls.js +8 -9
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +14 -3
- package/dist/src/tools/mcp-client.js +82 -6
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-client.test.js +340 -5
- package/dist/src/tools/mcp-client.test.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +3 -8
- package/dist/src/tools/mcp-tool.js +5 -18
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +2 -2
- package/dist/src/tools/memoryTool.js +5 -5
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/memoryTool.test.js +10 -1
- package/dist/src/tools/memoryTool.test.js.map +1 -1
- package/dist/src/tools/modifiable-tool.d.ts +8 -5
- package/dist/src/tools/modifiable-tool.js +4 -1
- package/dist/src/tools/modifiable-tool.js.map +1 -1
- package/dist/src/tools/modifiable-tool.test.js +3 -3
- package/dist/src/tools/modifiable-tool.test.js.map +1 -1
- package/dist/src/tools/read-file.d.ts +4 -6
- package/dist/src/tools/read-file.js +92 -45
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-file.test.js +192 -130
- package/dist/src/tools/read-file.test.js.map +1 -1
- package/dist/src/tools/read-many-files.js +25 -20
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/read-many-files.test.js +22 -11
- package/dist/src/tools/read-many-files.test.js.map +1 -1
- package/dist/src/tools/shell.js +11 -7
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +21 -0
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/tool-error.d.ts +4 -0
- package/dist/src/tools/tool-error.js +4 -0
- package/dist/src/tools/tool-error.js.map +1 -1
- package/dist/src/tools/tool-registry.d.ts +12 -20
- package/dist/src/tools/tool-registry.js +23 -76
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tool-registry.test.js +19 -192
- package/dist/src/tools/tool-registry.test.js.map +1 -1
- package/dist/src/tools/tools.d.ts +144 -43
- package/dist/src/tools/tools.js +181 -11
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/tools.test.d.ts +6 -0
- package/dist/src/tools/tools.test.js +117 -0
- package/dist/src/tools/tools.test.js.map +1 -0
- package/dist/src/tools/web-fetch.js +3 -4
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-search.js +1 -1
- package/dist/src/tools/web-search.js.map +1 -1
- package/dist/src/tools/write-file.d.ts +6 -2
- package/dist/src/tools/write-file.js +84 -20
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/tools/write-file.test.js +112 -8
- package/dist/src/tools/write-file.test.js.map +1 -1
- package/dist/src/utils/bfsFileSearch.test.js +28 -56
- package/dist/src/utils/bfsFileSearch.test.js.map +1 -1
- package/dist/src/utils/editCorrector.js +8 -9
- package/dist/src/utils/editCorrector.js.map +1 -1
- package/dist/src/utils/environmentContext.d.ts +21 -0
- package/dist/src/utils/environmentContext.js +90 -0
- package/dist/src/utils/environmentContext.js.map +1 -0
- package/dist/src/utils/environmentContext.test.d.ts +6 -0
- package/dist/src/utils/environmentContext.test.js +139 -0
- package/dist/src/utils/environmentContext.test.js.map +1 -0
- package/dist/src/utils/fileUtils.d.ts +7 -0
- package/dist/src/utils/fileUtils.js +15 -12
- package/dist/src/utils/fileUtils.js.map +1 -1
- package/dist/src/utils/fileUtils.test.js +6 -5
- package/dist/src/utils/fileUtils.test.js.map +1 -1
- package/dist/src/utils/filesearch/crawlCache.d.ts +1 -1
- package/dist/src/utils/filesearch/crawlCache.js +4 -1
- package/dist/src/utils/filesearch/crawlCache.js.map +1 -1
- package/dist/src/utils/filesearch/crawlCache.test.js +10 -0
- package/dist/src/utils/filesearch/crawlCache.test.js.map +1 -1
- package/dist/src/utils/filesearch/fileSearch.d.ts +2 -0
- package/dist/src/utils/filesearch/fileSearch.js +32 -7
- package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
- package/dist/src/utils/filesearch/fileSearch.test.js +139 -0
- package/dist/src/utils/filesearch/fileSearch.test.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.js +4 -1
- package/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/dist/src/utils/nextSpeakerChecker.js +5 -6
- package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
- package/dist/src/utils/nextSpeakerChecker.test.js +2 -2
- package/dist/src/utils/nextSpeakerChecker.test.js.map +1 -1
- package/dist/src/utils/schemaValidator.d.ts +1 -8
- package/dist/src/utils/schemaValidator.js +1 -32
- package/dist/src/utils/schemaValidator.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -1
- package/dist/google-gemini-cli-core-0.1.17.tgz +0 -0
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { vi, describe, it, expect, afterEach, beforeAll, afterAll, } from 'vitest';
|
|
7
|
+
import { ClearcutLogger, TEST_ONLY } from './clearcut-logger.js';
|
|
8
|
+
import * as userAccount from '../../utils/user_account.js';
|
|
9
|
+
import * as userId from '../../utils/user_id.js';
|
|
10
|
+
import { EventMetadataKey } from './event-metadata-key.js';
|
|
11
|
+
import { makeFakeConfig } from '../../test-utils/config.js';
|
|
12
|
+
import { http, HttpResponse } from 'msw';
|
|
13
|
+
import { server } from '../../mocks/msw.js';
|
|
14
|
+
vi.mock('../../utils/user_account');
|
|
15
|
+
vi.mock('../../utils/user_id');
|
|
16
|
+
const mockUserAccount = vi.mocked(userAccount);
|
|
17
|
+
const mockUserId = vi.mocked(userId);
|
|
18
|
+
// TODO(richieforeman): Consider moving this to test setup globally.
|
|
19
|
+
beforeAll(() => {
|
|
20
|
+
server.listen({});
|
|
21
|
+
});
|
|
22
|
+
afterEach(() => {
|
|
23
|
+
server.resetHandlers();
|
|
24
|
+
});
|
|
25
|
+
afterAll(() => {
|
|
26
|
+
server.close();
|
|
27
|
+
});
|
|
28
|
+
describe('ClearcutLogger', () => {
|
|
29
|
+
const NEXT_WAIT_MS = 1234;
|
|
30
|
+
const CLEARCUT_URL = 'https://play.googleapis.com/log';
|
|
31
|
+
const MOCK_DATE = new Date('2025-01-02T00:00:00.000Z');
|
|
32
|
+
const EXAMPLE_RESPONSE = `["${NEXT_WAIT_MS}",null,[[["ANDROID_BACKUP",0],["BATTERY_STATS",0],["SMART_SETUP",0],["TRON",0]],-3334737594024971225],[]]`;
|
|
33
|
+
// A helper to get the internal events array for testing
|
|
34
|
+
const getEvents = (l) => l['events'].toArray();
|
|
35
|
+
const getEventsSize = (l) => l['events'].size;
|
|
36
|
+
const requeueFailedEvents = (l, events) => l['requeueFailedEvents'](events);
|
|
37
|
+
function setup({ config = {}, lifetimeGoogleAccounts = 1, cachedGoogleAccount = 'test@google.com', installationId = 'test-installation-id', } = {}) {
|
|
38
|
+
server.resetHandlers(http.post(CLEARCUT_URL, () => HttpResponse.text(EXAMPLE_RESPONSE)));
|
|
39
|
+
vi.useFakeTimers();
|
|
40
|
+
vi.setSystemTime(MOCK_DATE);
|
|
41
|
+
const loggerConfig = makeFakeConfig({
|
|
42
|
+
...config,
|
|
43
|
+
});
|
|
44
|
+
ClearcutLogger.clearInstance();
|
|
45
|
+
mockUserAccount.getCachedGoogleAccount.mockReturnValue(cachedGoogleAccount);
|
|
46
|
+
mockUserAccount.getLifetimeGoogleAccounts.mockReturnValue(lifetimeGoogleAccounts);
|
|
47
|
+
mockUserId.getInstallationId.mockReturnValue(installationId);
|
|
48
|
+
const logger = ClearcutLogger.getInstance(loggerConfig);
|
|
49
|
+
return { logger, loggerConfig };
|
|
50
|
+
}
|
|
51
|
+
afterEach(() => {
|
|
52
|
+
ClearcutLogger.clearInstance();
|
|
53
|
+
vi.useRealTimers();
|
|
54
|
+
vi.restoreAllMocks();
|
|
55
|
+
});
|
|
56
|
+
describe('getInstance', () => {
|
|
57
|
+
it.each([
|
|
58
|
+
{ usageStatisticsEnabled: false, expectedValue: undefined },
|
|
59
|
+
{
|
|
60
|
+
usageStatisticsEnabled: true,
|
|
61
|
+
expectedValue: expect.any(ClearcutLogger),
|
|
62
|
+
},
|
|
63
|
+
])('returns an instance if usage statistics are enabled', ({ usageStatisticsEnabled, expectedValue }) => {
|
|
64
|
+
ClearcutLogger.clearInstance();
|
|
65
|
+
const { logger } = setup({
|
|
66
|
+
config: {
|
|
67
|
+
usageStatisticsEnabled,
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
expect(logger).toEqual(expectedValue);
|
|
71
|
+
});
|
|
72
|
+
it('is a singleton', () => {
|
|
73
|
+
ClearcutLogger.clearInstance();
|
|
74
|
+
const { loggerConfig } = setup();
|
|
75
|
+
const logger1 = ClearcutLogger.getInstance(loggerConfig);
|
|
76
|
+
const logger2 = ClearcutLogger.getInstance(loggerConfig);
|
|
77
|
+
expect(logger1).toBe(logger2);
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
describe('createLogEvent', () => {
|
|
81
|
+
it('logs the total number of google accounts', () => {
|
|
82
|
+
const { logger } = setup({
|
|
83
|
+
lifetimeGoogleAccounts: 9001,
|
|
84
|
+
});
|
|
85
|
+
const event = logger?.createLogEvent('abc', []);
|
|
86
|
+
expect(event?.event_metadata[0][0]).toEqual({
|
|
87
|
+
gemini_cli_key: EventMetadataKey.GEMINI_CLI_GOOGLE_ACCOUNTS_COUNT,
|
|
88
|
+
value: '9001',
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
it('logs the current surface', () => {
|
|
92
|
+
const { logger } = setup({});
|
|
93
|
+
const event = logger?.createLogEvent('abc', []);
|
|
94
|
+
expect(event?.event_metadata[0][1]).toEqual({
|
|
95
|
+
gemini_cli_key: EventMetadataKey.GEMINI_CLI_SURFACE,
|
|
96
|
+
value: 'SURFACE_NOT_SET',
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
describe('enqueueLogEvent', () => {
|
|
101
|
+
it('should add events to the queue', () => {
|
|
102
|
+
const { logger } = setup();
|
|
103
|
+
logger.enqueueLogEvent({ test: 'event1' });
|
|
104
|
+
expect(getEventsSize(logger)).toBe(1);
|
|
105
|
+
});
|
|
106
|
+
it('should evict the oldest event when the queue is full', () => {
|
|
107
|
+
const { logger } = setup();
|
|
108
|
+
for (let i = 0; i < TEST_ONLY.MAX_EVENTS; i++) {
|
|
109
|
+
logger.enqueueLogEvent({ event_id: i });
|
|
110
|
+
}
|
|
111
|
+
expect(getEventsSize(logger)).toBe(TEST_ONLY.MAX_EVENTS);
|
|
112
|
+
const firstEvent = JSON.parse(getEvents(logger)[0][0].source_extension_json);
|
|
113
|
+
expect(firstEvent.event_id).toBe(0);
|
|
114
|
+
// This should push out the first event
|
|
115
|
+
logger.enqueueLogEvent({ event_id: TEST_ONLY.MAX_EVENTS });
|
|
116
|
+
expect(getEventsSize(logger)).toBe(TEST_ONLY.MAX_EVENTS);
|
|
117
|
+
const newFirstEvent = JSON.parse(getEvents(logger)[0][0].source_extension_json);
|
|
118
|
+
expect(newFirstEvent.event_id).toBe(1);
|
|
119
|
+
const lastEvent = JSON.parse(getEvents(logger)[TEST_ONLY.MAX_EVENTS - 1][0].source_extension_json);
|
|
120
|
+
expect(lastEvent.event_id).toBe(TEST_ONLY.MAX_EVENTS);
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
describe('flushToClearcut', () => {
|
|
124
|
+
it('allows for usage with a configured proxy agent', async () => {
|
|
125
|
+
const { logger } = setup({
|
|
126
|
+
config: {
|
|
127
|
+
proxy: 'http://mycoolproxy.whatever.com:3128',
|
|
128
|
+
},
|
|
129
|
+
});
|
|
130
|
+
logger.enqueueLogEvent({ event_id: 1 });
|
|
131
|
+
const response = await logger.flushToClearcut();
|
|
132
|
+
expect(response.nextRequestWaitMs).toBe(NEXT_WAIT_MS);
|
|
133
|
+
});
|
|
134
|
+
it('should clear events on successful flush', async () => {
|
|
135
|
+
const { logger } = setup();
|
|
136
|
+
logger.enqueueLogEvent({ event_id: 1 });
|
|
137
|
+
const response = await logger.flushToClearcut();
|
|
138
|
+
expect(getEvents(logger)).toEqual([]);
|
|
139
|
+
expect(response.nextRequestWaitMs).toBe(NEXT_WAIT_MS);
|
|
140
|
+
});
|
|
141
|
+
it('should handle a network error and requeue events', async () => {
|
|
142
|
+
const { logger } = setup();
|
|
143
|
+
server.resetHandlers(http.post(CLEARCUT_URL, () => HttpResponse.error()));
|
|
144
|
+
logger.enqueueLogEvent({ event_id: 1 });
|
|
145
|
+
logger.enqueueLogEvent({ event_id: 2 });
|
|
146
|
+
expect(getEventsSize(logger)).toBe(2);
|
|
147
|
+
const x = logger.flushToClearcut();
|
|
148
|
+
await x;
|
|
149
|
+
expect(getEventsSize(logger)).toBe(2);
|
|
150
|
+
const events = getEvents(logger);
|
|
151
|
+
expect(JSON.parse(events[0][0].source_extension_json).event_id).toBe(1);
|
|
152
|
+
});
|
|
153
|
+
it('should handle an HTTP error and requeue events', async () => {
|
|
154
|
+
const { logger } = setup();
|
|
155
|
+
server.resetHandlers(http.post(CLEARCUT_URL, () => new HttpResponse({ 'the system is down': true }, {
|
|
156
|
+
status: 500,
|
|
157
|
+
})));
|
|
158
|
+
logger.enqueueLogEvent({ event_id: 1 });
|
|
159
|
+
logger.enqueueLogEvent({ event_id: 2 });
|
|
160
|
+
expect(getEvents(logger).length).toBe(2);
|
|
161
|
+
await logger.flushToClearcut();
|
|
162
|
+
expect(getEvents(logger).length).toBe(2);
|
|
163
|
+
const events = getEvents(logger);
|
|
164
|
+
expect(JSON.parse(events[0][0].source_extension_json).event_id).toBe(1);
|
|
165
|
+
});
|
|
166
|
+
});
|
|
167
|
+
describe('requeueFailedEvents logic', () => {
|
|
168
|
+
it('should limit the number of requeued events to max_retry_events', () => {
|
|
169
|
+
const { logger } = setup();
|
|
170
|
+
const maxRetryEvents = TEST_ONLY.MAX_RETRY_EVENTS;
|
|
171
|
+
const eventsToLogCount = maxRetryEvents + 5;
|
|
172
|
+
const eventsToSend = [];
|
|
173
|
+
for (let i = 0; i < eventsToLogCount; i++) {
|
|
174
|
+
eventsToSend.push([
|
|
175
|
+
{
|
|
176
|
+
event_time_ms: Date.now(),
|
|
177
|
+
source_extension_json: JSON.stringify({ event_id: i }),
|
|
178
|
+
},
|
|
179
|
+
]);
|
|
180
|
+
}
|
|
181
|
+
requeueFailedEvents(logger, eventsToSend);
|
|
182
|
+
expect(getEventsSize(logger)).toBe(maxRetryEvents);
|
|
183
|
+
const firstRequeuedEvent = JSON.parse(getEvents(logger)[0][0].source_extension_json);
|
|
184
|
+
// The last `maxRetryEvents` are kept. The oldest of those is at index `eventsToLogCount - maxRetryEvents`.
|
|
185
|
+
expect(firstRequeuedEvent.event_id).toBe(eventsToLogCount - maxRetryEvents);
|
|
186
|
+
});
|
|
187
|
+
it('should not requeue more events than available space in the queue', () => {
|
|
188
|
+
const { logger } = setup();
|
|
189
|
+
const maxEvents = TEST_ONLY.MAX_EVENTS;
|
|
190
|
+
const spaceToLeave = 5;
|
|
191
|
+
const initialEventCount = maxEvents - spaceToLeave;
|
|
192
|
+
for (let i = 0; i < initialEventCount; i++) {
|
|
193
|
+
logger.enqueueLogEvent({ event_id: `initial_${i}` });
|
|
194
|
+
}
|
|
195
|
+
expect(getEventsSize(logger)).toBe(initialEventCount);
|
|
196
|
+
const failedEventsCount = 10; // More than spaceToLeave
|
|
197
|
+
const eventsToSend = [];
|
|
198
|
+
for (let i = 0; i < failedEventsCount; i++) {
|
|
199
|
+
eventsToSend.push([
|
|
200
|
+
{
|
|
201
|
+
event_time_ms: Date.now(),
|
|
202
|
+
source_extension_json: JSON.stringify({ event_id: `failed_${i}` }),
|
|
203
|
+
},
|
|
204
|
+
]);
|
|
205
|
+
}
|
|
206
|
+
requeueFailedEvents(logger, eventsToSend);
|
|
207
|
+
// availableSpace is 5. eventsToRequeue is min(10, 5) = 5.
|
|
208
|
+
// Total size should be initialEventCount + 5 = maxEvents.
|
|
209
|
+
expect(getEventsSize(logger)).toBe(maxEvents);
|
|
210
|
+
// The requeued events are the *last* 5 of the failed events.
|
|
211
|
+
// startIndex = max(0, 10 - 5) = 5.
|
|
212
|
+
// Loop unshifts events from index 9 down to 5.
|
|
213
|
+
// The first element in the deque is the one with id 'failed_5'.
|
|
214
|
+
const firstRequeuedEvent = JSON.parse(getEvents(logger)[0][0].source_extension_json);
|
|
215
|
+
expect(firstRequeuedEvent.event_id).toBe('failed_5');
|
|
216
|
+
});
|
|
217
|
+
});
|
|
218
|
+
});
|
|
219
|
+
//# sourceMappingURL=clearcut-logger.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clearcut-logger.test.js","sourceRoot":"","sources":["../../../../src/telemetry/clearcut-logger/clearcut-logger.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,6 +50,10 @@ export declare enum EventMetadataKey {
|
|
|
50
50
|
GEMINI_CLI_RESPONSE_FINISH_REASON = 43,
|
|
51
51
|
GEMINI_CLI_NEXT_SPEAKER_CHECK_RESULT = 44,
|
|
52
52
|
GEMINI_CLI_MALFORMED_JSON_RESPONSE_MODEL = 45,
|
|
53
|
-
GEMINI_CLI_IDE_CONNECTION_TYPE = 46
|
|
53
|
+
GEMINI_CLI_IDE_CONNECTION_TYPE = 46,
|
|
54
|
+
GEMINI_CLI_AI_ADDED_LINES = 47,
|
|
55
|
+
GEMINI_CLI_AI_REMOVED_LINES = 48,
|
|
56
|
+
GEMINI_CLI_USER_ADDED_LINES = 49,
|
|
57
|
+
GEMINI_CLI_USER_REMOVED_LINES = 50
|
|
54
58
|
}
|
|
55
59
|
export declare function getEventMetadataKey(keyName: string): EventMetadataKey | undefined;
|
|
@@ -138,6 +138,14 @@ export var EventMetadataKey;
|
|
|
138
138
|
// ===========================================================================
|
|
139
139
|
// Logs the type of the IDE connection.
|
|
140
140
|
EventMetadataKey[EventMetadataKey["GEMINI_CLI_IDE_CONNECTION_TYPE"] = 46] = "GEMINI_CLI_IDE_CONNECTION_TYPE";
|
|
141
|
+
// Logs AI added lines in edit/write tool response.
|
|
142
|
+
EventMetadataKey[EventMetadataKey["GEMINI_CLI_AI_ADDED_LINES"] = 47] = "GEMINI_CLI_AI_ADDED_LINES";
|
|
143
|
+
// Logs AI removed lines in edit/write tool response.
|
|
144
|
+
EventMetadataKey[EventMetadataKey["GEMINI_CLI_AI_REMOVED_LINES"] = 48] = "GEMINI_CLI_AI_REMOVED_LINES";
|
|
145
|
+
// Logs user added lines in edit/write tool response.
|
|
146
|
+
EventMetadataKey[EventMetadataKey["GEMINI_CLI_USER_ADDED_LINES"] = 49] = "GEMINI_CLI_USER_ADDED_LINES";
|
|
147
|
+
// Logs user removed lines in edit/write tool response.
|
|
148
|
+
EventMetadataKey[EventMetadataKey["GEMINI_CLI_USER_REMOVED_LINES"] = 50] = "GEMINI_CLI_USER_REMOVED_LINES";
|
|
141
149
|
})(EventMetadataKey || (EventMetadataKey = {}));
|
|
142
150
|
export function getEventMetadataKey(keyName) {
|
|
143
151
|
// Access the enum member by its string name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-metadata-key.js","sourceRoot":"","sources":["../../../../src/telemetry/clearcut-logger/event-metadata-key.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,0DAA0D;AAC1D,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"event-metadata-key.js","sourceRoot":"","sources":["../../../../src/telemetry/clearcut-logger/event-metadata-key.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
import { describe, it, expect } from 'vitest';
|
|
10
10
|
import { logToolCall } from './loggers.js';
|
|
11
11
|
import { ToolCallEvent } from './types.js';
|
|
12
|
+
import { MockTool } from '../test-utils/tools.js';
|
|
12
13
|
describe('Circular Reference Handling', () => {
|
|
13
14
|
it('should handle circular references in tool function arguments', () => {
|
|
14
15
|
// Create a mock config
|
|
@@ -45,11 +46,13 @@ describe('Circular Reference Handling', () => {
|
|
|
45
46
|
error: undefined, // undefined means success
|
|
46
47
|
errorType: undefined,
|
|
47
48
|
};
|
|
49
|
+
const tool = new MockTool('mock-tool');
|
|
48
50
|
const mockCompletedToolCall = {
|
|
49
51
|
status: 'success',
|
|
50
52
|
request: mockRequest,
|
|
51
53
|
response: mockResponse,
|
|
52
|
-
tool
|
|
54
|
+
tool,
|
|
55
|
+
invocation: tool.build({}),
|
|
53
56
|
durationMs: 100,
|
|
54
57
|
};
|
|
55
58
|
// Create a tool call event with circular references in function_args
|
|
@@ -86,11 +89,13 @@ describe('Circular Reference Handling', () => {
|
|
|
86
89
|
error: undefined, // undefined means success
|
|
87
90
|
errorType: undefined,
|
|
88
91
|
};
|
|
92
|
+
const tool = new MockTool('mock-tool');
|
|
89
93
|
const mockCompletedToolCall = {
|
|
90
94
|
status: 'success',
|
|
91
95
|
request: mockRequest,
|
|
92
96
|
response: mockResponse,
|
|
93
|
-
tool
|
|
97
|
+
tool,
|
|
98
|
+
invocation: tool.build({}),
|
|
94
99
|
durationMs: 100,
|
|
95
100
|
};
|
|
96
101
|
const event = new ToolCallEvent(mockCompletedToolCall);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loggers.test.circular.js","sourceRoot":"","sources":["../../../src/telemetry/loggers.test.circular.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"loggers.test.circular.js","sourceRoot":"","sources":["../../../src/telemetry/loggers.test.circular.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,8 @@ import { logs } from '@opentelemetry/api-logs';
|
|
|
8
8
|
import { SemanticAttributes } from '@opentelemetry/semantic-conventions';
|
|
9
9
|
import { EVENT_API_REQUEST, EVENT_API_RESPONSE, EVENT_CLI_CONFIG, EVENT_TOOL_CALL, EVENT_USER_PROMPT, EVENT_FLASH_FALLBACK, } from './constants.js';
|
|
10
10
|
import { logApiRequest, logApiResponse, logCliConfiguration, logUserPrompt, logToolCall, logFlashFallback, } from './loggers.js';
|
|
11
|
-
import {
|
|
11
|
+
import { ToolCallDecision } from './tool-call-decision.js';
|
|
12
|
+
import { ApiRequestEvent, ApiResponseEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, } from './types.js';
|
|
12
13
|
import * as metrics from './metrics.js';
|
|
13
14
|
import * as sdk from './sdk.js';
|
|
14
15
|
import { vi, describe, beforeEach, it, expect } from 'vitest';
|
|
@@ -308,6 +309,7 @@ describe('loggers', () => {
|
|
|
308
309
|
mockLogger.emit.mockReset();
|
|
309
310
|
});
|
|
310
311
|
it('should log a tool call with all fields', () => {
|
|
312
|
+
const tool = new EditTool(mockConfig);
|
|
311
313
|
const call = {
|
|
312
314
|
status: 'success',
|
|
313
315
|
request: {
|
|
@@ -327,7 +329,8 @@ describe('loggers', () => {
|
|
|
327
329
|
error: undefined,
|
|
328
330
|
errorType: undefined,
|
|
329
331
|
},
|
|
330
|
-
tool
|
|
332
|
+
tool,
|
|
333
|
+
invocation: {},
|
|
331
334
|
durationMs: 100,
|
|
332
335
|
outcome: ToolConfirmationOutcome.ProceedOnce,
|
|
333
336
|
};
|
|
@@ -428,6 +431,7 @@ describe('loggers', () => {
|
|
|
428
431
|
},
|
|
429
432
|
outcome: ToolConfirmationOutcome.ModifyWithEditor,
|
|
430
433
|
tool: new EditTool(mockConfig),
|
|
434
|
+
invocation: {},
|
|
431
435
|
durationMs: 100,
|
|
432
436
|
};
|
|
433
437
|
const event = new ToolCallEvent(call);
|
|
@@ -477,6 +481,7 @@ describe('loggers', () => {
|
|
|
477
481
|
errorType: undefined,
|
|
478
482
|
},
|
|
479
483
|
tool: new EditTool(mockConfig),
|
|
484
|
+
invocation: {},
|
|
480
485
|
durationMs: 100,
|
|
481
486
|
};
|
|
482
487
|
const event = new ToolCallEvent(call);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loggers.test.js","sourceRoot":"","sources":["../../../src/telemetry/loggers.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loggers.test.js","sourceRoot":"","sources":["../../../src/telemetry/loggers.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Meter } from '@opentelemetry/api';
|
|
7
7
|
import { Config } from '../config/config.js';
|
|
8
|
+
import { DiffStat } from '../tools/tools.js';
|
|
8
9
|
export declare enum FileOperation {
|
|
9
10
|
CREATE = "create",
|
|
10
11
|
READ = "read",
|
|
@@ -12,8 +13,8 @@ export declare enum FileOperation {
|
|
|
12
13
|
}
|
|
13
14
|
export declare function getMeter(): Meter | undefined;
|
|
14
15
|
export declare function initializeMetrics(config: Config): void;
|
|
15
|
-
export declare function recordToolCallMetrics(config: Config, functionName: string, durationMs: number, success: boolean, decision?: 'accept' | 'reject' | 'modify'): void;
|
|
16
|
+
export declare function recordToolCallMetrics(config: Config, functionName: string, durationMs: number, success: boolean, decision?: 'accept' | 'reject' | 'modify' | 'auto_accept'): void;
|
|
16
17
|
export declare function recordTokenUsageMetrics(config: Config, model: string, tokenCount: number, type: 'input' | 'output' | 'thought' | 'cache' | 'tool'): void;
|
|
17
18
|
export declare function recordApiResponseMetrics(config: Config, model: string, durationMs: number, statusCode?: number | string, error?: string): void;
|
|
18
19
|
export declare function recordApiErrorMetrics(config: Config, model: string, durationMs: number, statusCode?: number | string, errorType?: string): void;
|
|
19
|
-
export declare function recordFileOperationMetric(config: Config, operation: FileOperation, lines?: number, mimetype?: string, extension?: string): void;
|
|
20
|
+
export declare function recordFileOperationMetric(config: Config, operation: FileOperation, lines?: number, mimetype?: string, extension?: string, diffStat?: DiffStat): void;
|
|
@@ -126,7 +126,7 @@ export function recordApiErrorMetrics(config, model, durationMs, statusCode, err
|
|
|
126
126
|
model,
|
|
127
127
|
});
|
|
128
128
|
}
|
|
129
|
-
export function recordFileOperationMetric(config, operation, lines, mimetype, extension) {
|
|
129
|
+
export function recordFileOperationMetric(config, operation, lines, mimetype, extension, diffStat) {
|
|
130
130
|
if (!fileOperationCounter || !isMetricsInitialized)
|
|
131
131
|
return;
|
|
132
132
|
const attributes = {
|
|
@@ -139,6 +139,12 @@ export function recordFileOperationMetric(config, operation, lines, mimetype, ex
|
|
|
139
139
|
attributes.mimetype = mimetype;
|
|
140
140
|
if (extension !== undefined)
|
|
141
141
|
attributes.extension = extension;
|
|
142
|
+
if (diffStat !== undefined) {
|
|
143
|
+
attributes.ai_added_lines = diffStat.ai_added_lines;
|
|
144
|
+
attributes.ai_removed_lines = diffStat.ai_removed_lines;
|
|
145
|
+
attributes.user_added_lines = diffStat.user_added_lines;
|
|
146
|
+
attributes.user_removed_lines = diffStat.user_removed_lines;
|
|
147
|
+
}
|
|
142
148
|
fileOperationCounter.add(1, attributes);
|
|
143
149
|
}
|
|
144
150
|
//# sourceMappingURL=metrics.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/telemetry/metrics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,OAAO,EAEP,SAAS,GAIV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/telemetry/metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -157,6 +157,56 @@ describe('Telemetry Metrics', () => {
|
|
|
157
157
|
mimetype: 'application/javascript',
|
|
158
158
|
});
|
|
159
159
|
});
|
|
160
|
+
it('should include diffStat when provided', () => {
|
|
161
|
+
initializeMetricsModule(mockConfig);
|
|
162
|
+
mockCounterAddFn.mockClear();
|
|
163
|
+
const diffStat = {
|
|
164
|
+
ai_added_lines: 5,
|
|
165
|
+
ai_removed_lines: 2,
|
|
166
|
+
user_added_lines: 3,
|
|
167
|
+
user_removed_lines: 1,
|
|
168
|
+
};
|
|
169
|
+
recordFileOperationMetricModule(mockConfig, FileOperation.UPDATE, undefined, undefined, undefined, diffStat);
|
|
170
|
+
expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
|
|
171
|
+
'session.id': 'test-session-id',
|
|
172
|
+
operation: FileOperation.UPDATE,
|
|
173
|
+
ai_added_lines: 5,
|
|
174
|
+
ai_removed_lines: 2,
|
|
175
|
+
user_added_lines: 3,
|
|
176
|
+
user_removed_lines: 1,
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
it('should not include diffStat attributes when diffStat is not provided', () => {
|
|
180
|
+
initializeMetricsModule(mockConfig);
|
|
181
|
+
mockCounterAddFn.mockClear();
|
|
182
|
+
recordFileOperationMetricModule(mockConfig, FileOperation.UPDATE, 10, 'text/plain', 'txt', undefined);
|
|
183
|
+
expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
|
|
184
|
+
'session.id': 'test-session-id',
|
|
185
|
+
operation: FileOperation.UPDATE,
|
|
186
|
+
lines: 10,
|
|
187
|
+
mimetype: 'text/plain',
|
|
188
|
+
extension: 'txt',
|
|
189
|
+
});
|
|
190
|
+
});
|
|
191
|
+
it('should handle diffStat with all zero values', () => {
|
|
192
|
+
initializeMetricsModule(mockConfig);
|
|
193
|
+
mockCounterAddFn.mockClear();
|
|
194
|
+
const diffStat = {
|
|
195
|
+
ai_added_lines: 0,
|
|
196
|
+
ai_removed_lines: 0,
|
|
197
|
+
user_added_lines: 0,
|
|
198
|
+
user_removed_lines: 0,
|
|
199
|
+
};
|
|
200
|
+
recordFileOperationMetricModule(mockConfig, FileOperation.UPDATE, undefined, undefined, undefined, diffStat);
|
|
201
|
+
expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
|
|
202
|
+
'session.id': 'test-session-id',
|
|
203
|
+
operation: FileOperation.UPDATE,
|
|
204
|
+
ai_added_lines: 0,
|
|
205
|
+
ai_removed_lines: 0,
|
|
206
|
+
user_added_lines: 0,
|
|
207
|
+
user_removed_lines: 0,
|
|
208
|
+
});
|
|
209
|
+
});
|
|
160
210
|
});
|
|
161
211
|
});
|
|
162
212
|
//# sourceMappingURL=metrics.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../../src/telemetry/metrics.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../../src/telemetry/metrics.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAa,MAAM,QAAQ,CAAC;AASzE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,gBAAgB,GAElB,EAAE,CAAC,EAAE,EAAE,CAAC;AACZ,MAAM,qBAAqB,GAEvB,EAAE,CAAC,EAAE,EAAE,CAAC;AAEZ,MAAM,mBAAmB,GACvB,EAAE,CAAC,EAAE,EAAE,CAAC;AACV,MAAM,qBAAqB,GAEvB,EAAE,CAAC,EAAE,EAAE,CAAC;AAEZ,MAAM,mBAAmB,GAAG;IAC1B,GAAG,EAAE,gBAAgB;CACA,CAAC;AAExB,MAAM,qBAAqB,GAAG;IAC5B,MAAM,EAAE,qBAAqB;CACN,CAAC;AAE1B,MAAM,iBAAiB,GAAG;IACxB,aAAa,EAAE,mBAAmB,CAAC,eAAe,CAAC,mBAAmB,CAAC;IACvE,eAAe,EAAE,qBAAqB,CAAC,eAAe,CAAC,qBAAqB,CAAC;CAC1D,CAAC;AAEtB,SAAS,uBAAuB;IAC9B,OAAO;QACL,OAAO,EAAE;YACP,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;SAClB;QACD,SAAS,EAAE;YACT,GAAG,EAAE,CAAC;SACP;KACF,CAAC;AACJ,CAAC;AAED,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,CAAC;AAEvD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,IAAI,uBAAwE,CAAC;IAC7E,IAAI,6BAAoF,CAAC;IACzF,IAAI,+BAAwF,CAAC;IAE7F,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,EAAE,CAAC,YAAY,EAAE,CAAC;QAClB,EAAE,CAAC,MAAM,CAAC,oBAAoB,EAAE,GAAG,EAAE;YACnC,MAAM,SAAS,GAAG,uBAAuB,EAAE,CAAC;YAC3C,SAAS,CAAC,OAAO,CAAC,QAAiB,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;YACxE,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QACrD,uBAAuB,GAAG,eAAe,CAAC,iBAAiB,CAAC;QAC5D,6BAA6B,GAAG,eAAe,CAAC,uBAAuB,CAAC;QACxE,+BAA+B,GAAG,eAAe,CAAC,yBAAyB,CAAC;QAE5E,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAEzD,gBAAgB,CAAC,SAAS,EAAE,CAAC;QAC7B,mBAAmB,CAAC,SAAS,EAAE,CAAC;QAChC,qBAAqB,CAAC,SAAS,EAAE,CAAC;QAClC,qBAAqB,CAAC,SAAS,EAAE,CAAC;QACjC,aAAa,CAAC,OAAO,CAAC,QAAiB,CAAC,SAAS,EAAE,CAAC;QAEpD,aAAa,CAAC,OAAO,CAAC,QAAiB,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;QAC5E,mBAAmB,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QACzD,qBAAqB,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;SACjB,CAAC;QAEvB,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,6BAA6B,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YACtE,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC/D,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,6BAA6B,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YACtE,MAAM,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE;gBACrD,YAAY,EAAE,iBAAiB;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,GAAG,EAAE;gBACvD,YAAY,EAAE,iBAAiB;gBAC/B,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAE7B,6BAA6B,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;YACtE,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;gBAChD,YAAY,EAAE,iBAAiB;gBAC/B,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;YAEH,6BAA6B,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;YACvE,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;gBAChD,YAAY,EAAE,iBAAiB;gBAC/B,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;YAEH,6BAA6B,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;YACrE,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;gBAChD,YAAY,EAAE,iBAAiB;gBAC/B,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;YAEH,6BAA6B,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACrE,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;gBACjD,YAAY,EAAE,iBAAiB;gBAC/B,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,MAAM;aACb,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAE7B,6BAA6B,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YACxE,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;gBACjD,YAAY,EAAE,iBAAiB;gBAC/B,KAAK,EAAE,cAAc;gBACrB,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;SACjB,CAAC;QAEvB,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,+BAA+B,CAC7B,UAAU,EACV,aAAa,CAAC,MAAM,EACpB,EAAE,EACF,YAAY,EACZ,KAAK,CACN,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,+BAA+B,CAC7B,UAAU,EACV,aAAa,CAAC,MAAM,EACpB,EAAE,EACF,YAAY,EACZ,KAAK,CACN,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE;gBACrD,YAAY,EAAE,iBAAiB;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE;gBACrD,YAAY,EAAE,iBAAiB;gBAC/B,SAAS,EAAE,aAAa,CAAC,MAAM;gBAC/B,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAE7B,+BAA+B,CAAC,UAAU,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;YAChE,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,SAAS,EAAE,aAAa,CAAC,IAAI;aAC9B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAE7B,+BAA+B,CAC7B,UAAU,EACV,aAAa,CAAC,MAAM,EACpB,SAAS,EACT,wBAAwB,CACzB,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,SAAS,EAAE,aAAa,CAAC,MAAM;gBAC/B,QAAQ,EAAE,wBAAwB;aACnC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAE7B,MAAM,QAAQ,GAAG;gBACf,cAAc,EAAE,CAAC;gBACjB,gBAAgB,EAAE,CAAC;gBACnB,gBAAgB,EAAE,CAAC;gBACnB,kBAAkB,EAAE,CAAC;aACtB,CAAC;YAEF,+BAA+B,CAC7B,UAAU,EACV,aAAa,CAAC,MAAM,EACpB,SAAS,EACT,SAAS,EACT,SAAS,EACT,QAAQ,CACT,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,SAAS,EAAE,aAAa,CAAC,MAAM;gBAC/B,cAAc,EAAE,CAAC;gBACjB,gBAAgB,EAAE,CAAC;gBACnB,gBAAgB,EAAE,CAAC;gBACnB,kBAAkB,EAAE,CAAC;aACtB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;YAC9E,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAE7B,+BAA+B,CAC7B,UAAU,EACV,aAAa,CAAC,MAAM,EACpB,EAAE,EACF,YAAY,EACZ,KAAK,EACL,SAAS,CACV,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,SAAS,EAAE,aAAa,CAAC,MAAM;gBAC/B,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAE7B,MAAM,QAAQ,GAAG;gBACf,cAAc,EAAE,CAAC;gBACjB,gBAAgB,EAAE,CAAC;gBACnB,gBAAgB,EAAE,CAAC;gBACnB,kBAAkB,EAAE,CAAC;aACtB,CAAC;YAEF,+BAA+B,CAC7B,UAAU,EACV,aAAa,CAAC,MAAM,EACpB,SAAS,EACT,SAAS,EACT,SAAS,EACT,QAAQ,CACT,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,SAAS,EAAE,aAAa,CAAC,MAAM;gBAC/B,cAAc,EAAE,CAAC;gBACjB,gBAAgB,EAAE,CAAC;gBACnB,gBAAgB,EAAE,CAAC;gBACnB,kBAAkB,EAAE,CAAC;aACtB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ToolConfirmationOutcome } from '../tools/tools.js';
|
|
7
|
+
export declare enum ToolCallDecision {
|
|
8
|
+
ACCEPT = "accept",
|
|
9
|
+
REJECT = "reject",
|
|
10
|
+
MODIFY = "modify",
|
|
11
|
+
AUTO_ACCEPT = "auto_accept"
|
|
12
|
+
}
|
|
13
|
+
export declare function getDecisionFromOutcome(outcome: ToolConfirmationOutcome): ToolCallDecision;
|