@google/gemini-cli-core 0.12.0-nightly.20251027.cb0947c5 → 0.12.0-preview.10

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.
Files changed (148) hide show
  1. package/README.md +7 -5
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.js +1 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/code_assist/oauth2.js +8 -9
  6. package/dist/src/code_assist/oauth2.js.map +1 -1
  7. package/dist/src/code_assist/oauth2.test.js +32 -32
  8. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  9. package/dist/src/config/config.d.ts +14 -11
  10. package/dist/src/config/config.js +36 -14
  11. package/dist/src/config/config.js.map +1 -1
  12. package/dist/src/config/config.test.js +79 -11
  13. package/dist/src/config/config.test.js.map +1 -1
  14. package/dist/src/config/models.d.ts +1 -1
  15. package/dist/src/config/models.js +2 -2
  16. package/dist/src/config/models.js.map +1 -1
  17. package/dist/src/config/storage.d.ts +1 -0
  18. package/dist/src/config/storage.js +3 -0
  19. package/dist/src/config/storage.js.map +1 -1
  20. package/dist/src/core/contentGenerator.js +38 -31
  21. package/dist/src/core/contentGenerator.js.map +1 -1
  22. package/dist/src/core/contentGenerator.test.js +13 -0
  23. package/dist/src/core/contentGenerator.test.js.map +1 -1
  24. package/dist/src/core/coreToolScheduler.js +109 -96
  25. package/dist/src/core/coreToolScheduler.js.map +1 -1
  26. package/dist/src/core/fakeContentGenerator.d.ts +20 -13
  27. package/dist/src/core/fakeContentGenerator.js +21 -24
  28. package/dist/src/core/fakeContentGenerator.js.map +1 -1
  29. package/dist/src/core/fakeContentGenerator.test.js +71 -84
  30. package/dist/src/core/fakeContentGenerator.test.js.map +1 -1
  31. package/dist/src/core/loggingContentGenerator.d.ts +1 -0
  32. package/dist/src/core/loggingContentGenerator.js +113 -33
  33. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  34. package/dist/src/core/recordingContentGenerator.d.ts +18 -0
  35. package/dist/src/core/recordingContentGenerator.js +77 -0
  36. package/dist/src/core/recordingContentGenerator.js.map +1 -0
  37. package/dist/src/core/recordingContentGenerator.test.d.ts +6 -0
  38. package/dist/src/core/recordingContentGenerator.test.js +101 -0
  39. package/dist/src/core/recordingContentGenerator.test.js.map +1 -0
  40. package/dist/src/fallback/handler.js +2 -0
  41. package/dist/src/fallback/handler.js.map +1 -1
  42. package/dist/src/generated/git-commit.d.ts +2 -2
  43. package/dist/src/generated/git-commit.js +2 -2
  44. package/dist/src/generated/git-commit.js.map +1 -1
  45. package/dist/src/index.d.ts +2 -0
  46. package/dist/src/index.js +2 -0
  47. package/dist/src/index.js.map +1 -1
  48. package/dist/src/mcp/google-auth-provider.d.ts +0 -2
  49. package/dist/src/mcp/google-auth-provider.js +6 -40
  50. package/dist/src/mcp/google-auth-provider.js.map +1 -1
  51. package/dist/src/mcp/google-auth-provider.test.js +2 -63
  52. package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
  53. package/dist/src/mcp/oauth-token-storage.js +1 -1
  54. package/dist/src/mcp/oauth-token-storage.js.map +1 -1
  55. package/dist/src/mcp/oauth-token-storage.test.js +2 -2
  56. package/dist/src/mcp/oauth-token-storage.test.js.map +1 -1
  57. package/dist/src/mcp/sa-impersonation-provider.js +3 -2
  58. package/dist/src/mcp/sa-impersonation-provider.js.map +1 -1
  59. package/dist/src/mcp/token-storage/keychain-token-storage.d.ts +6 -2
  60. package/dist/src/mcp/token-storage/keychain-token-storage.js +57 -2
  61. package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
  62. package/dist/src/mcp/token-storage/keychain-token-storage.test.js +33 -0
  63. package/dist/src/mcp/token-storage/keychain-token-storage.test.js.map +1 -1
  64. package/dist/src/mcp/token-storage/types.d.ts +6 -0
  65. package/dist/src/mcp/token-storage/types.js.map +1 -1
  66. package/dist/src/policy/policy-engine.js +4 -0
  67. package/dist/src/policy/policy-engine.js.map +1 -1
  68. package/dist/src/services/chatCompressionService.d.ts +3 -3
  69. package/dist/src/services/chatCompressionService.js +4 -5
  70. package/dist/src/services/chatCompressionService.js.map +1 -1
  71. package/dist/src/services/chatCompressionService.test.js +2 -2
  72. package/dist/src/services/chatCompressionService.test.js.map +1 -1
  73. package/dist/src/services/loopDetectionService.js +4 -1
  74. package/dist/src/services/loopDetectionService.js.map +1 -1
  75. package/dist/src/services/loopDetectionService.test.js +10 -0
  76. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  77. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +5 -5
  78. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  79. package/dist/src/telemetry/index.d.ts +1 -0
  80. package/dist/src/telemetry/index.js +1 -0
  81. package/dist/src/telemetry/index.js.map +1 -1
  82. package/dist/src/telemetry/loggers.js +25 -26
  83. package/dist/src/telemetry/loggers.js.map +1 -1
  84. package/dist/src/telemetry/loggers.test.js +177 -34
  85. package/dist/src/telemetry/loggers.test.js.map +1 -1
  86. package/dist/src/telemetry/metrics.d.ts +13 -5
  87. package/dist/src/telemetry/metrics.js +20 -1
  88. package/dist/src/telemetry/metrics.js.map +1 -1
  89. package/dist/src/telemetry/metrics.test.js +45 -0
  90. package/dist/src/telemetry/metrics.test.js.map +1 -1
  91. package/dist/src/telemetry/semantic.d.ts +82 -0
  92. package/dist/src/telemetry/semantic.js +269 -0
  93. package/dist/src/telemetry/semantic.js.map +1 -0
  94. package/dist/src/telemetry/semantic.test.d.ts +6 -0
  95. package/dist/src/telemetry/semantic.test.js +387 -0
  96. package/dist/src/telemetry/semantic.test.js.map +1 -0
  97. package/dist/src/telemetry/trace.d.ts +46 -0
  98. package/dist/src/telemetry/trace.js +121 -0
  99. package/dist/src/telemetry/trace.js.map +1 -0
  100. package/dist/src/telemetry/types.d.ts +37 -18
  101. package/dist/src/telemetry/types.js +107 -36
  102. package/dist/src/telemetry/types.js.map +1 -1
  103. package/dist/src/telemetry/uiTelemetry.js +6 -6
  104. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  105. package/dist/src/telemetry/uiTelemetry.test.js +88 -66
  106. package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
  107. package/dist/src/tools/glob.test.js +203 -199
  108. package/dist/src/tools/glob.test.js.map +1 -1
  109. package/dist/src/tools/mcp-client-manager.js +2 -1
  110. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  111. package/dist/src/tools/mcp-client.d.ts +4 -1
  112. package/dist/src/tools/mcp-client.js +71 -92
  113. package/dist/src/tools/mcp-client.js.map +1 -1
  114. package/dist/src/tools/mcp-client.test.js +16 -6
  115. package/dist/src/tools/mcp-client.test.js.map +1 -1
  116. package/dist/src/tools/mcp-tool.d.ts +1 -1
  117. package/dist/src/tools/mcp-tool.js +11 -9
  118. package/dist/src/tools/mcp-tool.js.map +1 -1
  119. package/dist/src/tools/shell.d.ts +2 -2
  120. package/dist/src/tools/shell.js +4 -4
  121. package/dist/src/tools/shell.js.map +1 -1
  122. package/dist/src/tools/tool-registry.d.ts +3 -0
  123. package/dist/src/tools/tool-registry.js +9 -2
  124. package/dist/src/tools/tool-registry.js.map +1 -1
  125. package/dist/src/tools/tools.d.ts +1 -2
  126. package/dist/src/tools/tools.js +20 -3
  127. package/dist/src/tools/tools.js.map +1 -1
  128. package/dist/src/tools/write-todos.js +4 -1
  129. package/dist/src/tools/write-todos.js.map +1 -1
  130. package/dist/src/utils/events.d.ts +36 -1
  131. package/dist/src/utils/events.js +17 -0
  132. package/dist/src/utils/events.js.map +1 -1
  133. package/dist/src/utils/events.test.js +10 -0
  134. package/dist/src/utils/events.test.js.map +1 -1
  135. package/dist/src/utils/extensionLoader.d.ts +38 -0
  136. package/dist/src/utils/extensionLoader.js +20 -0
  137. package/dist/src/utils/extensionLoader.js.map +1 -0
  138. package/dist/src/utils/googleQuotaErrors.js +2 -2
  139. package/dist/src/utils/googleQuotaErrors.js.map +1 -1
  140. package/dist/src/utils/memoryDiscovery.d.ts +2 -2
  141. package/dist/src/utils/memoryDiscovery.js +3 -2
  142. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  143. package/dist/src/utils/memoryDiscovery.test.js +19 -35
  144. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  145. package/dist/src/utils/workspaceContext.js +1 -1
  146. package/dist/src/utils/workspaceContext.js.map +1 -1
  147. package/dist/tsconfig.tsbuildinfo +1 -1
  148. package/package.json +1 -1
