@google/gemini-cli-core 0.8.0-nightly.20250930.ddcbd0c2 → 0.8.0-preview.1

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 (86) hide show
  1. package/dist/src/agents/codebase-investigator.d.ts +11 -0
  2. package/dist/src/agents/codebase-investigator.js +73 -0
  3. package/dist/src/agents/codebase-investigator.js.map +1 -0
  4. package/dist/src/agents/executor.d.ts +88 -0
  5. package/dist/src/agents/executor.js +417 -0
  6. package/dist/src/agents/executor.js.map +1 -0
  7. package/dist/src/agents/executor.test.d.ts +6 -0
  8. package/dist/src/agents/executor.test.js +419 -0
  9. package/dist/src/agents/executor.test.js.map +1 -0
  10. package/dist/src/agents/invocation.d.ts +43 -0
  11. package/dist/src/agents/invocation.js +100 -0
  12. package/dist/src/agents/invocation.js.map +1 -0
  13. package/dist/src/agents/invocation.test.d.ts +6 -0
  14. package/dist/src/agents/invocation.test.js +206 -0
  15. package/dist/src/agents/invocation.test.js.map +1 -0
  16. package/dist/src/agents/registry.d.ts +35 -0
  17. package/dist/src/agents/registry.js +58 -0
  18. package/dist/src/agents/registry.js.map +1 -0
  19. package/dist/src/agents/registry.test.d.ts +6 -0
  20. package/dist/src/agents/registry.test.js +146 -0
  21. package/dist/src/agents/registry.test.js.map +1 -0
  22. package/dist/src/agents/schema-utils.d.ts +39 -0
  23. package/dist/src/agents/schema-utils.js +57 -0
  24. package/dist/src/agents/schema-utils.js.map +1 -0
  25. package/dist/src/agents/schema-utils.test.d.ts +6 -0
  26. package/dist/src/agents/schema-utils.test.js +144 -0
  27. package/dist/src/agents/schema-utils.test.js.map +1 -0
  28. package/dist/src/agents/subagent-tool-wrapper.d.ts +36 -0
  29. package/dist/src/agents/subagent-tool-wrapper.js +47 -0
  30. package/dist/src/agents/subagent-tool-wrapper.js.map +1 -0
  31. package/dist/src/agents/subagent-tool-wrapper.test.d.ts +6 -0
  32. package/dist/src/agents/subagent-tool-wrapper.test.js +105 -0
  33. package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -0
  34. package/dist/src/agents/types.d.ts +116 -0
  35. package/dist/src/agents/types.js +17 -0
  36. package/dist/src/agents/types.js.map +1 -0
  37. package/dist/src/agents/utils.d.ts +15 -0
  38. package/dist/src/agents/utils.js +29 -0
  39. package/dist/src/agents/utils.js.map +1 -0
  40. package/dist/src/agents/utils.test.d.ts +6 -0
  41. package/dist/src/agents/utils.test.js +87 -0
  42. package/dist/src/agents/utils.test.js.map +1 -0
  43. package/dist/src/generated/git-commit.d.ts +2 -2
  44. package/dist/src/generated/git-commit.js +2 -2
  45. package/dist/src/generated/git-commit.js.map +1 -1
  46. package/dist/src/ide/detect-ide.d.ts +1 -0
  47. package/dist/src/ide/detect-ide.js +4 -1
  48. package/dist/src/ide/detect-ide.js.map +1 -1
  49. package/dist/src/services/shellExecutionService.d.ts +2 -0
  50. package/dist/src/services/shellExecutionService.js +48 -7
  51. package/dist/src/services/shellExecutionService.js.map +1 -1
  52. package/dist/src/services/shellExecutionService.test.js +13 -4
  53. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  54. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +4 -1
  55. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  56. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +18 -0
  57. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  58. package/dist/src/telemetry/constants.d.ts +0 -24
  59. package/dist/src/telemetry/constants.js +0 -25
  60. package/dist/src/telemetry/constants.js.map +1 -1
  61. package/dist/src/telemetry/loggers.js +42 -9
  62. package/dist/src/telemetry/loggers.js.map +1 -1
  63. package/dist/src/telemetry/loggers.test.js +39 -8
  64. package/dist/src/telemetry/loggers.test.js.map +1 -1
  65. package/dist/src/telemetry/metrics.d.ts +278 -19
  66. package/dist/src/telemetry/metrics.js +303 -235
  67. package/dist/src/telemetry/metrics.js.map +1 -1
  68. package/dist/src/telemetry/metrics.test.js +191 -54
  69. package/dist/src/telemetry/metrics.test.js.map +1 -1
  70. package/dist/src/tools/smart-edit.js +56 -0
  71. package/dist/src/tools/smart-edit.js.map +1 -1
  72. package/dist/src/tools/smart-edit.test.js +19 -0
  73. package/dist/src/tools/smart-edit.test.js.map +1 -1
  74. package/dist/src/utils/llm-edit-fixer.js +10 -1
  75. package/dist/src/utils/llm-edit-fixer.js.map +1 -1
  76. package/dist/src/utils/llm-edit-fixer.test.js +81 -0
  77. package/dist/src/utils/llm-edit-fixer.test.js.map +1 -1
  78. package/dist/src/utils/memoryImportProcessor.js +13 -20
  79. package/dist/src/utils/memoryImportProcessor.js.map +1 -1
  80. package/dist/src/utils/memoryImportProcessor.test.js +14 -0
  81. package/dist/src/utils/memoryImportProcessor.test.js.map +1 -1
  82. package/dist/src/utils/terminalSerializer.d.ts +1 -4
  83. package/dist/src/utils/terminalSerializer.js +3 -3
  84. package/dist/src/utils/terminalSerializer.js.map +1 -1
  85. package/dist/tsconfig.tsbuildinfo +1 -1
  86. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/telemetry/metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/telemetry/metrics.ts"],"names":[],"mappings":"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"}
