@google/gemini-cli-core 0.1.21 → 0.1.22

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 (205) hide show
  1. package/README.md +26 -28
  2. package/dist/src/code_assist/converter.d.ts +1 -0
  3. package/dist/src/code_assist/converter.js +1 -0
  4. package/dist/src/code_assist/converter.js.map +1 -1
  5. package/dist/src/code_assist/oauth2.d.ts +1 -0
  6. package/dist/src/code_assist/oauth2.js +37 -20
  7. package/dist/src/code_assist/oauth2.js.map +1 -1
  8. package/dist/src/code_assist/oauth2.test.js +51 -8
  9. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  10. package/dist/src/code_assist/server.js +1 -1
  11. package/dist/src/code_assist/server.js.map +1 -1
  12. package/dist/src/code_assist/setup.js +1 -1
  13. package/dist/src/code_assist/setup.js.map +1 -1
  14. package/dist/src/code_assist/setup.test.js +14 -8
  15. package/dist/src/code_assist/setup.test.js.map +1 -1
  16. package/dist/src/config/config.d.ts +2 -0
  17. package/dist/src/config/config.js +7 -6
  18. package/dist/src/config/config.js.map +1 -1
  19. package/dist/src/config/config.test.js +22 -0
  20. package/dist/src/config/config.test.js.map +1 -1
  21. package/dist/src/core/client.d.ts +4 -11
  22. package/dist/src/core/client.js +46 -28
  23. package/dist/src/core/client.js.map +1 -1
  24. package/dist/src/core/client.test.js +294 -0
  25. package/dist/src/core/client.test.js.map +1 -1
  26. package/dist/src/core/contentGenerator.js +19 -9
  27. package/dist/src/core/contentGenerator.js.map +1 -1
  28. package/dist/src/core/contentGenerator.test.js +39 -15
  29. package/dist/src/core/contentGenerator.test.js.map +1 -1
  30. package/dist/src/core/coreToolScheduler.js +6 -2
  31. package/dist/src/core/coreToolScheduler.js.map +1 -1
  32. package/dist/src/core/coreToolScheduler.test.js +46 -63
  33. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  34. package/dist/src/core/logger.d.ts +22 -1
  35. package/dist/src/core/logger.js +103 -17
  36. package/dist/src/core/logger.js.map +1 -1
  37. package/dist/src/core/logger.test.js +86 -20
  38. package/dist/src/core/logger.test.js.map +1 -1
  39. package/dist/src/core/nonInteractiveToolExecutor.js +1 -1
  40. package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
  41. package/dist/src/core/nonInteractiveToolExecutor.test.js +79 -36
  42. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  43. package/dist/src/core/prompts.js +4 -4
  44. package/dist/src/core/prompts.js.map +1 -1
  45. package/dist/src/generated/git-commit.d.ts +7 -0
  46. package/dist/src/generated/git-commit.js +10 -0
  47. package/dist/src/generated/git-commit.js.map +1 -0
  48. package/dist/src/ide/constants.d.ts +6 -0
  49. package/dist/src/ide/constants.js +7 -0
  50. package/dist/src/ide/constants.js.map +1 -0
  51. package/dist/src/ide/detect-ide.js +8 -8
  52. package/dist/src/ide/detect-ide.js.map +1 -1
  53. package/dist/src/ide/ide-client.d.ts +5 -1
  54. package/dist/src/ide/ide-client.js +57 -21
  55. package/dist/src/ide/ide-client.js.map +1 -1
  56. package/dist/src/ide/ide-client.test.d.ts +6 -0
  57. package/dist/src/ide/ide-client.test.js +43 -0
  58. package/dist/src/ide/ide-client.test.js.map +1 -0
  59. package/dist/src/ide/ide-installer.js +5 -4
  60. package/dist/src/ide/ide-installer.js.map +1 -1
  61. package/dist/src/ide/ideContext.d.ts +6 -6
  62. package/dist/src/ide/process-utils.d.ts +14 -0
  63. package/dist/src/ide/process-utils.js +57 -0
  64. package/dist/src/ide/process-utils.js.map +1 -0
  65. package/dist/src/index.d.ts +1 -0
  66. package/dist/src/index.js +1 -0
  67. package/dist/src/index.js.map +1 -1
  68. package/dist/src/mcp/oauth-provider.js +176 -58
  69. package/dist/src/mcp/oauth-provider.js.map +1 -1
  70. package/dist/src/mcp/oauth-provider.test.js +132 -62
  71. package/dist/src/mcp/oauth-provider.test.js.map +1 -1
  72. package/dist/src/mcp/oauth-utils.d.ts +3 -1
  73. package/dist/src/mcp/oauth-utils.js +50 -12
  74. package/dist/src/mcp/oauth-utils.js.map +1 -1
  75. package/dist/src/mcp/oauth-utils.test.js +17 -2
  76. package/dist/src/mcp/oauth-utils.test.js.map +1 -1
  77. package/dist/src/services/loopDetectionService.js +5 -5
  78. package/dist/src/services/loopDetectionService.js.map +1 -1
  79. package/dist/src/services/shellExecutionService.test.js +13 -3
  80. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  81. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +22 -4
  82. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +60 -34
  83. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  84. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +11 -0
  85. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +91 -39
  86. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  87. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +5 -2
  88. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +10 -11
  89. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  90. package/dist/src/telemetry/constants.d.ts +1 -0
  91. package/dist/src/telemetry/constants.js +1 -0
  92. package/dist/src/telemetry/constants.js.map +1 -1
  93. package/dist/src/telemetry/index.d.ts +2 -2
  94. package/dist/src/telemetry/index.js +2 -2
  95. package/dist/src/telemetry/index.js.map +1 -1
  96. package/dist/src/telemetry/integration.test.circular.js +1 -0
  97. package/dist/src/telemetry/integration.test.circular.js.map +1 -1
  98. package/dist/src/telemetry/loggers.d.ts +2 -1
  99. package/dist/src/telemetry/loggers.js +22 -4
  100. package/dist/src/telemetry/loggers.js.map +1 -1
  101. package/dist/src/telemetry/loggers.test.js +27 -2
  102. package/dist/src/telemetry/loggers.test.js.map +1 -1
  103. package/dist/src/telemetry/metrics.d.ts +4 -0
  104. package/dist/src/telemetry/metrics.js +21 -8
  105. package/dist/src/telemetry/metrics.js.map +1 -1
  106. package/dist/src/telemetry/metrics.test.js +31 -1
  107. package/dist/src/telemetry/metrics.test.js.map +1 -1
  108. package/dist/src/telemetry/sdk.js +64 -36
  109. package/dist/src/telemetry/sdk.js.map +1 -1
  110. package/dist/src/telemetry/sdk.test.d.ts +6 -0
  111. package/dist/src/telemetry/sdk.test.js +82 -0
  112. package/dist/src/telemetry/sdk.test.js.map +1 -0
  113. package/dist/src/telemetry/types.d.ts +8 -1
  114. package/dist/src/telemetry/types.js +8 -0
  115. package/dist/src/telemetry/types.js.map +1 -1
  116. package/dist/src/test-utils/tools.d.ts +21 -6
  117. package/dist/src/test-utils/tools.js +77 -12
  118. package/dist/src/test-utils/tools.js.map +1 -1
  119. package/dist/src/tools/mcp-client.js +40 -10
  120. package/dist/src/tools/mcp-client.js.map +1 -1
  121. package/dist/src/tools/mcp-client.test.js +31 -1
  122. package/dist/src/tools/mcp-client.test.js.map +1 -1
  123. package/dist/src/tools/mcp-tool.js +21 -3
  124. package/dist/src/tools/mcp-tool.js.map +1 -1
  125. package/dist/src/tools/mcp-tool.test.js +57 -0
  126. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  127. package/dist/src/tools/shell.js +25 -8
  128. package/dist/src/tools/shell.js.map +1 -1
  129. package/dist/src/tools/shell.test.js +12 -0
  130. package/dist/src/tools/shell.test.js.map +1 -1
  131. package/dist/src/tools/tool-error.d.ts +1 -0
  132. package/dist/src/tools/tool-error.js +1 -0
  133. package/dist/src/tools/tool-error.js.map +1 -1
  134. package/dist/src/tools/tool-registry.d.ts +3 -3
  135. package/dist/src/tools/tool-registry.js +45 -30
  136. package/dist/src/tools/tool-registry.js.map +1 -1
  137. package/dist/src/tools/tools.d.ts +14 -73
  138. package/dist/src/tools/tools.js +52 -108
  139. package/dist/src/tools/tools.js.map +1 -1
  140. package/dist/src/tools/tools.test.js +91 -2
  141. package/dist/src/tools/tools.test.js.map +1 -1
  142. package/dist/src/tools/web-search.d.ts +4 -5
  143. package/dist/src/tools/web-search.js +51 -50
  144. package/dist/src/tools/web-search.js.map +1 -1
  145. package/dist/src/tools/web-search.test.d.ts +6 -0
  146. package/dist/src/tools/web-search.test.js +139 -0
  147. package/dist/src/tools/web-search.test.js.map +1 -0
  148. package/dist/src/tools/write-file.d.ts +15 -11
  149. package/dist/src/tools/write-file.js +133 -144
  150. package/dist/src/tools/write-file.js.map +1 -1
  151. package/dist/src/tools/write-file.test.js +57 -88
  152. package/dist/src/tools/write-file.test.js.map +1 -1
  153. package/dist/src/utils/browser.js +4 -3
  154. package/dist/src/utils/browser.js.map +1 -1
  155. package/dist/src/utils/editCorrector.js +13 -13
  156. package/dist/src/utils/editCorrector.js.map +1 -1
  157. package/dist/src/utils/editor.js +1 -1
  158. package/dist/src/utils/editor.js.map +1 -1
  159. package/dist/src/utils/editor.test.js +10 -10
  160. package/dist/src/utils/editor.test.js.map +1 -1
  161. package/dist/src/utils/filesearch/crawler.d.ts +15 -0
  162. package/dist/src/utils/filesearch/crawler.js +50 -0
  163. package/dist/src/utils/filesearch/crawler.js.map +1 -0
  164. package/dist/src/utils/filesearch/crawler.test.d.ts +6 -0
  165. package/dist/src/utils/filesearch/crawler.test.js +468 -0
  166. package/dist/src/utils/filesearch/crawler.test.js.map +1 -0
  167. package/dist/src/utils/filesearch/fileSearch.d.ts +9 -53
  168. package/dist/src/utils/filesearch/fileSearch.js +62 -117
  169. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  170. package/dist/src/utils/filesearch/fileSearch.test.js +95 -197
  171. package/dist/src/utils/filesearch/fileSearch.test.js.map +1 -1
  172. package/dist/src/utils/filesearch/ignore.d.ts +7 -0
  173. package/dist/src/utils/filesearch/ignore.js +25 -0
  174. package/dist/src/utils/filesearch/ignore.js.map +1 -1
  175. package/dist/src/utils/filesearch/ignore.test.js +89 -2
  176. package/dist/src/utils/filesearch/ignore.test.js.map +1 -1
  177. package/dist/src/utils/memoryDiscovery.js +3 -3
  178. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  179. package/dist/src/utils/memoryDiscovery.test.js +3 -2
  180. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  181. package/dist/src/utils/memoryImportProcessor.js +2 -6
  182. package/dist/src/utils/memoryImportProcessor.js.map +1 -1
  183. package/dist/src/utils/paths.d.ts +7 -0
  184. package/dist/src/utils/paths.js +15 -0
  185. package/dist/src/utils/paths.js.map +1 -1
  186. package/dist/src/utils/paths.test.js +74 -2
  187. package/dist/src/utils/paths.test.js.map +1 -1
  188. package/dist/src/utils/secure-browser-launcher.js +4 -3
  189. package/dist/src/utils/secure-browser-launcher.js.map +1 -1
  190. package/dist/src/utils/shell-utils.d.ts +39 -0
  191. package/dist/src/utils/shell-utils.js +72 -2
  192. package/dist/src/utils/shell-utils.js.map +1 -1
  193. package/dist/src/utils/shell-utils.test.js +132 -4
  194. package/dist/src/utils/shell-utils.test.js.map +1 -1
  195. package/dist/src/utils/systemEncoding.js +1 -1
  196. package/dist/src/utils/systemEncoding.js.map +1 -1
  197. package/dist/src/utils/systemEncoding.test.js +23 -23
  198. package/dist/src/utils/systemEncoding.test.js.map +1 -1
  199. package/dist/src/utils/workspaceContext.d.ts +22 -7
  200. package/dist/src/utils/workspaceContext.js +81 -55
  201. package/dist/src/utils/workspaceContext.js.map +1 -1
  202. package/dist/src/utils/workspaceContext.test.js +221 -137
  203. package/dist/src/utils/workspaceContext.test.js.map +1 -1
  204. package/dist/tsconfig.tsbuildinfo +1 -1
  205. package/package.json +4 -1