@@ -6,14 +6,14 @@
6
6
  import { AuthType, EditTool, GeminiClient, ToolConfirmationOutcome, ToolErrorType, ToolRegistry, } from '../index.js';
7
7
  import { OutputFormat } from '../output/types.js';
8
8
  import { logs } from '@opentelemetry/api-logs';
9
- import { SemanticAttributes } from '@opentelemetry/semantic-conventions';
10
- import { logApiRequest, logApiResponse, logCliConfiguration, logUserPrompt, logToolCall, logFlashFallback, logChatCompression, logMalformedJsonResponse, logFileOperation, logRipgrepFallback, logToolOutputTruncated, logModelRouting, logExtensionEnable, logExtensionDisable, logExtensionInstallEvent, logExtensionUninstall, logAgentStart, logAgentFinish, logWebFetchFallbackAttempt, logExtensionUpdateEvent, } from './loggers.js';
9
+ import { logApiError, logApiRequest, logApiResponse, logCliConfiguration, logUserPrompt, logToolCall, logFlashFallback, logChatCompression, logMalformedJsonResponse, logFileOperation, logRipgrepFallback, logToolOutputTruncated, logModelRouting, logExtensionEnable, logExtensionDisable, logExtensionInstallEvent, logExtensionUninstall, logAgentStart, logAgentFinish, logWebFetchFallbackAttempt, logExtensionUpdateEvent, } from './loggers.js';
11
10
  import { ToolCallDecision } from './tool-call-decision.js';