@@ -118,12 +118,18 @@ describe('Telemetry Metrics', () => {
118
118
  getTelemetryEnabled: () => true,
119
119
  };
120
120
  it('should not record metrics if not initialized', () => {
121
- recordTokenUsageMetricsModule(mockConfig, 'gemini-pro', 100, 'input');
121
+ recordTokenUsageMetricsModule(mockConfig, 100, {
122
+ model: 'gemini-pro',
123
+ type: 'input',
124
+ });
122
125
  expect(mockCounterAddFn).not.toHaveBeenCalled();
123
126
  });
124
127
  it('should record token usage with the correct attributes', () => {
125
128
  initializeMetricsModule(mockConfig);
126
- recordTokenUsageMetricsModule(mockConfig, 'gemini-pro', 100, 'input');
129
+ recordTokenUsageMetricsModule(mockConfig, 100, {
130
+ model: 'gemini-pro',
131
+ type: 'input',
132
+ });
127
133
  expect(mockCounterAddFn).toHaveBeenCalledTimes(2);
128
134
  expect(mockCounterAddFn).toHaveBeenNthCalledWith(1, 1, {
129
135
  'session.id': 'test-session-id',
@@ -137,25 +143,37 @@ describe('Telemetry Metrics', () => {
137
143
  it('should record token usage for different types', () => {
138
144
  initializeMetricsModule(mockConfig);
139
145
  mockCounterAddFn.mockClear();
140
- recordTokenUsageMetricsModule(mockConfig, 'gemini-pro', 50, 'output');
146
+ recordTokenUsageMetricsModule(mockConfig, 50, {
147
+ model: 'gemini-pro',
148
+ type: 'output',
149
+ });
141
150
  expect(mockCounterAddFn).toHaveBeenCalledWith(50, {
142
151
  'session.id': 'test-session-id',
143
152
  model: 'gemini-pro',
144
153
  type: 'output',
145
154
  });
146
- recordTokenUsageMetricsModule(mockConfig, 'gemini-pro', 25, 'thought');
155
+ recordTokenUsageMetricsModule(mockConfig, 25, {
156
+ model: 'gemini-pro',
157
+ type: 'thought',
158
+ });
147
159
  expect(mockCounterAddFn).toHaveBeenCalledWith(25, {
148
160
  'session.id': 'test-session-id',
149
161
  model: 'gemini-pro',
150
162
  type: 'thought',
151
163
  });
152
- recordTokenUsageMetricsModule(mockConfig, 'gemini-pro', 75, 'cache');
164
+ recordTokenUsageMetricsModule(mockConfig, 75, {
165
+ model: 'gemini-pro',
166
+ type: 'cache',
167
+ });
153
168
  expect(mockCounterAddFn).toHaveBeenCalledWith(75, {
154
169
  'session.id': 'test-session-id',
155
170
  model: 'gemini-pro',
156
171
  type: 'cache',
157
172
  });
158
- recordTokenUsageMetricsModule(mockConfig, 'gemini-pro', 125, 'tool');
173
+ recordTokenUsageMetricsModule(mockConfig, 125, {
174
+ model: 'gemini-pro',
175
+ type: 'tool',
176
+ });
159
177
  expect(mockCounterAddFn).toHaveBeenCalledWith(125, {
160
178
  'session.id': 'test-session-id',
161
179
  model: 'gemini-pro',
@@ -165,7 +183,10 @@ describe('Telemetry Metrics', () => {
165
183
  it('should handle different models', () => {
166
184
  initializeMetricsModule(mockConfig);
167
185
  mockCounterAddFn.mockClear();
168
- recordTokenUsageMetricsModule(mockConfig, 'gemini-ultra', 200, 'input');
186
+ recordTokenUsageMetricsModule(mockConfig, 200, {
187
+ model: 'gemini-ultra',
188
+ type: 'input',
189
+ });
169
190
  expect(mockCounterAddFn).toHaveBeenCalledWith(200, {
170
191
  'session.id': 'test-session-id',
171
192
  model: 'gemini-ultra',
@@ -179,12 +200,22 @@ describe('Telemetry Metrics', () => {
179
200
  getTelemetryEnabled: () => true,
180
201
  };
181
202
  it('should not record metrics if not initialized', () => {
182
- recordFileOperationMetricModule(mockConfig, FileOperation.CREATE, 10, 'text/plain', 'txt');
203
+ recordFileOperationMetricModule(mockConfig, {
204
+ operation: FileOperation.CREATE,
205
+ lines: 10,
206
+ mimetype: 'text/plain',
207
+ extension: 'txt',
208
+ });
183
209
  expect(mockCounterAddFn).not.toHaveBeenCalled();
184
210
  });
185
211
  it('should record file creation with all attributes', () => {
186
212
  initializeMetricsModule(mockConfig);
187
- recordFileOperationMetricModule(mockConfig, FileOperation.CREATE, 10, 'text/plain', 'txt');
213
+ recordFileOperationMetricModule(mockConfig, {
214
+ operation: FileOperation.CREATE,
215
+ lines: 10,
216
+ mimetype: 'text/plain',
217
+ extension: 'txt',
218
+ });
188
219
  expect(mockCounterAddFn).toHaveBeenCalledTimes(2);
189
220
  expect(mockCounterAddFn).toHaveBeenNthCalledWith(1, 1, {
190
221
  'session.id': 'test-session-id',
@@ -200,7 +231,9 @@ describe('Telemetry Metrics', () => {
200
231
  it('should record file read with minimal attributes', () => {
201
232
  initializeMetricsModule(mockConfig);
202
233
  mockCounterAddFn.mockClear();
203
- recordFileOperationMetricModule(mockConfig, FileOperation.READ);
234
+ recordFileOperationMetricModule(mockConfig, {
235
+ operation: FileOperation.READ,
236
+ });
204
237
  expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
205
238
  'session.id': 'test-session-id',
206
239
  operation: FileOperation.READ,
@@ -209,7 +242,10 @@ describe('Telemetry Metrics', () => {
209
242
  it('should record file update with some attributes', () => {
210
243
  initializeMetricsModule(mockConfig);
211
244
  mockCounterAddFn.mockClear();
212
- recordFileOperationMetricModule(mockConfig, FileOperation.UPDATE, undefined, 'application/javascript');
245
+ recordFileOperationMetricModule(mockConfig, {
246
+ operation: FileOperation.UPDATE,
247
+ mimetype: 'application/javascript',
248
+ });
213
249
  expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
214
250
  'session.id': 'test-session-id',
215
251
  operation: FileOperation.UPDATE,
@@ -219,7 +255,9 @@ describe('Telemetry Metrics', () => {
219
255
  it('should record file operation without diffStat', () => {
220
256
  initializeMetricsModule(mockConfig);
221
257
  mockCounterAddFn.mockClear();
222
- recordFileOperationMetricModule(mockConfig, FileOperation.UPDATE, undefined, undefined, undefined);
258
+ recordFileOperationMetricModule(mockConfig, {
259
+ operation: FileOperation.UPDATE,
260
+ });
223
261
  expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
224
262
  'session.id': 'test-session-id',
225
263
  operation: FileOperation.UPDATE,
@@ -228,7 +266,12 @@ describe('Telemetry Metrics', () => {
228
266
  it('should record minimal file operation when optional parameters are undefined', () => {
229
267
  initializeMetricsModule(mockConfig);
230
268
  mockCounterAddFn.mockClear();
231
- recordFileOperationMetricModule(mockConfig, FileOperation.UPDATE, 10, 'text/plain', 'txt', undefined);
269
+ recordFileOperationMetricModule(mockConfig, {
270
+ operation: FileOperation.UPDATE,
271
+ lines: 10,
272
+ mimetype: 'text/plain',
273
+ extension: 'txt',
274
+ });
232
275
  expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
233
276
  'session.id': 'test-session-id',
234
277
  operation: FileOperation.UPDATE,
@@ -240,7 +283,9 @@ describe('Telemetry Metrics', () => {
240
283
  it('should not include diffStat attributes when diffStat is not provided', () => {
241
284
  initializeMetricsModule(mockConfig);
242
285
  mockCounterAddFn.mockClear();
243
- recordFileOperationMetricModule(mockConfig, FileOperation.UPDATE, undefined, undefined, undefined);
286
+ recordFileOperationMetricModule(mockConfig, {
287
+ operation: FileOperation.UPDATE,
288
+ });
244
289
  expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
245
290
  'session.id': 'test-session-id',
246
291
  operation: FileOperation.UPDATE,
@@ -301,18 +346,24 @@ describe('Telemetry Metrics', () => {
301
346
  };
302
347
  initializeMetricsModule(mockConfigDisabled);
303
348
  mockHistogramRecordFn.mockClear();
304
- recordStartupPerformanceModule(mockConfigDisabled, 'settings_loading', 100, {
305
- auth_type: 'gemini',
349
+ recordStartupPerformanceModule(mockConfigDisabled, 100, {
350
+ phase: 'settings_loading',
351
+ details: {
352
+ auth_type: 'gemini',
353
+ },
306
354
  });
307
355
  expect(mockHistogramRecordFn).not.toHaveBeenCalled();
308
356
  });
309
357
  it('should record startup performance with phase and details', () => {
310
358
  initializeMetricsModule(mockConfig);
311
359
  mockHistogramRecordFn.mockClear();
312
- recordStartupPerformanceModule(mockConfig, 'settings_loading', 150, {
313
- auth_type: 'gemini',
314
- telemetry_enabled: true,
315
- settings_sources: 2,
360
+ recordStartupPerformanceModule(mockConfig, 150, {
361
+ phase: 'settings_loading',
362
+ details: {
363
+ auth_type: 'gemini',
364
+ telemetry_enabled: true,
365
+ settings_sources: 2,
366
+ },
316
367
  });
317
368
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(150, {
318
369
  'session.id': 'test-session-id',
@@ -325,7 +376,7 @@ describe('Telemetry Metrics', () => {
325
376
  it('should record startup performance without details', () => {
326
377
  initializeMetricsModule(mockConfig);
327
378
  mockHistogramRecordFn.mockClear();
328
- recordStartupPerformanceModule(mockConfig, 'cleanup', 50);
379
+ recordStartupPerformanceModule(mockConfig, 50, { phase: 'cleanup' });
329
380
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(50, {
330
381
  'session.id': 'test-session-id',
331
382
  phase: 'cleanup',
@@ -336,9 +387,12 @@ describe('Telemetry Metrics', () => {
336
387
  mockHistogramRecordFn.mockClear();
337
388
  // Test with realistic floating-point values that performance.now() would return
338
389
  const floatingPointDuration = 123.45678;
339
- recordStartupPerformanceModule(mockConfig, 'total_startup', floatingPointDuration, {
340
- is_tty: true,
341
- has_question: false,
390
+ recordStartupPerformanceModule(mockConfig, floatingPointDuration, {
391
+ phase: 'total_startup',
392
+ details: {
393
+ is_tty: true,
394
+ has_question: false,
395
+ },
342
396
  });
343
397
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(floatingPointDuration, {
344
398
  'session.id': 'test-session-id',
@@ -352,7 +406,10 @@ describe('Telemetry Metrics', () => {
352
406
  it('should record memory usage for different memory types', () => {
353
407
  initializeMetricsModule(mockConfig);
354
408
  mockHistogramRecordFn.mockClear();
355
- recordMemoryUsageModule(mockConfig, MemoryMetricType.HEAP_USED, 15728640, 'startup');
409
+ recordMemoryUsageModule(mockConfig, 15728640, {
410
+ memory_type: MemoryMetricType.HEAP_USED,
411
+ component: 'startup',
412
+ });
356
413
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(15728640, {
357
414
  'session.id': 'test-session-id',
358
415
  memory_type: 'heap_used',
@@ -362,9 +419,18 @@ describe('Telemetry Metrics', () => {
362
419
  it('should record memory usage for all memory metric types', () => {
363
420
  initializeMetricsModule(mockConfig);
364
421
  mockHistogramRecordFn.mockClear();
365
- recordMemoryUsageModule(mockConfig, MemoryMetricType.HEAP_TOTAL, 31457280, 'api_call');
366
- recordMemoryUsageModule(mockConfig, MemoryMetricType.EXTERNAL, 2097152, 'tool_execution');
367
- recordMemoryUsageModule(mockConfig, MemoryMetricType.RSS, 41943040, 'memory_monitor');
422
+ recordMemoryUsageModule(mockConfig, 31457280, {
423
+ memory_type: MemoryMetricType.HEAP_TOTAL,
424
+ component: 'api_call',
425
+ });
426
+ recordMemoryUsageModule(mockConfig, 2097152, {
427
+ memory_type: MemoryMetricType.EXTERNAL,
428
+ component: 'tool_execution',
429
+ });
430
+ recordMemoryUsageModule(mockConfig, 41943040, {
431
+ memory_type: MemoryMetricType.RSS,
432
+ component: 'memory_monitor',
433
+ });
368
434
  expect(mockHistogramRecordFn).toHaveBeenCalledTimes(3); // One for each call
369
435
  expect(mockHistogramRecordFn).toHaveBeenNthCalledWith(1, 31457280, {
370
436
  'session.id': 'test-session-id',
@@ -385,11 +451,12 @@ describe('Telemetry Metrics', () => {
385
451
  it('should record memory usage without component', () => {
386
452
  initializeMetricsModule(mockConfig);
387
453
  mockHistogramRecordFn.mockClear();
388
- recordMemoryUsageModule(mockConfig, MemoryMetricType.HEAP_USED, 15728640);
454
+ recordMemoryUsageModule(mockConfig, 15728640, {
455
+ memory_type: MemoryMetricType.HEAP_USED,
456
+ });
389
457
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(15728640, {
390
458
  'session.id': 'test-session-id',
391
459
  memory_type: 'heap_used',
392
- component: undefined,
393
460
  });
394
461
  });
395
462
  });
@@ -397,7 +464,9 @@ describe('Telemetry Metrics', () => {
397
464
  it('should record CPU usage percentage', () => {
398
465
  initializeMetricsModule(mockConfig);
399
466
  mockHistogramRecordFn.mockClear();
400
- recordCpuUsageModule(mockConfig, 85.5, 'tool_execution');
467
+ recordCpuUsageModule(mockConfig, 85.5, {
468
+ component: 'tool_execution',
469
+ });
401
470
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(85.5, {
402
471
  'session.id': 'test-session-id',
403
472
  component: 'tool_execution',
@@ -406,10 +475,9 @@ describe('Telemetry Metrics', () => {
406
475
  it('should record CPU usage without component', () => {
407
476
  initializeMetricsModule(mockConfig);
408
477
  mockHistogramRecordFn.mockClear();
409
- recordCpuUsageModule(mockConfig, 42.3);
478
+ recordCpuUsageModule(mockConfig, 42.3, {});
410
479
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(42.3, {
411
480
  'session.id': 'test-session-id',
412
- component: undefined,
413
481
  });
414
482
  });
415
483
  });
@@ -435,7 +503,10 @@ describe('Telemetry Metrics', () => {
435
503
  it('should record tool execution breakdown for all phases', () => {
436
504
  initializeMetricsModule(mockConfig);
437
505
  mockHistogramRecordFn.mockClear();
438
- recordToolExecutionBreakdownModule(mockConfig, 'Read', ToolExecutionPhase.VALIDATION, 25);
506
+ recordToolExecutionBreakdownModule(mockConfig, 25, {
507
+ function_name: 'Read',
508
+ phase: ToolExecutionPhase.VALIDATION,
509
+ });
439
510
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(25, {
440
511
  'session.id': 'test-session-id',
441
512
  function_name: 'Read',
@@ -445,9 +516,18 @@ describe('Telemetry Metrics', () => {
445
516
  it('should record execution breakdown for different phases', () => {
446
517
  initializeMetricsModule(mockConfig);
447
518
  mockHistogramRecordFn.mockClear();
448
- recordToolExecutionBreakdownModule(mockConfig, 'Bash', ToolExecutionPhase.PREPARATION, 50);
449
- recordToolExecutionBreakdownModule(mockConfig, 'Bash', ToolExecutionPhase.EXECUTION, 1500);
450
- recordToolExecutionBreakdownModule(mockConfig, 'Bash', ToolExecutionPhase.RESULT_PROCESSING, 75);
519
+ recordToolExecutionBreakdownModule(mockConfig, 50, {
520
+ function_name: 'Bash',
521
+ phase: ToolExecutionPhase.PREPARATION,
522
+ });
523
+ recordToolExecutionBreakdownModule(mockConfig, 1500, {
524
+ function_name: 'Bash',
525
+ phase: ToolExecutionPhase.EXECUTION,
526
+ });
527
+ recordToolExecutionBreakdownModule(mockConfig, 75, {
528
+ function_name: 'Bash',
529
+ phase: ToolExecutionPhase.RESULT_PROCESSING,
530
+ });
451
531
  expect(mockHistogramRecordFn).toHaveBeenCalledTimes(3); // One for each call
452
532
  expect(mockHistogramRecordFn).toHaveBeenNthCalledWith(1, 50, {
453
533
  'session.id': 'test-session-id',
@@ -470,7 +550,11 @@ describe('Telemetry Metrics', () => {
470
550
  it('should record token efficiency metrics', () => {
471
551
  initializeMetricsModule(mockConfig);
472
552
  mockHistogramRecordFn.mockClear();
473
- recordTokenEfficiencyModule(mockConfig, 'gemini-pro', 'cache_hit_rate', 0.85, 'api_request');
553
+ recordTokenEfficiencyModule(mockConfig, 0.85, {
554
+ model: 'gemini-pro',
555
+ metric: 'cache_hit_rate',
556
+ context: 'api_request',
557
+ });
474
558
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(0.85, {
475
559
  'session.id': 'test-session-id',
476
560
  model: 'gemini-pro',
@@ -481,12 +565,14 @@ describe('Telemetry Metrics', () => {
481
565
  it('should record token efficiency without context', () => {
482
566
  initializeMetricsModule(mockConfig);
483
567
  mockHistogramRecordFn.mockClear();
484
- recordTokenEfficiencyModule(mockConfig, 'gemini-pro', 'tokens_per_operation', 125.5);
568
+ recordTokenEfficiencyModule(mockConfig, 125.5, {
569
+ model: 'gemini-pro',
570
+ metric: 'tokens_per_operation',
571
+ });
485
572
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(125.5, {
486
573
  'session.id': 'test-session-id',
487
574
  model: 'gemini-pro',
488
575
  metric: 'tokens_per_operation',
489
- context: undefined,
490
576
  });
491
577
  });
492
578
  });
@@ -494,7 +580,10 @@ describe('Telemetry Metrics', () => {
494
580
  it('should record API request breakdown for all phases', () => {
495
581
  initializeMetricsModule(mockConfig);
496
582
  mockHistogramRecordFn.mockClear();
497
- recordApiRequestBreakdownModule(mockConfig, 'gemini-pro', ApiRequestPhase.REQUEST_PREPARATION, 15);
583
+ recordApiRequestBreakdownModule(mockConfig, 15, {
584
+ model: 'gemini-pro',
585
+ phase: ApiRequestPhase.REQUEST_PREPARATION,
586
+ });
498
587
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(15, {
499
588
  'session.id': 'test-session-id',
500
589
  model: 'gemini-pro',
@@ -504,9 +593,18 @@ describe('Telemetry Metrics', () => {
504
593
  it('should record API request breakdown for different phases', () => {
505
594
  initializeMetricsModule(mockConfig);
506
595
  mockHistogramRecordFn.mockClear();
507
- recordApiRequestBreakdownModule(mockConfig, 'gemini-pro', ApiRequestPhase.NETWORK_LATENCY, 250);
508
- recordApiRequestBreakdownModule(mockConfig, 'gemini-pro', ApiRequestPhase.RESPONSE_PROCESSING, 100);
509
- recordApiRequestBreakdownModule(mockConfig, 'gemini-pro', ApiRequestPhase.TOKEN_PROCESSING, 50);
596
+ recordApiRequestBreakdownModule(mockConfig, 250, {
597
+ model: 'gemini-pro',
598
+ phase: ApiRequestPhase.NETWORK_LATENCY,
599
+ });
600
+ recordApiRequestBreakdownModule(mockConfig, 100, {
601
+ model: 'gemini-pro',
602
+ phase: ApiRequestPhase.RESPONSE_PROCESSING,
603
+ });
604
+ recordApiRequestBreakdownModule(mockConfig, 50, {
605
+ model: 'gemini-pro',
606
+ phase: ApiRequestPhase.TOKEN_PROCESSING,
607
+ });
510
608
  expect(mockHistogramRecordFn).toHaveBeenCalledTimes(3); // One for each call
511
609
  expect(mockHistogramRecordFn).toHaveBeenNthCalledWith(1, 250, {
512
610
  'session.id': 'test-session-id',
@@ -529,7 +627,10 @@ describe('Telemetry Metrics', () => {
529
627
  it('should record performance score with category and baseline', () => {
530
628
  initializeMetricsModule(mockConfig);
531
629
  mockHistogramRecordFn.mockClear();
532
- recordPerformanceScoreModule(mockConfig, 85.5, 'memory_efficiency', 80.0);
630
+ recordPerformanceScoreModule(mockConfig, 85.5, {
631
+ category: 'memory_efficiency',
632
+ baseline: 80.0,
633
+ });
533
634
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(85.5, {
534
635
  'session.id': 'test-session-id',
535
636
  category: 'memory_efficiency',
@@ -539,11 +640,12 @@ describe('Telemetry Metrics', () => {
539
640
  it('should record performance score without baseline', () => {
540
641
  initializeMetricsModule(mockConfig);
541
642
  mockHistogramRecordFn.mockClear();
542
- recordPerformanceScoreModule(mockConfig, 92.3, 'overall_performance');
643
+ recordPerformanceScoreModule(mockConfig, 92.3, {
644
+ category: 'overall_performance',
645
+ });
543
646
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(92.3, {
544
647
  'session.id': 'test-session-id',
545
648
  category: 'overall_performance',
546
- baseline: undefined,
547
649
  });
548
650
  });
549
651
  });
@@ -552,7 +654,12 @@ describe('Telemetry Metrics', () => {
552
654
  initializeMetricsModule(mockConfig);
553
655
  mockCounterAddFn.mockClear();
554
656
  mockHistogramRecordFn.mockClear();
555
- recordPerformanceRegressionModule(mockConfig, 'startup_time', 1200, 1000, 'medium');
657
+ recordPerformanceRegressionModule(mockConfig, {
658
+ metric: 'startup_time',
659
+ current_value: 1200,
660
+ baseline_value: 1000,
661
+ severity: 'medium',
662
+ });
556
663
  // Verify regression counter
557
664
  expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
558
665
  'session.id': 'test-session-id',
@@ -574,7 +681,12 @@ describe('Telemetry Metrics', () => {
574
681
  initializeMetricsModule(mockConfig);
575
682
  mockCounterAddFn.mockClear();
576
683
  mockHistogramRecordFn.mockClear();
577
- recordPerformanceRegressionModule(mockConfig, 'memory_usage', 100, 0, 'high');
684
+ recordPerformanceRegressionModule(mockConfig, {
685
+ metric: 'memory_usage',
686
+ current_value: 100,
687
+ baseline_value: 0,
688
+ severity: 'high',
689
+ });
578
690
  // Verify regression counter still recorded
579
691
  expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
580
692
  'session.id': 'test-session-id',
@@ -589,8 +701,18 @@ describe('Telemetry Metrics', () => {
589
701
  it('should record different severity levels', () => {
590
702
  initializeMetricsModule(mockConfig);
591
703
  mockCounterAddFn.mockClear();
592
- recordPerformanceRegressionModule(mockConfig, 'api_latency', 500, 400, 'low');
593
- recordPerformanceRegressionModule(mockConfig, 'cpu_usage', 90, 70, 'high');
704
+ recordPerformanceRegressionModule(mockConfig, {
705
+ metric: 'api_latency',
706
+ current_value: 500,
707
+ baseline_value: 400,
708
+ severity: 'low',
709
+ });
710
+ recordPerformanceRegressionModule(mockConfig, {
711
+ metric: 'cpu_usage',
712
+ current_value: 90,
713
+ baseline_value: 70,
714
+ severity: 'high',
715
+ });
594
716
  expect(mockCounterAddFn).toHaveBeenNthCalledWith(1, 1, {
595
717
  'session.id': 'test-session-id',
596
718
  metric: 'api_latency',
@@ -611,7 +733,12 @@ describe('Telemetry Metrics', () => {
611
733
  it('should record baseline comparison with percentage change', () => {
612
734
  initializeMetricsModule(mockConfig);
613
735
  mockHistogramRecordFn.mockClear();
614
- recordBaselineComparisonModule(mockConfig, 'memory_usage', 120, 100, 'performance_tracking');
736
+ recordBaselineComparisonModule(mockConfig, {
737
+ metric: 'memory_usage',
738
+ current_value: 120,
739
+ baseline_value: 100,
740
+ category: 'performance_tracking',
741
+ });
615
742
  // 20% increase: (120 - 100) / 100 * 100 = 20%
616
743
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(20, {
617
744
  'session.id': 'test-session-id',
@@ -624,7 +751,12 @@ describe('Telemetry Metrics', () => {
624
751
  it('should handle negative percentage change (improvement)', () => {
625
752
  initializeMetricsModule(mockConfig);
626
753
  mockHistogramRecordFn.mockClear();
627
- recordBaselineComparisonModule(mockConfig, 'startup_time', 800, 1000, 'optimization');
754
+ recordBaselineComparisonModule(mockConfig, {
755
+ metric: 'startup_time',
756
+ current_value: 800,
757
+ baseline_value: 1000,
758
+ category: 'optimization',
759
+ });
628
760
  // 20% decrease: (800 - 1000) / 1000 * 100 = -20%
629
761
  expect(mockHistogramRecordFn).toHaveBeenCalledWith(-20, {
630
762
  'session.id': 'test-session-id',
@@ -640,7 +772,12 @@ describe('Telemetry Metrics', () => {
640
772
  const diagSpy = vi.spyOn(mockedModule.diag, 'warn');
641
773
  initializeMetricsModule(mockConfig);
642
774
  mockHistogramRecordFn.mockClear();
643
- recordBaselineComparisonModule(mockConfig, 'new_metric', 50, 0, 'testing');
775
+ recordBaselineComparisonModule(mockConfig, {
776
+ metric: 'new_metric',
777
+ current_value: 50,
778
+ baseline_value: 0,
779
+ category: 'testing',
780
+ });
644
781
  expect(diagSpy).toHaveBeenCalledWith('Baseline value is zero, skipping comparison.');
645
782
  expect(mockHistogramRecordFn).not.toHaveBeenCalled();
646
783
  });