@@ -3,14 +3,38 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import 'vitest';
6
7
  import { vi, describe, it, expect, afterEach, beforeAll, afterAll, } from 'vitest';
7
- import { ClearcutLogger, TEST_ONLY } from './clearcut-logger.js';
8
+ import { ClearcutLogger, EventNames, TEST_ONLY, } from './clearcut-logger.js';
8
9
  import * as userAccount from '../../utils/user_account.js';
9
10
  import * as userId from '../../utils/user_id.js';
10
11
  import { EventMetadataKey } from './event-metadata-key.js';
11
12
  import { makeFakeConfig } from '../../test-utils/config.js';
12
13
  import { http, HttpResponse } from 'msw';
13
14
  import { server } from '../../mocks/msw.js';
15
+ import { makeChatCompressionEvent } from '../types.js';
16
+ expect.extend({
17
+ toHaveEventName(received, name) {
18
+ const { isNot } = this;
19
+ const event = JSON.parse(received[0].source_extension_json);
20
+ const pass = event.event_name === name;
21
+ return {
22
+ pass,
23
+ message: () => `event name ${event.event_name} does${isNot ? ' not ' : ''} match ${name}}`,
24
+ };
25
+ },
26
+ toHaveMetadataValue(received, [key, value]) {
27
+ const { isNot } = this;
28
+ const event = JSON.parse(received[0].source_extension_json);
29
+ const metadata = event['event_metadata'][0];
30
+ const data = metadata.find((m) => m.gemini_cli_key === key)?.value;
31
+ const pass = data !== undefined && data === value;
32
+ return {
33
+ pass,
34
+ message: () => `event ${received} does${isNot ? ' not' : ''} have ${value}}`,
35
+ };
36
+ },
37
+ });
14
38
  vi.mock('../../utils/user_account');
15
39
  vi.mock('../../utils/user_id');
16
40
  const mockUserAccount = vi.mocked(userAccount);
@@ -85,26 +109,17 @@ describe('ClearcutLogger', () => {
85
109
  const { logger } = setup({
86
110
  lifetimeGoogleAccounts: 9001,
87
111
  });
88
- const event = logger?.createLogEvent('abc', []);
112
+ const event = logger?.createLogEvent(EventNames.API_ERROR, []);
89
113
  expect(event?.event_metadata[0][0]).toEqual({
90
114
  gemini_cli_key: EventMetadataKey.GEMINI_CLI_GOOGLE_ACCOUNTS_COUNT,
91
115
  value: '9001',
92
116
  });
93
117
  });