12
- import { EVENT_API_REQUEST, EVENT_API_RESPONSE, EVENT_CLI_CONFIG, EVENT_TOOL_CALL, EVENT_USER_PROMPT, EVENT_FLASH_FALLBACK, EVENT_MALFORMED_JSON_RESPONSE, EVENT_FILE_OPERATION, EVENT_RIPGREP_FALLBACK, EVENT_MODEL_ROUTING, EVENT_EXTENSION_ENABLE, EVENT_EXTENSION_DISABLE, EVENT_EXTENSION_INSTALL, EVENT_EXTENSION_UNINSTALL, EVENT_TOOL_OUTPUT_TRUNCATED, EVENT_AGENT_START, EVENT_AGENT_FINISH, EVENT_WEB_FETCH_FALLBACK_ATTEMPT, ApiRequestEvent, ApiResponseEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, RipgrepFallbackEvent, MalformedJsonResponseEvent, makeChatCompressionEvent, FileOperationEvent, ToolOutputTruncatedEvent, ModelRoutingEvent, ExtensionEnableEvent, ExtensionDisableEvent, ExtensionInstallEvent, ExtensionUninstallEvent, AgentStartEvent, AgentFinishEvent, WebFetchFallbackAttemptEvent, ExtensionUpdateEvent, EVENT_EXTENSION_UPDATE, } from './types.js';
11
+ import { EVENT_API_ERROR, EVENT_API_REQUEST, EVENT_API_RESPONSE, EVENT_CLI_CONFIG, EVENT_TOOL_CALL, EVENT_USER_PROMPT, EVENT_FLASH_FALLBACK, EVENT_MALFORMED_JSON_RESPONSE, EVENT_FILE_OPERATION, EVENT_RIPGREP_FALLBACK, EVENT_MODEL_ROUTING, EVENT_EXTENSION_ENABLE, EVENT_EXTENSION_DISABLE, EVENT_EXTENSION_INSTALL, EVENT_EXTENSION_UNINSTALL, EVENT_TOOL_OUTPUT_TRUNCATED, EVENT_AGENT_START, EVENT_AGENT_FINISH, EVENT_WEB_FETCH_FALLBACK_ATTEMPT, ApiErrorEvent, ApiRequestEvent, ApiResponseEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, RipgrepFallbackEvent, MalformedJsonResponseEvent, makeChatCompressionEvent, FileOperationEvent, ToolOutputTruncatedEvent, ModelRoutingEvent, ExtensionEnableEvent, ExtensionDisableEvent, ExtensionInstallEvent, ExtensionUninstallEvent, AgentStartEvent, AgentFinishEvent, WebFetchFallbackAttemptEvent, ExtensionUpdateEvent, EVENT_EXTENSION_UPDATE, } from './types.js';
13
12
  import * as metrics from './metrics.js';
