@google/gemini-cli-core 0.62.0-nightly.20260925.gbedef96ef โ†’ 0.62.0

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 (37) hide show
  1. package/dist/docs/changelogs/index.md +0 -16
  2. package/dist/docs/changelogs/latest.md +55 -34
  3. package/dist/docs/changelogs/preview.md +3 -7
  4. package/dist/src/agents/local-executor.js +6 -44
  5. package/dist/src/agents/local-executor.js.map +1 -1
  6. package/dist/src/agents/local-executor.test.js +6 -10
  7. package/dist/src/agents/local-executor.test.js.map +1 -1
  8. package/dist/src/context/chatCompressionService.d.ts +0 -26
  9. package/dist/src/context/chatCompressionService.js +3 -190
  10. package/dist/src/context/chatCompressionService.js.map +1 -1
  11. package/dist/src/context/chatCompressionService.test.js +1 -350
  12. package/dist/src/context/chatCompressionService.test.js.map +1 -1
  13. package/dist/src/generated/git-commit.d.ts +2 -2
  14. package/dist/src/generated/git-commit.js +2 -2
  15. package/dist/src/generated/git-commit.js.map +1 -1
  16. package/dist/src/scheduler/tool-executor.js +3 -67
  17. package/dist/src/scheduler/tool-executor.js.map +1 -1
  18. package/dist/src/scheduler/tool-executor.test.js +0 -143
  19. package/dist/src/scheduler/tool-executor.test.js.map +1 -1
  20. package/dist/src/services/shellExecutionService.js +3 -37
  21. package/dist/src/services/shellExecutionService.js.map +1 -1
  22. package/dist/src/utils/constants.d.ts +0 -5
  23. package/dist/src/utils/constants.js +0 -5
  24. package/dist/src/utils/constants.js.map +1 -1
  25. package/dist/src/utils/gitUtils.js +0 -1
  26. package/dist/src/utils/gitUtils.js.map +1 -1
  27. package/dist/src/utils/tool-utils.d.ts +0 -16
  28. package/dist/src/utils/tool-utils.js +0 -113
  29. package/dist/src/utils/tool-utils.js.map +1 -1
  30. package/dist/src/utils/tool-utils.test.js +1 -150
  31. package/dist/src/utils/tool-utils.test.js.map +1 -1
  32. package/dist/tsconfig.tsbuildinfo +1 -1
  33. package/package.json +1 -1
  34. package/dist/google-gemini-cli-core-0.62.0-nightly.20260918.g9450ade79.tgz +0 -0
  35. package/dist/src/agents/memory-leak-regression.test.d.ts +0 -6
  36. package/dist/src/agents/memory-leak-regression.test.js +0 -314
  37. package/dist/src/agents/memory-leak-regression.test.js.map +0 -1
@@ -4,8 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { expect, describe, it } from 'vitest';
7
- import { doesToolInvocationMatch, getToolSuggestion, truncateToolOutput, truncateFunctionResponsePart, } from './tool-utils.js';
8
- import { MAX_STORED_TOOL_OUTPUT_BYTES } from './constants.js';
7
+ import { doesToolInvocationMatch, getToolSuggestion } from './tool-utils.js';
9
8
  import { ReadFileTool } from '../index.js';
10
9
  import { createMockMessageBus } from '../test-utils/mock-message-bus.js';
11
10
  describe('getToolSuggestion', () => {
@@ -86,152 +85,4 @@ describe('doesToolInvocationMatch', () => {
86
85
  });
87
86
  });
88
87
  });