94
- it('logs the current surface from a github action', () => {
95
- const { logger } = setup({});
96
- vi.stubEnv('GITHUB_SHA', '8675309');
97
- const event = logger?.createLogEvent('abc', []);
98
- expect(event?.event_metadata[0][1]).toEqual({
99
- gemini_cli_key: EventMetadataKey.GEMINI_CLI_SURFACE,
100
- value: 'GitHub',
101
- });
102
- });
103
- it('honors the value from env.SURFACE over all others', () => {
118
+ it('logs the current surface', () => {
104
119
  const { logger } = setup({});
105
120
  vi.stubEnv('TERM_PROGRAM', 'vscode');
106
121
  vi.stubEnv('SURFACE', 'ide-1234');
107
- const event = logger?.createLogEvent('abc', []);
122
+ const event = logger?.createLogEvent(EventNames.API_ERROR, []);
108
123
  expect(event?.event_metadata[0][1]).toEqual({
109
124
  gemini_cli_key: EventMetadataKey.GEMINI_CLI_SURFACE,
110
125
  value: 'ide-1234',
@@ -152,34 +167,72 @@ describe('ClearcutLogger', () => {
152
167
  vi.stubEnv(key, value);
153
168
  }
154
169
  vi.stubEnv('TERM_PROGRAM', 'vscode');
155
- const event = logger?.createLogEvent('abc', []);
170
+ const event = logger?.createLogEvent(EventNames.API_ERROR, []);
156
171
  expect(event?.event_metadata[0][1]).toEqual({
157
172
  gemini_cli_key: EventMetadataKey.GEMINI_CLI_SURFACE,
158
173
  value: expectedValue,
159
174
  });
160
175
  });
161
176
  });
177
+ describe('logChatCompressionEvent', () => {
178
+ it('logs an event with proper fields', () => {
179
+ const { logger } = setup();
180
+ logger?.logChatCompressionEvent(makeChatCompressionEvent({
181
+ tokens_before: 9001,
182
+ tokens_after: 8000,
183
+ }));
184
+ const events = getEvents(logger);
185
+ expect(events.length).toBe(1);
186
+ expect(events[0]).toHaveEventName(EventNames.CHAT_COMPRESSION);
187
+ expect(events[0]).toHaveMetadataValue([
188
+ EventMetadataKey.GEMINI_CLI_COMPRESSION_TOKENS_BEFORE,
189
+ '9001',
190
+ ]);
191
+ expect(events[0]).toHaveMetadataValue([
192
+ EventMetadataKey.GEMINI_CLI_COMPRESSION_TOKENS_AFTER,
193
+ '8000',
194
+ ]);
195
+ });
196
+ });
162
197
  describe('enqueueLogEvent', () => {
163
198
  it('should add events to the queue', () => {
164
199
  const { logger } = setup();
165
- logger.enqueueLogEvent({ test: 'event1' });
200
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_ERROR));
166
201
  expect(getEventsSize(logger)).toBe(1);
167
202
  });
168
203
  it('should evict the oldest event when the queue is full', () => {
169
204
  const { logger } = setup();
170
205
  for (let i = 0; i < TEST_ONLY.MAX_EVENTS; i++) {
171
- logger.enqueueLogEvent({ event_id: i });
206
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_ERROR, [
207
+ {
208
+ gemini_cli_key: EventMetadataKey.GEMINI_CLI_AI_ADDED_LINES,
209
+ value: `${i}`,
210
+ },
211
+ ]));
172
212
  }
173
- expect(getEventsSize(logger)).toBe(TEST_ONLY.MAX_EVENTS);
174
- const firstEvent = JSON.parse(getEvents(logger)[0][0].source_extension_json);
175
- expect(firstEvent.event_id).toBe(0);
213
+ let events = getEvents(logger);
214
+ expect(events.length).toBe(TEST_ONLY.MAX_EVENTS);
215
+ expect(events[0]).toHaveMetadataValue([
216
+ EventMetadataKey.GEMINI_CLI_AI_ADDED_LINES,
217
+ '0',
218
+ ]);
176
219
  // This should push out the first event
177
- logger.enqueueLogEvent({ event_id: TEST_ONLY.MAX_EVENTS });
178
- expect(getEventsSize(logger)).toBe(TEST_ONLY.MAX_EVENTS);
179
- const newFirstEvent = JSON.parse(getEvents(logger)[0][0].source_extension_json);
180
- expect(newFirstEvent.event_id).toBe(1);
181
- const lastEvent = JSON.parse(getEvents(logger)[TEST_ONLY.MAX_EVENTS - 1][0].source_extension_json);
182
- expect(lastEvent.event_id).toBe(TEST_ONLY.MAX_EVENTS);
220
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_ERROR, [
221
+ {
222
+ gemini_cli_key: EventMetadataKey.GEMINI_CLI_AI_ADDED_LINES,
223
+ value: `${TEST_ONLY.MAX_EVENTS}`,
224
+ },
225
+ ]));
226
+ events = getEvents(logger);
227
+ expect(events.length).toBe(TEST_ONLY.MAX_EVENTS);
228
+ expect(events[0]).toHaveMetadataValue([
229
+ EventMetadataKey.GEMINI_CLI_AI_ADDED_LINES,
230
+ '1',
231
+ ]);
232
+ expect(events.at(TEST_ONLY.MAX_EVENTS - 1)).toHaveMetadataValue([
233
+ EventMetadataKey.GEMINI_CLI_AI_ADDED_LINES,
234
+ `${TEST_ONLY.MAX_EVENTS}`,
235
+ ]);
183
236
  });
184
237
  });
185
238
  describe('flushToClearcut', () => {
@@ -189,13 +242,13 @@ describe('ClearcutLogger', () => {
189
242
  proxy: 'http://mycoolproxy.whatever.com:3128',
190
243
  },
191
244
  });
192
- logger.enqueueLogEvent({ event_id: 1 });
245
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_ERROR));
193
246
  const response = await logger.flushToClearcut();
194
247
  expect(response.nextRequestWaitMs).toBe(NEXT_WAIT_MS);
195
248
  });
196
249
  it('should clear events on successful flush', async () => {
197
250
  const { logger } = setup();
198
- logger.enqueueLogEvent({ event_id: 1 });
251
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_ERROR));
199
252
  const response = await logger.flushToClearcut();
200
253
  expect(getEvents(logger)).toEqual([]);
201
254
  expect(response.nextRequestWaitMs).toBe(NEXT_WAIT_MS);
@@ -203,34 +256,33 @@ describe('ClearcutLogger', () => {
203
256
  it('should handle a network error and requeue events', async () => {
204
257
  const { logger } = setup();
205
258
  server.resetHandlers(http.post(CLEARCUT_URL, () => HttpResponse.error()));
206
- logger.enqueueLogEvent({ event_id: 1 });
207
- logger.enqueueLogEvent({ event_id: 2 });
259
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_REQUEST));
260
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_ERROR));
208
261
  expect(getEventsSize(logger)).toBe(2);
209
262
  const x = logger.flushToClearcut();
210
263
  await x;
211
264
  expect(getEventsSize(logger)).toBe(2);
212
265
  const events = getEvents(logger);
213
- expect(JSON.parse(events[0][0].source_extension_json).event_id).toBe(1);
266
+ expect(events.length).toBe(2);
267
+ expect(events[0]).toHaveEventName(EventNames.API_REQUEST);
214
268
  });
215
269
  it('should handle an HTTP error and requeue events', async () => {
216
270
  const { logger } = setup();
217
271
  server.resetHandlers(http.post(CLEARCUT_URL, () => new HttpResponse({ 'the system is down': true }, {
218
272
  status: 500,
219
273
  })));
220
- logger.enqueueLogEvent({ event_id: 1 });
221
- logger.enqueueLogEvent({ event_id: 2 });
274
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_REQUEST));
275
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_ERROR));
222
276
  expect(getEvents(logger).length).toBe(2);
223
277
  await logger.flushToClearcut();
224
- expect(getEvents(logger).length).toBe(2);
225
278
  const events = getEvents(logger);
226
- expect(JSON.parse(events[0][0].source_extension_json).event_id).toBe(1);
279
+ expect(events[0]).toHaveEventName(EventNames.API_REQUEST);
227
280
  });