14
- import { FileOperation, GenAiOperationName, GenAiProviderName, } from './metrics.js';
13
+ import { FileOperation } from './metrics.js';
15
14
  import * as sdk from './sdk.js';
16
15
  import { vi, describe, beforeEach, it, expect, afterEach } from 'vitest';
16
+ import { FinishReason, } from '@google/genai';
17
17
  import { DiscoveredMCPTool } from '../tools/mcp-tool.js';
18
18
  import * as uiTelemetry from './uiTelemetry.js';
19
19
  import { makeFakeConfig } from '../test-utils/config.js';
@@ -184,17 +184,10 @@ describe('loggers', () => {
184
184
  const mockMetrics = {
185
185
  recordApiResponseMetrics: vi.fn(),
186
186
  recordTokenUsageMetrics: vi.fn(),
187
- getConventionAttributes: vi.fn(() => ({
188
- 'gen_ai.operation.name': GenAiOperationName.GENERATE_CONTENT,
189
- 'gen_ai.provider.name': GenAiProviderName.GCP_VERTEX_AI,
190
- 'gen_ai.request.model': 'test-model',
191
- 'gen_ai.response.model': 'test-model',
192
- })),
193
187
  };
194
188
  beforeEach(() => {
195
189
  vi.spyOn(metrics, 'recordApiResponseMetrics').mockImplementation(mockMetrics.recordApiResponseMetrics);
196
190
  vi.spyOn(metrics, 'recordTokenUsageMetrics').mockImplementation(mockMetrics.recordTokenUsageMetrics);
197
- vi.spyOn(metrics, 'getConventionAttributes').mockImplementation(mockMetrics.getConventionAttributes);
198
191
  });
199
192
  it('should log an API response with all fields', () => {
200
193
  const usageData = {
@@ -204,30 +197,80 @@ describe('loggers', () => {
204
197
  thoughtsTokenCount: 5,
205
198
  toolUsePromptTokenCount: 2,
206
199
  };
207
- const event = new ApiResponseEvent('test-model', 100, 'prompt-id-1', AuthType.LOGIN_WITH_GOOGLE, usageData, 'test-response');
200
+ const event = new ApiResponseEvent('test-model', 100, {
201
+ prompt_id: 'prompt-id-1',
202
+ contents: [
203
+ {
204
+ role: 'user',
205
+ parts: [{ text: 'Hello' }],
206
+ },
207
+ ],
208
+ generate_content_config: {
209
+ temperature: 1,
210
+ topP: 2,
211
+ topK: 3,
212
+ responseMimeType: 'text/plain',
213
+ candidateCount: 1,
214
+ seed: 678,
215
+ frequencyPenalty: 10,
216
+ maxOutputTokens: 8000,
217
+ presencePenalty: 6,
218
+ stopSequences: ['stop', 'please stop'],
219
+ systemInstruction: {
220
+ role: 'model',
221
+ parts: [{ text: 'be nice' }],
222
+ },
223
+ },
224
+ server: {
225
+ address: 'foo.com',
226
+ port: 8080,
227
+ },
228
+ }, {
229
+ response_id: '',
230
+ candidates: [
231
+ {
232
+ content: {
233
+ role: 'model',
234
+ parts: [{ text: 'candidate 1' }],
235
+ },
236
+ finishReason: FinishReason.STOP,
237
+ },
238
+ ],
239
+ }, AuthType.LOGIN_WITH_GOOGLE, usageData, 'test-response');
208
240
  logApiResponse(mockConfig, event);
209
241
  expect(mockLogger.emit).toHaveBeenCalledWith({
210
242
  body: 'API response from test-model. Status: 200. Duration: 100ms.',
211
- attributes: {
212
- 'session.id': 'test-session-id',
213
- 'user.email': 'test-user@example.com',
214
- 'installation.id': 'test-installation-id',
243
+ attributes: expect.objectContaining({
215
244
  'event.name': EVENT_API_RESPONSE,
216
- 'event.timestamp': '2025-01-01T00:00:00.000Z',
217
- [SemanticAttributes.HTTP_STATUS_CODE]: 200,
218
- model: 'test-model',
219
- status_code: 200,
220
- duration_ms: 100,
221
- input_token_count: 17,
222
- output_token_count: 50,
223
- cached_content_token_count: 10,
224
- thoughts_token_count: 5,
225
- tool_token_count: 2,
226
- total_token_count: 0,
227
- response_text: 'test-response',
228
245
  prompt_id: 'prompt-id-1',
229
- auth_type: 'oauth-personal',
230
- },
246
+ }),
247
+ });
248
+ expect(mockLogger.emit).toHaveBeenCalledWith({
249
+ body: 'GenAI operation details from test-model. Status: 200. Duration: 100ms.',
250
+ attributes: expect.objectContaining({
251
+ 'event.name': 'gen_ai.client.inference.operation.details',
252
+ 'gen_ai.request.model': 'test-model',
253
+ 'gen_ai.request.temperature': 1,
254
+ 'gen_ai.request.top_p': 2,
255
+ 'gen_ai.request.top_k': 3,
256
+ 'gen_ai.input.messages': '[{"role":"user","parts":[{"type":"text","content":"Hello"}]}]',
257
+ 'gen_ai.output.messages': '[{"finish_reason":"stop","role":"system","parts":[{"type":"text","content":"candidate 1"}]}]',
258
+ 'gen_ai.response.finish_reasons': ['stop'],
259
+ 'gen_ai.response.model': 'test-model',
260
+ 'gen_ai.usage.input_tokens': 17,
261
+ 'gen_ai.usage.output_tokens': 50,
262
+ 'gen_ai.operation.name': 'generate_content',
263
+ 'gen_ai.output.type': 'text',
264
+ 'gen_ai.request.choice.count': 1,
265
+ 'gen_ai.request.seed': 678,
266
+ 'gen_ai.request.frequency_penalty': 10,
267
+ 'gen_ai.request.presence_penalty': 6,
268
+ 'gen_ai.request.max_tokens': 8000,
269
+ 'server.address': 'foo.com',
270
+ 'server.port': 8080,
271
+ 'gen_ai.request.stop_sequences': ['stop', 'please stop'],
272
+ 'gen_ai.system_instructions': '[{"type":"text","content":"be nice"}]',
273
+ }),
231
274
  });
232
275
  expect(mockMetrics.recordApiResponseMetrics).toHaveBeenCalledWith(mockConfig, 100, {
233
276
  model: 'test-model',
@@ -267,6 +310,106 @@ describe('loggers', () => {
267
310
  });
268
311
  });
269
312
  });
313
+ describe('logApiError', () => {
314
+ const mockConfig = {
315
+ getSessionId: () => 'test-session-id',
316
+ getTargetDir: () => 'target-dir',
317
+ getUsageStatisticsEnabled: () => true,
318
+ getTelemetryEnabled: () => true,
319
+ getTelemetryLogPromptsEnabled: () => true,
320
+ };
321
+ const mockMetrics = {
322
+ recordApiResponseMetrics: vi.fn(),
323
+ recordApiErrorMetrics: vi.fn(),
324
+ recordTokenUsageMetrics: vi.fn(),
325
+ };
326
+ beforeEach(() => {
327
+ vi.spyOn(metrics, 'recordApiResponseMetrics').mockImplementation(mockMetrics.recordApiResponseMetrics);
328
+ vi.spyOn(metrics, 'recordApiErrorMetrics').mockImplementation(mockMetrics.recordApiErrorMetrics);
329
+ });
330
+ it('should log an API error with all fields', () => {
331
+ const event = new ApiErrorEvent('test-model', 'UNAVAILABLE. {"error":{"code":503,"message":"The model is overloaded. Please try again later.","status":"UNAVAILABLE"}}', 100, {
332
+ prompt_id: 'prompt-id-1',
333
+ contents: [
334
+ {
335
+ role: 'user',
336
+ parts: [{ text: 'Hello' }],
337
+ },
338
+ ],
339
+ generate_content_config: {
340
+ temperature: 1,
341
+ topP: 2,
342
+ topK: 3,
343
+ responseMimeType: 'text/plain',
344
+ candidateCount: 1,
345
+ seed: 678,
346
+ frequencyPenalty: 10,
347
+ maxOutputTokens: 8000,
348
+ presencePenalty: 6,
349
+ stopSequences: ['stop', 'please stop'],
350
+ systemInstruction: {
351
+ role: 'model',
352
+ parts: [{ text: 'be nice' }],
353
+ },
354
+ },
355
+ server: {
356
+ address: 'foo.com',
357
+ port: 8080,
358
+ },
359
+ }, AuthType.LOGIN_WITH_GOOGLE, 'ApiError', 503);
360
+ logApiError(mockConfig, event);
361
+ expect(mockLogger.emit).toHaveBeenCalledWith({
362
+ body: 'API error for test-model. Error: UNAVAILABLE. {"error":{"code":503,"message":"The model is overloaded. Please try again later.","status":"UNAVAILABLE"}}. Duration: 100ms.',
363
+ attributes: expect.objectContaining({
364
+ 'event.name': EVENT_API_ERROR,
365
+ prompt_id: 'prompt-id-1',
366
+ }),
367
+ });
368
+ expect(mockLogger.emit).toHaveBeenCalledWith({
369
+ body: 'GenAI operation error details from test-model. Error: UNAVAILABLE. {"error":{"code":503,"message":"The model is overloaded. Please try again later.","status":"UNAVAILABLE"}}. Duration: 100ms.',
370
+ attributes: expect.objectContaining({
371
+ 'event.name': 'gen_ai.client.inference.operation.details',
372
+ 'gen_ai.request.model': 'test-model',
373
+ 'gen_ai.request.temperature': 1,
374
+ 'gen_ai.request.top_p': 2,
375
+ 'gen_ai.request.top_k': 3,
376
+ 'gen_ai.input.messages': '[{"role":"user","parts":[{"type":"text","content":"Hello"}]}]',
377
+ 'gen_ai.operation.name': 'generate_content',
378
+ 'gen_ai.output.type': 'text',
379
+ 'gen_ai.request.choice.count': 1,
380
+ 'gen_ai.request.seed': 678,
381
+ 'gen_ai.request.frequency_penalty': 10,
382
+ 'gen_ai.request.presence_penalty': 6,
383
+ 'gen_ai.request.max_tokens': 8000,
384
+ 'server.address': 'foo.com',
385
+ 'server.port': 8080,
386
+ 'gen_ai.request.stop_sequences': ['stop', 'please stop'],
387
+ 'gen_ai.system_instructions': '[{"type":"text","content":"be nice"}]',
388
+ }),
389
+ });
390
+ expect(mockMetrics.recordApiErrorMetrics).toHaveBeenCalledWith(mockConfig, 100, {
391
+ model: 'test-model',
392
+ status_code: 503,
393
+ error_type: 'ApiError',
394
+ });
395
+ expect(mockMetrics.recordApiResponseMetrics).toHaveBeenCalledWith(mockConfig, 100, {
396
+ model: 'test-model',
397
+ status_code: 503,
398
+ genAiAttributes: {
399
+ 'gen_ai.operation.name': 'generate_content',
400
+ 'gen_ai.provider.name': 'gcp.vertex_ai',
401
+ 'gen_ai.request.model': 'test-model',
402
+ 'gen_ai.response.model': 'test-model',
403
+ 'error.type': 'ApiError',
404
+ },
405
+ });
406
+ expect(mockUiEvent.addEvent).toHaveBeenCalledWith({
407
+ ...event,
408
+ 'event.name': EVENT_API_ERROR,
409
+ 'event.timestamp': '2025-01-01T00:00:00.000Z',
410
+ });
411
+ });
412
+ });
270
413
  describe('logApiRequest', () => {
271
414
  const mockConfig = {
272
415
  getSessionId: () => 'test-session-id',
@@ -408,9 +551,11 @@ describe('loggers', () => {
408
551
  };
409
552
  const mockMetrics = {
410
553
  recordToolCallMetrics: vi.fn(),
554
+ recordLinesChanged: vi.fn(),
411
555
  };
412
556
  beforeEach(() => {
413
557
  vi.spyOn(metrics, 'recordToolCallMetrics').mockImplementation(mockMetrics.recordToolCallMetrics);
558
+ vi.spyOn(metrics, 'recordLinesChanged').mockImplementation(mockMetrics.recordLinesChanged);
414
559
  mockLogger.emit.mockReset();
415
560
  });
416
561
  it('should log a tool call with all fields', () => {
@@ -495,16 +640,14 @@ describe('loggers', () => {
495
640
  success: true,
496
641
  decision: ToolCallDecision.ACCEPT,
497
642
  tool_type: 'native',
498
- model_added_lines: 1,
499
- model_removed_lines: 2,
500
- user_added_lines: 5,
501
- user_removed_lines: 6,
502
643
  });
503
644
  expect(mockUiEvent.addEvent).toHaveBeenCalledWith({
504
645
  ...event,
505
646
  'event.name': EVENT_TOOL_CALL,
506
647
  'event.timestamp': '2025-01-01T00:00:00.000Z',
507
648
  });
649
+ expect(mockMetrics.recordLinesChanged).toHaveBeenCalledWith(mockConfig, 1, 'added', { function_name: 'test-function' });
650
+ expect(mockMetrics.recordLinesChanged).toHaveBeenCalledWith(mockConfig, 2, 'removed', { function_name: 'test-function' });
508
651
  });
509
652
  it('should log a tool call with a reject decision', () => {
510
653
  const 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,9 +5,9 @@
5
5
  */
6
6
  import type { Attributes, Meter, Counter, Histogram } from '@opentelemetry/api';
7
7
  import { ValueType } from '@opentelemetry/api';
8
- import { EVENT_CHAT_COMPRESSION } from './types.js';
9
8
  import type { Config } from '../config/config.js';
10
9
  import type { ModelRoutingEvent, ModelSlashCommandEvent, AgentFinishEvent } from './types.js';
10
+ declare const EVENT_CHAT_COMPRESSION = "gemini_cli.chat_compression";
11
11
  declare const TOOL_CALL_COUNT = "gemini_cli.tool.call.count";
12
12
  declare const API_REQUEST_COUNT = "gemini_cli.api.request.count";
13
13
  declare const TOKEN_USAGE = "gemini_cli.token.usage";
@@ -33,10 +33,6 @@ declare const COUNTER_DEFINITIONS: {
33
33
  success: boolean;
34
34
  decision?: "accept" | "reject" | "modify" | "auto_accept";
35
35
  tool_type?: "native" | "mcp";
36
- model_added_lines?: number;
37
- model_removed_lines?: number;
38
- user_added_lines?: number;
39
- user_removed_lines?: number;
40
36
  };
41
37
  };
42
38
  readonly "gemini_cli.api.request.count": {
@@ -76,6 +72,15 @@ declare const COUNTER_DEFINITIONS: {
76
72
  programming_language?: string;
77
73
  };
78
74
  };
75
+ readonly "gemini_cli.lines.changed": {
76
+ readonly description: "Number of lines changed (from file diffs).";
77
+ readonly valueType: ValueType.INT;
78
+ readonly assign: (c: Counter) => Counter<Attributes>;
79
+ readonly attributes: {
80
+ function_name?: string;
81
+ type: "added" | "removed";
82
+ };
83
+ };
79
84
  readonly "gemini_cli.chat.invalid_chunk.count": {
80
85
  readonly description: "Counts invalid chunks received from a stream.";
81
86
  readonly valueType: ValueType.INT;
@@ -392,6 +397,9 @@ export declare function recordCustomTokenUsageMetrics(config: Config, tokenCount
392
397
  export declare function recordCustomApiResponseMetrics(config: Config, durationMs: number, attributes: MetricDefinitions[typeof API_REQUEST_COUNT]['attributes']): void;
393
398
  export declare function recordApiErrorMetrics(config: Config, durationMs: number, attributes: MetricDefinitions[typeof API_REQUEST_COUNT]['attributes']): void;
394
399
  export declare function recordFileOperationMetric(config: Config, attributes: MetricDefinitions[typeof FILE_OPERATION_COUNT]['attributes']): void;
400
+ export declare function recordLinesChanged(config: Config, lines: number, changeType: 'added' | 'removed', attributes?: {
401
+ function_name?: string;
402
+ }): void;
395
403
  /**
396
404
  * Records a metric for when a UI frame flickers.
397
405
  */
@@ -5,9 +5,9 @@
5
5
  */
6
6
  import { diag, metrics, ValueType } from '@opentelemetry/api';
7
7
  import { SERVICE_NAME } from './constants.js';
8
- import { EVENT_CHAT_COMPRESSION } from './types.js';
9
8
  import { AuthType } from '../core/contentGenerator.js';
10
9
  import { getCommonAttributes } from './telemetryAttributes.js';
10
+ const EVENT_CHAT_COMPRESSION = 'gemini_cli.chat_compression';
11
11
  const TOOL_CALL_COUNT = 'gemini_cli.tool.call.count';
12
12
  const TOOL_CALL_LATENCY = 'gemini_cli.tool.call.latency';
13
13
  const API_REQUEST_COUNT = 'gemini_cli.api.request.count';
@@ -15,6 +15,7 @@ const API_REQUEST_LATENCY = 'gemini_cli.api.request.latency';
15
15
  const TOKEN_USAGE = 'gemini_cli.token.usage';
16
16
  const SESSION_COUNT = 'gemini_cli.session.count';
17
17
  const FILE_OPERATION_COUNT = 'gemini_cli.file.operation.count';
18
+ const LINES_CHANGED = 'gemini_cli.lines.changed';
18
19
  const INVALID_CHUNK_COUNT = 'gemini_cli.chat.invalid_chunk.count';
19
20
  const CONTENT_RETRY_COUNT = 'gemini_cli.chat.content_retry.count';
20
21
  const CONTENT_RETRY_FAILURE_COUNT = 'gemini_cli.chat.content_retry_failure.count';
@@ -76,6 +77,12 @@ const COUNTER_DEFINITIONS = {
76
77
  assign: (c) => (fileOperationCounter = c),
77
78
  attributes: {},
78
79
  },
80
+ [LINES_CHANGED]: {
81
+ description: 'Number of lines changed (from file diffs).',
82
+ valueType: ValueType.INT,
83
+ assign: (c) => (linesChangedCounter = c),
84
+ attributes: {},
85
+ },
79
86
  [INVALID_CHUNK_COUNT]: {
80
87
  description: 'Counts invalid chunks received from a stream.',
81
88
  valueType: ValueType.INT,
@@ -320,6 +327,7 @@ let apiRequestLatencyHistogram;
320
327
  let tokenUsageCounter;
321
328
  let sessionCounter;
322
329
  let fileOperationCounter;
330
+ let linesChangedCounter;
323
331
  let chatCompressionCounter;
324
332
  let invalidChunkCounter;
325
333
  let contentRetryCounter;
@@ -444,6 +452,17 @@ export function recordFileOperationMetric(config, attributes) {
444
452
  ...attributes,
445
453
  });
446
454
  }
455
+ export function recordLinesChanged(config, lines, changeType, attributes) {
456
+ if (!linesChangedCounter || !isMetricsInitialized)
457
+ return;
458
+ if (!Number.isFinite(lines) || lines <= 0)
459
+ return;
460
+ linesChangedCounter.add(lines, {
461
+ ...baseMetricDefinition.getCommonAttributes(config),
462
+ type: changeType,
463
+ ...(attributes ?? {}),
464
+ });
465
+ }
447
466
  // --- New Metric Recording Functions ---
448
467
  /**
449
468
  * Records a metric for when a UI frame flickers.