89
- describe('truncateToolOutput', () => {
90
- it('preserves text when within maxBytes limit', () => {
91
- const input = 'short text';
92
- expect(truncateToolOutput(input, 100)).toBe(input);
93
- });
94
- it('truncates ASCII text exceeding maxBytes and appends indicator', () => {
95
- const input = 'a'.repeat(200);
96
- const maxBytes = 100;
97
- const result = truncateToolOutput(input, maxBytes);
98
- expect(Buffer.byteLength(result, 'utf8')).toBeLessThanOrEqual(maxBytes);
99
- expect(result).toContain('\n... [Tool output truncated to conserve memory]');
100
- });
101
- it('handles multi-byte graphemes cleanly without breaking clusters or creating replacement characters', () => {
102
- // ๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ consists of 4 people emojis connected with Zero Width Joiner (\u200D), totaling 25 UTF-8 bytes.
103
- const familyEmoji = '๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ';
104
- const accented = 'caffรจ';
105
- const suffix = '\n... [Tool output truncated to conserve memory]';
106
- const suffixBytes = Buffer.byteLength(suffix, 'utf8');
107
- // Case 1: Not enough space for the full 25-byte emoji
108
- // Available space for text is 10 bytes (< 25 bytes), input is 135 bytes
109
- const inputLong = familyEmoji + ' extra text'.repeat(10);
110
- const tightMaxBytes = suffixBytes + 10;
111
- const resultTight = truncateToolOutput(inputLong, tightMaxBytes);
112
- expect(resultTight).toBe(suffix);
113
- expect(resultTight.includes('\uFFFD')).toBe(false);
114
- expect(Buffer.byteLength(resultTight, 'utf8')).toBeLessThanOrEqual(tightMaxBytes);
115
- // Case 2: Enough space for the emoji, but not enough for following text
116
- const emojiBytes = Buffer.byteLength(familyEmoji, 'utf8');
117
- const exactMaxBytes = suffixBytes + emojiBytes;
118
- const resultExact = truncateToolOutput(inputLong, exactMaxBytes);
119
- expect(resultExact).toBe(familyEmoji + suffix);
120
- expect(resultExact.includes('\uFFFD')).toBe(false);
121
- expect(Buffer.byteLength(resultExact, 'utf8')).toBeLessThanOrEqual(exactMaxBytes);
122
- // Case 3: Large text with mixed emojis and accented characters
123
- const largeMixed = `${familyEmoji} ${accented} `.repeat(2000);
124
- const resultLarge = truncateToolOutput(largeMixed, MAX_STORED_TOOL_OUTPUT_BYTES);
125
- expect(Buffer.byteLength(resultLarge, 'utf8')).toBeLessThanOrEqual(MAX_STORED_TOOL_OUTPUT_BYTES);
126
- expect(resultLarge).toContain(suffix);
127
- expect(resultLarge.includes('\uFFFD')).toBe(false);
128
- expect(Buffer.from(resultLarge, 'utf8').toString('utf8')).toBe(resultLarge);
129
- });
130
- });
131
- describe('truncateFunctionResponsePart', () => {
132
- it('recursively deep-truncates nested objects and arrays while leaving small values untouched', () => {
133
- const largeA = 'A'.repeat(100_000);
134
- const largeB = 'B'.repeat(100_000);
135
- const largeC = 'C'.repeat(100_000);
136
- const suffix = '\n... [Tool output truncated to conserve memory]';
137
- const part = {
138
- functionResponse: {
139
- name: 'complexTool',
140
- response: {
141
- details: { logs: largeA, status: 'ok', count: 42 },
142
- items: [largeB, 'small item', true],
143
- deep: { a: [{ b: { c: largeC, flag: false } }] },
144
- },
145
- },
146
- };
147
- const truncatedPart = truncateFunctionResponsePart(part, MAX_STORED_TOOL_OUTPUT_BYTES);
148
- const res = truncatedPart.functionResponse?.response;
149
- expect(res).toBeDefined();
150
- // Nested object check: logs is truncated, status and count are untouched
151
- const details = res['details'];
152
- expect(typeof details.logs).toBe('string');
153
- expect(details.logs.endsWith(suffix)).toBe(true);
154
- expect(Buffer.byteLength(details.logs, 'utf8')).toBeLessThanOrEqual(MAX_STORED_TOOL_OUTPUT_BYTES);
155
- expect(details.status).toBe('ok');
156
- expect(details.count).toBe(42);
157
- // Nested array check: large string item is truncated, small item and boolean untouched
158
- const items = res['items'];
159
- const firstItem = items[0];
160
- expect(typeof firstItem).toBe('string');
161
- expect(firstItem.endsWith(suffix)).toBe(true);
162
- expect(Buffer.byteLength(firstItem, 'utf8')).toBeLessThanOrEqual(MAX_STORED_TOOL_OUTPUT_BYTES);
163
- expect(items[1]).toBe('small item');
164
- expect(items[2]).toBe(true);
165
- // Deeply nested check: deep.a[0].b.c is truncated, flag is untouched
166
- const deep = res['deep'];
167
- const nestedC = deep.a[0].b.c;
168
- expect(typeof nestedC).toBe('string');
169
- expect(nestedC.endsWith(suffix)).toBe(true);
170
- expect(Buffer.byteLength(nestedC, 'utf8')).toBeLessThanOrEqual(MAX_STORED_TOOL_OUTPUT_BYTES);
171
- expect(deep.a[0].b.flag).toBe(false);
172
- });
173
- it('returns original part reference when no nested truncation was needed', () => {
174
- const part = {
175
- functionResponse: {
176
- name: 'smallTool',
177
- response: {
178
- details: { logs: 'short' },
179
- items: ['item1', 123],
180
- },
181
- },
182
- };
183
- const result = truncateFunctionResponsePart(part, MAX_STORED_TOOL_OUTPUT_BYTES);
184
- expect(result).toBe(part);
185
- });
186
- it('leaves Buffer, Uint8Array, and non-plain object payloads intact without converting to dictionary objects', () => {
187
- const bufferPayload = Buffer.from('raw binary content \x00\x01\x02');
188
- const uint8Payload = new Uint8Array([10, 20, 30, 40]);
189
- const datePayload = new Date(1700000000000);
190
- const regexPayload = /test-pattern/gi;
191
- const part = {
192
- functionResponse: {
193
- name: 'binaryTool',
194
- response: {
195
- buf: bufferPayload,
196
- uint8: uint8Payload,
197
- createdAt: datePayload,
198
- pattern: regexPayload,
199
- nested: {
200
- subBuf: bufferPayload,
201
- largeString: 'A'.repeat(100_000),
202
- },
203
- },
204
- },
205
- };
206
- const result = truncateFunctionResponsePart(part, MAX_STORED_TOOL_OUTPUT_BYTES);
207
- const res = result.functionResponse?.response;
208
- expect(res).toBeDefined();
209
- // Verify instances are preserved and not turned into plain objects {}
210
- expect(Buffer.isBuffer(res.buf)).toBe(true);
211
- expect(Buffer.compare(res.buf, bufferPayload)).toBe(0);
212
- expect(res.uint8 instanceof Uint8Array).toBe(true);
213
- expect(Array.from(res.uint8)).toEqual([10, 20, 30, 40]);
214
- expect(res.createdAt instanceof Date).toBe(true);
215
- expect(res.createdAt.getTime()).toBe(1700000000000);
216
- expect(res.pattern instanceof RegExp).toBe(true);
217
- expect(res.pattern.source).toBe('test-pattern');
218
- expect(Buffer.isBuffer(res.nested.subBuf)).toBe(true);
219
- expect(res.nested.largeString.endsWith('\n... [Tool output truncated to conserve memory]')).toBe(true);
220
- });
221
- it('preserves primitive string response type when truncating', () => {
222
- const largeStr = 'S'.repeat(100_000);
223
- const part = {
224
- functionResponse: {
225
- name: 'stringTool',
226
- response: largeStr,
227
- },
228
- };
229
- const truncated = truncateFunctionResponsePart(part, MAX_STORED_TOOL_OUTPUT_BYTES);
230
- const res = truncated.functionResponse?.response;
231
- expect(typeof res).toBe('string');
232
- const strRes = res;
233
- expect(strRes.endsWith('\n... [Tool output truncated to conserve memory]')).toBe(true);
234
- expect(Buffer.byteLength(strRes, 'utf8')).toBeLessThanOrEqual(MAX_STORED_TOOL_OUTPUT_BYTES);
235
- });
236
- });
237
88
  //# sourceMappingURL=tool-utils.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-utils.test.js","sourceRoot":"","sources":["../../../src/utils/tool-utils.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-utils.test.js","sourceRoot":"","sources":["../../../src/utils/tool-utils.test.ts"],"names":[],"mappings":"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"}