228
281
  });
229
282
  describe('requeueFailedEvents logic', () => {
230
283
  it('should limit the number of requeued events to max_retry_events', () => {
231
284
  const { logger } = setup();
232
- const maxRetryEvents = TEST_ONLY.MAX_RETRY_EVENTS;
233
- const eventsToLogCount = maxRetryEvents + 5;
285
+ const eventsToLogCount = TEST_ONLY.MAX_RETRY_EVENTS + 5;
234
286
  const eventsToSend = [];
235
287
  for (let i = 0; i < eventsToLogCount; i++) {
236
288
  eventsToSend.push([
@@ -241,10 +293,10 @@ describe('ClearcutLogger', () => {
241
293
  ]);
242
294
  }
243
295
  requeueFailedEvents(logger, eventsToSend);
244
- expect(getEventsSize(logger)).toBe(maxRetryEvents);
296
+ expect(getEventsSize(logger)).toBe(TEST_ONLY.MAX_RETRY_EVENTS);
245
297
  const firstRequeuedEvent = JSON.parse(getEvents(logger)[0][0].source_extension_json);
246
298
  // The last `maxRetryEvents` are kept. The oldest of those is at index `eventsToLogCount - maxRetryEvents`.
247
- expect(firstRequeuedEvent.event_id).toBe(eventsToLogCount - maxRetryEvents);
299
+ expect(firstRequeuedEvent.event_id).toBe(eventsToLogCount - TEST_ONLY.MAX_RETRY_EVENTS);
248
300
  });
249
301
  it('should not requeue more events than available space in the queue', () => {
250
302
  const { logger } = setup();
@@ -252,7 +304,7 @@ describe('ClearcutLogger', () => {
252
304
  const spaceToLeave = 5;
253
305
  const initialEventCount = maxEvents - spaceToLeave;
254
306
  for (let i = 0; i < initialEventCount; i++) {
255
- logger.enqueueLogEvent({ event_id: `initial_${i}` });
307
+ logger.enqueueLogEvent(logger.createLogEvent(EventNames.API_ERROR));
256
308
  }
257
309
  expect(getEventsSize(logger)).toBe(initialEventCount);
258
310
  const failedEventsCount = 10; // More than spaceToLeave
@@ -1 +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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"}
1
+ {"version":3,"file":"clearcut-logger.test.js","sourceRoot":"","sources":["../../../../src/telemetry/clearcut-logger/clearcut-logger.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,QAAQ,CAAC;AAChB,OAAO,EACL,EAAE,EACF,QAAQ,EACR,EAAE,EACF,MAAM,EACN,SAAS,EACT,SAAS,EACT,QAAQ,GACT,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,cAAc,EAGd,UAAU,EACV,SAAS,GACV,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAYvD,MAAM,CAAC,MAAM,CAAC;IACZ,eAAe,CAAC,QAAyB,EAAE,IAAgB;QACzD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAa,CAAC;QACxE,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,KAAM,IAA0B,CAAC;QAC9D,OAAO;YACL,IAAI;YACJ,OAAO,EAAE,GAAG,EAAE,CACZ,cAAc,KAAK,CAAC,UAAU,QAAQ,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,IAAI,GAAG;SAC9E,CAAC;IACJ,CAAC;IAED,mBAAmB,CACjB,QAAyB,EACzB,CAAC,GAAG,EAAE,KAAK,CAA6B;QAExC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAa,CAAC;QACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC;QAEnE,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,KAAK,CAAC;QAElD,OAAO;YACL,IAAI;YACJ,OAAO,EAAE,GAAG,EAAE,CACZ,SAAS,QAAQ,QAAQ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,KAAK,GAAG;SAChE,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;AACpC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;AAE/B,MAAM,eAAe,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AAC/C,MAAM,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAErC,oEAAoE;AACpE,SAAS,CAAC,GAAG,EAAE;IACb,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC;AAEH,SAAS,CAAC,GAAG,EAAE;IACb,MAAM,CAAC,aAAa,EAAE,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,GAAG,EAAE;IACZ,MAAM,CAAC,KAAK,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,MAAM,YAAY,GAAG,IAAI,CAAC;IAC1B,MAAM,YAAY,GAAG,iCAAiC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACvD,MAAM,gBAAgB,GAAG,KAAK,YAAY,2GAA2G,CAAC;IAEtJ,wDAAwD;IACxD,MAAM,SAAS,GAAG,CAAC,CAAiB,EAAqB,EAAE,CACzD,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAuB,CAAC;IAE7C,MAAM,aAAa,GAAG,CAAC,CAAiB,EAAU,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;IAEtE,MAAM,mBAAmB,GAAG,CAAC,CAAiB,EAAE,MAAyB,EAAE,EAAE,CAC3E,CAAC,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;IAEnC,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,SAAS,KAAK,CAAC,EACb,MAAM,GAAG,EAA+B,EACxC,sBAAsB,GAAG,CAAC,EAC1B,mBAAmB,GAAG,iBAAiB,EACvC,cAAc,GAAG,sBAAsB,MACrC,EAAE;QACJ,MAAM,CAAC,aAAa,CAClB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CACnE,CAAC;QAEF,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAE5B,MAAM,YAAY,GAAG,cAAc,CAAC;YAClC,GAAG,MAAM;SACV,CAAC,CAAC;QACH,cAAc,CAAC,aAAa,EAAE,CAAC;QAE/B,eAAe,CAAC,sBAAsB,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAC5E,eAAe,CAAC,yBAAyB,CAAC,eAAe,CACvD,sBAAsB,CACvB,CAAC;QACF,UAAU,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QAE7D,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAExD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,GAAG,EAAE;QACb,cAAc,CAAC,aAAa,EAAE,CAAC;QAC/B,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,IAAI,CAAC;YACN,EAAE,sBAAsB,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE;YAC3D;gBACE,sBAAsB,EAAE,IAAI;gBAC5B,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;aAC1C;SACF,CAAC,CACA,qDAAqD,EACrD,CAAC,EAAE,sBAAsB,EAAE,aAAa,EAAE,EAAE,EAAE;YAC5C,cAAc,CAAC,aAAa,EAAE,CAAC;YAC/B,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;gBACvB,MAAM,EAAE;oBACN,sBAAsB;iBACvB;aACF,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACxC,CAAC,CACF,CAAC;QAEF,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;YACxB,cAAc,CAAC,aAAa,EAAE,CAAC;YAC/B,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACzD,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;gBACvB,sBAAsB,EAAE,IAAI;aAC7B,CAAC,CAAC;YAEH,MAAM,KAAK,GAAG,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAE/D,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC1C,cAAc,EAAE,gBAAgB,CAAC,gCAAgC;gBACjE,KAAK,EAAE,MAAM;aACd,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;YAE7B,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;YACrC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAElC,MAAM,KAAK,GAAG,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAE/D,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC1C,cAAc,EAAE,gBAAgB,CAAC,kBAAkB;gBACnD,KAAK,EAAE,UAAU;aAClB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,IAAI,CAAC;YACN;gBACE,GAAG,EAAE;oBACH,eAAe,EAAE,QAAQ;oBACzB,UAAU,EAAE,SAAS;iBACtB;gBACD,aAAa,EAAE,QAAQ;aACxB;YACD;gBACE,GAAG,EAAE;oBACH,YAAY,EAAE,QAAQ;oBACtB,UAAU,EAAE,SAAS;iBACtB;gBACD,aAAa,EAAE,QAAQ;aACxB;YACD;gBACE,GAAG,EAAE;oBACH,aAAa,EAAE,MAAM;oBACrB,UAAU,EAAE,SAAS;iBACtB;gBACD,aAAa,EAAE,gBAAgB;aAChC;YACD;gBACE,GAAG,EAAE;oBACH,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,SAAS;iBACtB;gBACD,aAAa,EAAE,OAAO;aACvB;YACD;gBACE,GAAG,EAAE;oBACH,WAAW,EAAE,MAAM;oBACnB,UAAU,EAAE,SAAS;iBACtB;gBACD,aAAa,EAAE,YAAY;aAC5B;SACF,CAAC,CACA,6EAA6E,EAC7E,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE;YACzB,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/C,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACzB,CAAC;YACD,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;YACrC,MAAM,KAAK,GAAG,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC/D,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC1C,cAAc,EAAE,gBAAgB,CAAC,kBAAkB;gBACnD,KAAK,EAAE,aAAa;aACrB,CAAC,CAAC;QACL,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YAC3B,MAAM,EAAE,uBAAuB,CAC7B,wBAAwB,CAAC;gBACvB,aAAa,EAAE,IAAI;gBACnB,YAAY,EAAE,IAAI;aACnB,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,SAAS,CAAC,MAAO,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;YAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;gBACpC,gBAAgB,CAAC,oCAAoC;gBACrD,MAAM;aACP,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;gBACpC,gBAAgB,CAAC,mCAAmC;gBACpD,MAAM;aACP,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YAC3B,MAAO,CAAC,eAAe,CAAC,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,aAAa,CAAC,MAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,MAAO,CAAC,eAAe,CACrB,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,EAAE;oBAC3C;wBACE,cAAc,EAAE,gBAAgB,CAAC,yBAAyB;wBAC1D,KAAK,EAAE,GAAG,CAAC,EAAE;qBACd;iBACF,CAAC,CACH,CAAC;YACJ,CAAC;YAED,IAAI,MAAM,GAAG,SAAS,CAAC,MAAO,CAAC,CAAC;YAChC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;gBACpC,gBAAgB,CAAC,yBAAyB;gBAC1C,GAAG;aACJ,CAAC,CAAC;YAEH,uCAAuC;YACvC,MAAO,CAAC,eAAe,CACrB,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,EAAE;gBAC3C;oBACE,cAAc,EAAE,gBAAgB,CAAC,yBAAyB;oBAC1D,KAAK,EAAE,GAAG,SAAS,CAAC,UAAU,EAAE;iBACjC;aACF,CAAC,CACH,CAAC;YACF,MAAM,GAAG,SAAS,CAAC,MAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;gBACpC,gBAAgB,CAAC,yBAAyB;gBAC1C,GAAG;aACJ,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;gBAC9D,gBAAgB,CAAC,yBAAyB;gBAC1C,GAAG,SAAS,CAAC,UAAU,EAAE;aAC1B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;gBACvB,MAAM,EAAE;oBACN,KAAK,EAAE,sCAAsC;iBAC9C;aACF,CAAC,CAAC;YAEH,MAAO,CAAC,eAAe,CAAC,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YAEtE,MAAM,QAAQ,GAAG,MAAM,MAAO,CAAC,eAAe,EAAE,CAAC;YAEjD,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YAE3B,MAAO,CAAC,eAAe,CAAC,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YACtE,MAAM,QAAQ,GAAG,MAAM,MAAO,CAAC,eAAe,EAAE,CAAC;YAEjD,MAAM,CAAC,SAAS,CAAC,MAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACvC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YAE3B,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1E,MAAO,CAAC,eAAe,CAAC,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;YACxE,MAAO,CAAC,eAAe,CAAC,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,aAAa,CAAC,MAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEvC,MAAM,CAAC,GAAG,MAAO,CAAC,eAAe,EAAE,CAAC;YACpC,MAAM,CAAC,CAAC;YAER,MAAM,CAAC,aAAa,CAAC,MAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAO,CAAC,CAAC;YAElC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YAE3B,MAAM,CAAC,aAAa,CAClB,IAAI,CAAC,IAAI,CACP,YAAY,EACZ,GAAG,EAAE,CACH,IAAI,YAAY,CACd,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAC9B;gBACE,MAAM,EAAE,GAAG;aACZ,CACF,CACJ,CACF,CAAC;YAEF,MAAO,CAAC,eAAe,CAAC,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;YACxE,MAAO,CAAC,eAAe,CAAC,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YAEtE,MAAM,CAAC,SAAS,CAAC,MAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,MAAO,CAAC,eAAe,EAAE,CAAC;YAEhC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAO,CAAC,CAAC;YAElC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;YACxE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YAC3B,MAAM,gBAAgB,GAAG,SAAS,CAAC,gBAAgB,GAAG,CAAC,CAAC;YACxD,MAAM,YAAY,GAAsB,EAAE,CAAC;YAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,YAAY,CAAC,IAAI,CAAC;oBAChB;wBACE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE;wBACzB,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;qBACvD;iBACF,CAAC,CAAC;YACL,CAAC;YAED,mBAAmB,CAAC,MAAO,EAAE,YAAY,CAAC,CAAC;YAE3C,MAAM,CAAC,aAAa,CAAC,MAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAChE,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CACnC,SAAS,CAAC,MAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CACvB,CAAC;YAC1B,2GAA2G;YAC3G,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,IAAI,CACtC,gBAAgB,GAAG,SAAS,CAAC,gBAAgB,CAC9C,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;YAC1E,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC;YACvC,MAAM,YAAY,GAAG,CAAC,CAAC;YACvB,MAAM,iBAAiB,GAAG,SAAS,GAAG,YAAY,CAAC;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAO,CAAC,eAAe,CAAC,MAAO,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YACxE,CAAC;YACD,MAAM,CAAC,aAAa,CAAC,MAAO,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAEvD,MAAM,iBAAiB,GAAG,EAAE,CAAC,CAAC,yBAAyB;YACvD,MAAM,YAAY,GAAsB,EAAE,CAAC;YAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,YAAY,CAAC,IAAI,CAAC;oBAChB;wBACE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE;wBACzB,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC;qBACnE;iBACF,CAAC,CAAC;YACL,CAAC;YAED,mBAAmB,CAAC,MAAO,EAAE,YAAY,CAAC,CAAC;YAE3C,0DAA0D;YAC1D,0DAA0D;YAC1D,MAAM,CAAC,aAAa,CAAC,MAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE/C,6DAA6D;YAC7D,mCAAmC;YACnC,+CAA+C;YAC/C,gEAAgE;YAChE,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CACnC,SAAS,CAAC,MAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CACvB,CAAC;YAC1B,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -44,6 +44,8 @@ export declare enum EventMetadataKey {
44
44
  GEMINI_CLI_GOOGLE_ACCOUNTS_COUNT = 37,
45
45
  GEMINI_CLI_SURFACE = 39,
46
46
  GEMINI_CLI_SESSION_ID = 40,
47
+ GEMINI_CLI_VERSION = 54,
48
+ GEMINI_CLI_GIT_COMMIT_HASH = 55,
47
49
  GEMINI_CLI_LOOP_DETECTED_TYPE = 38,
48
50
  GEMINI_CLI_SLASH_COMMAND_NAME = 41,
49
51
  GEMINI_CLI_SLASH_COMMAND_SUBCOMMAND = 42,
@@ -56,7 +58,8 @@ export declare enum EventMetadataKey {
56
58
  GEMINI_CLI_AI_REMOVED_LINES = 48,
57
59
  GEMINI_CLI_USER_ADDED_LINES = 49,
58
60
  GEMINI_CLI_USER_REMOVED_LINES = 50,
61
+ GEMINI_CLI_KITTY_TRUNCATED_SEQUENCE = 52,
59
62
  GEMINI_CLI_KITTY_SEQUENCE_LENGTH = 53,
60
- GEMINI_CLI_KITTY_TRUNCATED_SEQUENCE = 52
63
+ GEMINI_CLI_COMPRESSION_TOKENS_BEFORE = 60,
64
+ GEMINI_CLI_COMPRESSION_TOKENS_AFTER = 61
61
65
  }
62
- export declare function getEventMetadataKey(keyName: string): EventMetadataKey | undefined;
@@ -109,6 +109,10 @@ export var EventMetadataKey;
109
109
  EventMetadataKey[EventMetadataKey["GEMINI_CLI_SURFACE"] = 39] = "GEMINI_CLI_SURFACE";
110
110
  // Logs the session id
111
111
  EventMetadataKey[EventMetadataKey["GEMINI_CLI_SESSION_ID"] = 40] = "GEMINI_CLI_SESSION_ID";
112
+ // Logs the Gemini CLI version
113
+ EventMetadataKey[EventMetadataKey["GEMINI_CLI_VERSION"] = 54] = "GEMINI_CLI_VERSION";
114
+ // Logs the Gemini CLI Git commit hash
115
+ EventMetadataKey[EventMetadataKey["GEMINI_CLI_GIT_COMMIT_HASH"] = 55] = "GEMINI_CLI_GIT_COMMIT_HASH";
112
116
  // ==========================================================================
113
117
  // Loop Detected Event Keys
114
118
  // ===========================================================================
@@ -151,18 +155,13 @@ export var EventMetadataKey;
151
155
  // ==========================================================================
152
156
  // Kitty Sequence Overflow Event Keys
153
157
  // ===========================================================================
154
- // Logs the length of the kitty sequence that overflowed.
155
- EventMetadataKey[EventMetadataKey["GEMINI_CLI_KITTY_SEQUENCE_LENGTH"] = 53] = "GEMINI_CLI_KITTY_SEQUENCE_LENGTH";
156
158
  // Logs the truncated kitty sequence.
157
159
  EventMetadataKey[EventMetadataKey["GEMINI_CLI_KITTY_TRUNCATED_SEQUENCE"] = 52] = "GEMINI_CLI_KITTY_TRUNCATED_SEQUENCE";
160
+ // Logs the length of the kitty sequence that overflowed.
161
+ EventMetadataKey[EventMetadataKey["GEMINI_CLI_KITTY_SEQUENCE_LENGTH"] = 53] = "GEMINI_CLI_KITTY_SEQUENCE_LENGTH";
162
+ // Logs the number of tokens before context window compression.
163
+ EventMetadataKey[EventMetadataKey["GEMINI_CLI_COMPRESSION_TOKENS_BEFORE"] = 60] = "GEMINI_CLI_COMPRESSION_TOKENS_BEFORE";
164
+ // Logs the number of tokens after context window compression.
165
+ EventMetadataKey[EventMetadataKey["GEMINI_CLI_COMPRESSION_TOKENS_AFTER"] = 61] = "GEMINI_CLI_COMPRESSION_TOKENS_AFTER";
158
166
  })(EventMetadataKey || (EventMetadataKey = {}));
159
- export function getEventMetadataKey(keyName) {
160
- // Access the enum member by its string name
161
- const key = EventMetadataKey[keyName];
162
- // Check if the result is a valid enum member (not undefined and is a number)
163
- if (typeof key === 'number') {
164
- return key;
165
- }
166
- return undefined;
167
- }
168
167
  //# sourceMappingURL=event-metadata-key.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-metadata-key.js","sourceRoot":"","sources":["../../../../src/telemetry/clearcut-logger/event-metadata-key.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-metadata-key.js","sourceRoot":"","sources":["../../../../src/telemetry/clearcut-logger/event-metadata-key.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export declare const EVENT_FLASH_FALLBACK = "gemini_cli.flash_fallback";
14
14
  export declare const EVENT_NEXT_SPEAKER_CHECK = "gemini_cli.next_speaker_check";
15
15
  export declare const EVENT_SLASH_COMMAND = "gemini_cli.slash_command";
16
16
  export declare const EVENT_IDE_CONNECTION = "gemini_cli.ide_connection";
17
+ export declare const EVENT_CHAT_COMPRESSION = "gemini_cli.chat_compression";
17
18
  export declare const METRIC_TOOL_CALL_COUNT = "gemini_cli.tool.call.count";
18
19
  export declare const METRIC_TOOL_CALL_LATENCY = "gemini_cli.tool.call.latency";
19
20
  export declare const METRIC_API_REQUEST_COUNT = "gemini_cli.api.request.count";
@@ -14,6 +14,7 @@ export const EVENT_FLASH_FALLBACK = 'gemini_cli.flash_fallback';
14
14
  export const EVENT_NEXT_SPEAKER_CHECK = 'gemini_cli.next_speaker_check';
15
15
  export const EVENT_SLASH_COMMAND = 'gemini_cli.slash_command';
16
16
  export const EVENT_IDE_CONNECTION = 'gemini_cli.ide_connection';
17
+ export const EVENT_CHAT_COMPRESSION = 'gemini_cli.chat_compression';
17
18
  export const METRIC_TOOL_CALL_COUNT = 'gemini_cli.tool.call.count';
18
19
  export const METRIC_TOOL_CALL_LATENCY = 'gemini_cli.tool.call.latency';
19
20
  export const METRIC_API_REQUEST_COUNT = 'gemini_cli.api.request.count';
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/telemetry/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,YAAY,CAAC;AAEzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AAC1D,MAAM,CAAC,MAAM,eAAe,GAAG,sBAAsB,CAAC;AACtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AAC1D,MAAM,CAAC,MAAM,eAAe,GAAG,sBAAsB,CAAC;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;AAChE,MAAM,CAAC,MAAM,wBAAwB,GAAG,+BAA+B,CAAC;AACxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;AAC9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;AAEhE,MAAM,CAAC,MAAM,sBAAsB,GAAG,4BAA4B,CAAC;AACnE,MAAM,CAAC,MAAM,wBAAwB,GAAG,8BAA8B,CAAC;AACvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,8BAA8B,CAAC;AACvE,MAAM,CAAC,MAAM,0BAA0B,GAAG,gCAAgC,CAAC;AAC3E,MAAM,CAAC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AAC3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAC/D,MAAM,CAAC,MAAM,2BAA2B,GAAG,iCAAiC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/telemetry/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,YAAY,CAAC;AAEzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AAC1D,MAAM,CAAC,MAAM,eAAe,GAAG,sBAAsB,CAAC;AACtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AAC1D,MAAM,CAAC,MAAM,eAAe,GAAG,sBAAsB,CAAC;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;AAChE,MAAM,CAAC,MAAM,wBAAwB,GAAG,+BAA+B,CAAC;AACxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;AAC9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;AAChE,MAAM,CAAC,MAAM,sBAAsB,GAAG,6BAA6B,CAAC;AACpE,MAAM,CAAC,MAAM,sBAAsB,GAAG,4BAA4B,CAAC;AACnE,MAAM,CAAC,MAAM,wBAAwB,GAAG,8BAA8B,CAAC;AACvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,8BAA8B,CAAC;AACvE,MAAM,CAAC,MAAM,0BAA0B,GAAG,gCAAgC,CAAC;AAC3E,MAAM,CAAC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AAC3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAC/D,MAAM,CAAC,MAAM,2BAA2B,GAAG,iCAAiC,CAAC"}
@@ -11,8 +11,8 @@ declare const DEFAULT_TELEMETRY_TARGET = TelemetryTarget.LOCAL;
11
11
  declare const DEFAULT_OTLP_ENDPOINT = "http://localhost:4317";
12
12
  export { DEFAULT_TELEMETRY_TARGET, DEFAULT_OTLP_ENDPOINT };
13
13
  export { initializeTelemetry, shutdownTelemetry, isTelemetrySdkInitialized, } from './sdk.js';
14
- export { logCliConfiguration, logUserPrompt, logToolCall, logApiRequest, logApiError, logApiResponse, logFlashFallback, logSlashCommand, logKittySequenceOverflow, } from './loggers.js';
15
- export { StartSessionEvent, EndSessionEvent, UserPromptEvent, ToolCallEvent, ApiRequestEvent, ApiErrorEvent, ApiResponseEvent, TelemetryEvent, FlashFallbackEvent, KittySequenceOverflowEvent, SlashCommandEvent, makeSlashCommandEvent, SlashCommandStatus, } from './types.js';
14
+ export { logCliConfiguration, logUserPrompt, logToolCall, logApiRequest, logApiError, logApiResponse, logFlashFallback, logSlashCommand, logKittySequenceOverflow, logChatCompression, } from './loggers.js';
15
+ export { StartSessionEvent, EndSessionEvent, UserPromptEvent, ToolCallEvent, ApiRequestEvent, ApiErrorEvent, ApiResponseEvent, TelemetryEvent, FlashFallbackEvent, KittySequenceOverflowEvent, SlashCommandEvent, makeSlashCommandEvent, SlashCommandStatus, ChatCompressionEvent, makeChatCompressionEvent, } from './types.js';
16
16
  export { SpanStatusCode, ValueType } from '@opentelemetry/api';
17
17
  export { SemanticAttributes } from '@opentelemetry/semantic-conventions';
18
18
  export * from './uiTelemetry.js';
@@ -12,8 +12,8 @@ const DEFAULT_TELEMETRY_TARGET = TelemetryTarget.LOCAL;
12
12
  const DEFAULT_OTLP_ENDPOINT = 'http://localhost:4317';
13
13
  export { DEFAULT_TELEMETRY_TARGET, DEFAULT_OTLP_ENDPOINT };
14
14
  export { initializeTelemetry, shutdownTelemetry, isTelemetrySdkInitialized, } from './sdk.js';
15
- export { logCliConfiguration, logUserPrompt, logToolCall, logApiRequest, logApiError, logApiResponse, logFlashFallback, logSlashCommand, logKittySequenceOverflow, } from './loggers.js';
16
- export { StartSessionEvent, EndSessionEvent, UserPromptEvent, ToolCallEvent, ApiRequestEvent, ApiErrorEvent, ApiResponseEvent, FlashFallbackEvent, KittySequenceOverflowEvent, makeSlashCommandEvent, SlashCommandStatus, } from './types.js';
15
+ export { logCliConfiguration, logUserPrompt, logToolCall, logApiRequest, logApiError, logApiResponse, logFlashFallback, logSlashCommand, logKittySequenceOverflow, logChatCompression, } from './loggers.js';
16
+ export { StartSessionEvent, EndSessionEvent, UserPromptEvent, ToolCallEvent, ApiRequestEvent, ApiErrorEvent, ApiResponseEvent, FlashFallbackEvent, KittySequenceOverflowEvent, makeSlashCommandEvent, SlashCommandStatus, makeChatCompressionEvent, } from './types.js';
17
17
  export { SpanStatusCode, ValueType } from '@opentelemetry/api';
18
18
  export { SemanticAttributes } from '@opentelemetry/semantic-conventions';
19
19
  export * from './uiTelemetry.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/telemetry/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,8BAAW,CAAA;IACX,kCAAe,CAAA;AACjB,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B;AAED,MAAM,wBAAwB,GAAG,eAAe,CAAC,KAAK,CAAC;AACvD,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,CAAC;AAC3D,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,aAAa,EACb,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,wBAAwB,GACzB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,aAAa,EACb,eAAe,EACf,aAAa,EACb,gBAAgB,EAEhB,kBAAkB,EAClB,0BAA0B,EAE1B,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/telemetry/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,8BAAW,CAAA;IACX,kCAAe,CAAA;AACjB,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B;AAED,MAAM,wBAAwB,GAAG,eAAe,CAAC,KAAK,CAAC;AACvD,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,CAAC;AAC3D,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,aAAa,EACb,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,aAAa,EACb,eAAe,EACf,aAAa,EACb,gBAAgB,EAEhB,kBAAkB,EAClB,0BAA0B,EAE1B,qBAAqB,EACrB,kBAAkB,EAElB,wBAAwB,GACzB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,cAAc,kBAAkB,CAAC"}
@@ -46,6 +46,7 @@ describe('Circular Reference Integration Test', () => {
46
46
  // Test that ClearcutLogger can handle this
47
47
  const logger = ClearcutLogger.getInstance(mockConfig);
48
48
  expect(() => {
49
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
49
50
  logger?.enqueueLogEvent(problematicEvent);
50
51
  }).not.toThrow();
51
52
  });
@@ -1 +1 @@
1
- {"version":3,"file":"integration.test.circular.js","sourceRoot":"","sources":["../../../src/telemetry/integration.test.circular.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAGtE,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;QACpF,kCAAkC;QAClC,MAAM,UAAU,GAAG;YACjB,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;YAC/B,yBAAyB,EAAE,GAAG,EAAE,CAAC,IAAI;YACrC,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;YAClC,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY;YAC5B,iBAAiB,EAAE,GAAG,EAAE,CAAC,gBAAgB;YACzC,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK;YACzB,QAAQ,EAAE,GAAG,EAAE,CAAC,+BAA+B;SAC3B,CAAC;QAEvB,kEAAkE;QAClE,8DAA8D;QAC9D,MAAM,cAAc,GAAQ;YAC1B,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE,KAAK,EAAE,+BAA+B,EAAE;SACpD,CAAC;QAEF,8DAA8D;QAC9D,MAAM,UAAU,GAAQ;YACtB,YAAY,EAAE;gBACZ,KAAK,EAAE,cAAc;gBACrB,MAAM,EAAE,IAAI;aACb;SACF,CAAC;QAEF,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC,4BAA4B;QACzE,cAAc,CAAC,OAAO,CAAC,iCAAiC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAEzE,6DAA6D;QAC7D,MAAM,gBAAgB,GAAG;YACvB,KAAK,EAAE,IAAI,KAAK,CAAC,eAAe,CAAC;YACjC,aAAa,EAAE;gBACb,QAAQ,EAAE,gBAAgB;gBAC1B,SAAS,EAAE,cAAc,EAAE,0CAA0C;aACtE;SACF,CAAC;QAEF,2CAA2C;QAC3C,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAEtD,MAAM,CAAC,GAAG,EAAE;YACV,MAAM,EAAE,eAAe,CAAC,gBAAgB,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"integration.test.circular.js","sourceRoot":"","sources":["../../../src/telemetry/integration.test.circular.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAGtE,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;QACpF,kCAAkC;QAClC,MAAM,UAAU,GAAG;YACjB,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;YAC/B,yBAAyB,EAAE,GAAG,EAAE,CAAC,IAAI;YACrC,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;YAClC,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY;YAC5B,iBAAiB,EAAE,GAAG,EAAE,CAAC,gBAAgB;YACzC,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK;YACzB,QAAQ,EAAE,GAAG,EAAE,CAAC,+BAA+B;SAC3B,CAAC;QAEvB,kEAAkE;QAClE,8DAA8D;QAC9D,MAAM,cAAc,GAAQ;YAC1B,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE,KAAK,EAAE,+BAA+B,EAAE;SACpD,CAAC;QAEF,8DAA8D;QAC9D,MAAM,UAAU,GAAQ;YACtB,YAAY,EAAE;gBACZ,KAAK,EAAE,cAAc;gBACrB,MAAM,EAAE,IAAI;aACb;SACF,CAAC;QAEF,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC,4BAA4B;QACzE,cAAc,CAAC,OAAO,CAAC,iCAAiC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAEzE,6DAA6D;QAC7D,MAAM,gBAAgB,GAAG;YACvB,KAAK,EAAE,IAAI,KAAK,CAAC,eAAe,CAAC;YACjC,aAAa,EAAE;gBACb,QAAQ,EAAE,gBAAgB;gBAC1B,SAAS,EAAE,cAAc,EAAE,0CAA0C;aACtE;SACF,CAAC;QAEF,2CAA2C;QAC3C,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAEtD,MAAM,CAAC,GAAG,EAAE;YACV,8DAA8D;YAC9D,MAAM,EAAE,eAAe,CAAC,gBAAuB,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { Config } from '../config/config.js';
7
- import { ApiErrorEvent, ApiRequestEvent, ApiResponseEvent, IdeConnectionEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, NextSpeakerCheckEvent, LoopDetectedEvent, SlashCommandEvent, KittySequenceOverflowEvent } from './types.js';
7
+ import { ApiErrorEvent, ApiRequestEvent, ApiResponseEvent, IdeConnectionEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, NextSpeakerCheckEvent, LoopDetectedEvent, SlashCommandEvent, KittySequenceOverflowEvent, ChatCompressionEvent } from './types.js';
8
8
  export declare function logCliConfiguration(config: Config, event: StartSessionEvent): void;
9
9
  export declare function logUserPrompt(config: Config, event: UserPromptEvent): void;
10
10
  export declare function logToolCall(config: Config, event: ToolCallEvent): void;
@@ -16,4 +16,5 @@ export declare function logLoopDetected(config: Config, event: LoopDetectedEvent
16
16
  export declare function logNextSpeakerCheck(config: Config, event: NextSpeakerCheckEvent): void;
17
17
  export declare function logSlashCommand(config: Config, event: SlashCommandEvent): void;
18
18
  export declare function logIdeConnection(config: Config, event: IdeConnectionEvent): void;
19
+ export declare function logChatCompression(config: Config, event: ChatCompressionEvent): void;
19
20
  export declare function logKittySequenceOverflow(config: Config, event: KittySequenceOverflowEvent): void;
@@ -5,8 +5,8 @@
5
5
  */
6
6
  import { logs } from '@opentelemetry/api-logs';
7
7
  import { SemanticAttributes } from '@opentelemetry/semantic-conventions';
8
- import { EVENT_API_ERROR, EVENT_API_REQUEST, EVENT_API_RESPONSE, EVENT_CLI_CONFIG, EVENT_IDE_CONNECTION, EVENT_TOOL_CALL, EVENT_USER_PROMPT, EVENT_FLASH_FALLBACK, EVENT_NEXT_SPEAKER_CHECK, SERVICE_NAME, EVENT_SLASH_COMMAND, } from './constants.js';
9
- import { recordApiErrorMetrics, recordTokenUsageMetrics, recordApiResponseMetrics, recordToolCallMetrics, } from './metrics.js';
8
+ import { EVENT_API_ERROR, EVENT_API_REQUEST, EVENT_API_RESPONSE, EVENT_CLI_CONFIG, EVENT_IDE_CONNECTION, EVENT_TOOL_CALL, EVENT_USER_PROMPT, EVENT_FLASH_FALLBACK, EVENT_NEXT_SPEAKER_CHECK, SERVICE_NAME, EVENT_SLASH_COMMAND, EVENT_CHAT_COMPRESSION, } from './constants.js';
9
+ import { recordApiErrorMetrics, recordTokenUsageMetrics, recordApiResponseMetrics, recordToolCallMetrics, recordChatCompressionMetrics, } from './metrics.js';
10
10
  import { isTelemetrySdkInitialized } from './sdk.js';
11
11
  import { uiTelemetryService } from './uiTelemetry.js';
12
12
  import { ClearcutLogger } from './clearcut-logger/clearcut-logger.js';
@@ -55,7 +55,7 @@ export function logUserPrompt(config, event) {
55
55
  prompt_length: event.prompt_length,
56
56
  };
57
57
  if (shouldLogUserPrompts(config)) {
58
- attributes.prompt = event.prompt;
58
+ attributes['prompt'] = event.prompt;
59
59
  }
60
60
  const logger = logs.getLogger(SERVICE_NAME);
61
61
  const logRecord = {
@@ -179,7 +179,7 @@ export function logApiResponse(config, event) {
179
179
  'event.timestamp': new Date().toISOString(),
180
180
  };
181
181
  if (event.response_text) {
182
- attributes.response_text = event.response_text;
182
+ attributes['response_text'] = event.response_text;
183
183
  }
184
184
  if (event.error) {
185
185
  attributes['error.message'] = event.error;
@@ -265,6 +265,24 @@ export function logIdeConnection(config, event) {
265
265
  };
266
266
  logger.emit(logRecord);
267
267
  }
268
+ export function logChatCompression(config, event) {
269
+ ClearcutLogger.getInstance(config)?.logChatCompressionEvent(event);
270
+ const attributes = {
271
+ ...getCommonAttributes(config),
272
+ ...event,
273
+ 'event.name': EVENT_CHAT_COMPRESSION,
274
+ };
275
+ const logger = logs.getLogger(SERVICE_NAME);
276
+ const logRecord = {
277
+ body: `Chat compression (Saved ${event.tokens_before - event.tokens_after} tokens)`,
278
+ attributes,
279
+ };
280
+ logger.emit(logRecord);
281
+ recordChatCompressionMetrics(config, {
282
+ tokens_before: event.tokens_before,
283
+ tokens_after: event.tokens_after,
284
+ });
285
+ }
268
286
  export function logKittySequenceOverflow(config, event) {
269
287
  ClearcutLogger.getInstance(config)?.logKittySequenceOverflowEvent(event);
270
288
  if (!isTelemetrySdkInitialized())
@@ -1 +1 @@
1
- {"version":3,"file":"loggers.js","sourceRoot":"","sources":["../../../src/telemetry/loggers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loggers.js","sourceRoot":"","sources":["../../../src/telemetry/loggers.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,15 @@ import { AuthType, EditTool, GeminiClient, ToolConfirmationOutcome, ToolErrorTyp
7
7
  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
- import { logApiRequest, logApiResponse, logCliConfiguration, logUserPrompt, logToolCall, logFlashFallback, } from './loggers.js';
10
+ import { logApiRequest, logApiResponse, logCliConfiguration, logUserPrompt, logToolCall, logFlashFallback, logChatCompression, } from './loggers.js';
11
11
  import { ToolCallDecision } from './tool-call-decision.js';
12
- import { ApiRequestEvent, ApiResponseEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, } from './types.js';
12
+ import { ApiRequestEvent, ApiResponseEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, makeChatCompressionEvent, } from './types.js';
13
13
  import * as metrics from './metrics.js';
14
14
  import * as sdk from './sdk.js';
15
15
  import { vi, describe, beforeEach, it, expect } from 'vitest';
16
16
  import * as uiTelemetry from './uiTelemetry.js';
17
+ import { makeFakeConfig } from '../test-utils/config.js';
18
+ import { ClearcutLogger } from './clearcut-logger/clearcut-logger.js';
17
19
  describe('loggers', () => {
18
20
  const mockLogger = {
19
21
  emit: vi.fn(),
@@ -28,6 +30,29 @@ describe('loggers', () => {
28
30
  vi.useFakeTimers();
29
31
  vi.setSystemTime(new Date('2025-01-01T00:00:00.000Z'));
30
32
  });
33
+ describe('logChatCompression', () => {
34
+ beforeEach(() => {
35
+ vi.spyOn(metrics, 'recordChatCompressionMetrics');
36
+ vi.spyOn(ClearcutLogger.prototype, 'logChatCompressionEvent');
37
+ });
38
+ it('logs the chat compression event to Clearcut', () => {
39
+ const mockConfig = makeFakeConfig();
40
+ const event = makeChatCompressionEvent({
41
+ tokens_before: 9001,
42
+ tokens_after: 9000,
43
+ });
44
+ logChatCompression(mockConfig, event);
45
+ expect(ClearcutLogger.prototype.logChatCompressionEvent).toHaveBeenCalledWith(event);
46
+ });
47
+ it('records the chat compression event to OTEL', () => {
48
+ const mockConfig = makeFakeConfig();
49
+ logChatCompression(mockConfig, makeChatCompressionEvent({
50
+ tokens_before: 9001,
51
+ tokens_after: 9000,
52
+ }));
53
+ expect(metrics.recordChatCompressionMetrics).toHaveBeenCalledWith(mockConfig, { tokens_before: 9001, tokens_after: 9000 });
54
+ });
55
+ });
31
56
  describe('logCliConfiguration', () => {
32
57
  it('should log the cli configuration', () => {
33
58
  const mockConfig = {