@google/gemini-cli-core 0.35.0-preview.2 → 0.36.0-nightly.20260318.e2658ccda

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 (110) hide show
  1. package/dist/docs/changelogs/latest.md +6 -3
  2. package/dist/docs/changelogs/preview.md +7 -3
  3. package/dist/docs/reference/configuration.md +191 -8
  4. package/dist/docs/tools/todos.md +2 -1
  5. package/dist/{google-gemini-cli-core-0.35.0-preview.1.tgz → google-gemini-cli-core-0.36.0-nightly.20260317.2f90b4653.tgz} +0 -0
  6. package/dist/src/agents/a2a-client-manager.d.ts +2 -11
  7. package/dist/src/agents/a2a-client-manager.js +3 -19
  8. package/dist/src/agents/a2a-client-manager.js.map +1 -1
  9. package/dist/src/agents/a2a-client-manager.test.js +6 -10
  10. package/dist/src/agents/a2a-client-manager.test.js.map +1 -1
  11. package/dist/src/agents/registry.js +6 -3
  12. package/dist/src/agents/registry.js.map +1 -1
  13. package/dist/src/agents/registry.test.js +23 -24
  14. package/dist/src/agents/registry.test.js.map +1 -1
  15. package/dist/src/agents/remote-invocation.d.ts +3 -1
  16. package/dist/src/agents/remote-invocation.js +10 -5
  17. package/dist/src/agents/remote-invocation.js.map +1 -1
  18. package/dist/src/agents/remote-invocation.test.js +64 -41
  19. package/dist/src/agents/remote-invocation.test.js.map +1 -1
  20. package/dist/src/agents/subagent-tool-wrapper.js +1 -1
  21. package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
  22. package/dist/src/config/config.d.ts +6 -0
  23. package/dist/src/config/config.js +35 -6
  24. package/dist/src/config/config.js.map +1 -1
  25. package/dist/src/config/config.test.js +4 -1
  26. package/dist/src/config/config.test.js.map +1 -1
  27. package/dist/src/config/defaultModelConfigs.js +120 -8
  28. package/dist/src/config/defaultModelConfigs.js.map +1 -1
  29. package/dist/src/config/models.d.ts +13 -2
  30. package/dist/src/config/models.js +20 -3
  31. package/dist/src/config/models.js.map +1 -1
  32. package/dist/src/config/models.test.js +52 -0
  33. package/dist/src/config/models.test.js.map +1 -1
  34. package/dist/src/core/client.js +1 -1
  35. package/dist/src/core/client.js.map +1 -1
  36. package/dist/src/core/contentGenerator.js +1 -1
  37. package/dist/src/core/contentGenerator.js.map +1 -1
  38. package/dist/src/core/geminiChat.js +2 -2
  39. package/dist/src/core/geminiChat.js.map +1 -1
  40. package/dist/src/core/prompts.test.js +8 -0
  41. package/dist/src/core/prompts.test.js.map +1 -1
  42. package/dist/src/generated/git-commit.d.ts +2 -2
  43. package/dist/src/generated/git-commit.js +2 -2
  44. package/dist/src/generated/git-commit.js.map +1 -1
  45. package/dist/src/policy/policy-engine.test.js +3 -3
  46. package/dist/src/policy/policy-engine.test.js.map +1 -1
  47. package/dist/src/policy/types.d.ts +5 -0
  48. package/dist/src/policy/types.js +5 -0
  49. package/dist/src/policy/types.js.map +1 -1
  50. package/dist/src/prompts/promptProvider.js +3 -3
  51. package/dist/src/prompts/promptProvider.js.map +1 -1
  52. package/dist/src/prompts/snippets.legacy.d.ts +4 -0
  53. package/dist/src/prompts/snippets.legacy.js +25 -1
  54. package/dist/src/prompts/snippets.legacy.js.map +1 -1
  55. package/dist/src/routing/strategies/classifierStrategy.js +1 -1
  56. package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
  57. package/dist/src/routing/strategies/defaultStrategy.js +1 -1
  58. package/dist/src/routing/strategies/defaultStrategy.js.map +1 -1
  59. package/dist/src/routing/strategies/fallbackStrategy.js +1 -1
  60. package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
  61. package/dist/src/routing/strategies/numericalClassifierStrategy.js +1 -1
  62. package/dist/src/routing/strategies/numericalClassifierStrategy.js.map +1 -1
  63. package/dist/src/routing/strategies/overrideStrategy.js +1 -1
  64. package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
  65. package/dist/src/services/modelConfigService.d.ts +28 -1
  66. package/dist/src/services/modelConfigService.js +48 -0
  67. package/dist/src/services/modelConfigService.js.map +1 -1
  68. package/dist/src/services/trackerTypes.d.ts +1 -0
  69. package/dist/src/services/trackerTypes.js +1 -0
  70. package/dist/src/services/trackerTypes.js.map +1 -1
  71. package/dist/src/tools/definitions/model-family-sets/default-legacy.js +8 -1
  72. package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
  73. package/dist/src/tools/definitions/model-family-sets/gemini-3.js +8 -1
  74. package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
  75. package/dist/src/tools/mcp-client-manager.d.ts +22 -3
  76. package/dist/src/tools/mcp-client-manager.js +84 -32
  77. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  78. package/dist/src/tools/mcp-client-manager.test.js +76 -56
  79. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  80. package/dist/src/tools/mcp-client.d.ts +15 -6
  81. package/dist/src/tools/mcp-client.js +85 -71
  82. package/dist/src/tools/mcp-client.js.map +1 -1
  83. package/dist/src/tools/mcp-client.test.js +195 -88
  84. package/dist/src/tools/mcp-client.test.js.map +1 -1
  85. package/dist/src/tools/tool-registry.d.ts +2 -1
  86. package/dist/src/tools/tool-registry.js +12 -1
  87. package/dist/src/tools/tool-registry.js.map +1 -1
  88. package/dist/src/tools/tool-registry.test.js +15 -0
  89. package/dist/src/tools/tool-registry.test.js.map +1 -1
  90. package/dist/src/tools/tools.d.ts +1 -1
  91. package/dist/src/tools/tools.js.map +1 -1
  92. package/dist/src/tools/trackerTools.js +6 -1
  93. package/dist/src/tools/trackerTools.js.map +1 -1
  94. package/dist/src/tools/trackerTools.test.js +9 -1
  95. package/dist/src/tools/trackerTools.test.js.map +1 -1
  96. package/dist/src/tools/write-todos.js +1 -0
  97. package/dist/src/tools/write-todos.js.map +1 -1
  98. package/dist/src/tools/write-todos.test.js +4 -1
  99. package/dist/src/tools/write-todos.test.js.map +1 -1
  100. package/dist/src/utils/compatibility.d.ts +16 -0
  101. package/dist/src/utils/compatibility.js +58 -9
  102. package/dist/src/utils/compatibility.js.map +1 -1
  103. package/dist/src/utils/compatibility.test.js +127 -29
  104. package/dist/src/utils/compatibility.test.js.map +1 -1
  105. package/dist/src/utils/memoryDiscovery.js +11 -19
  106. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  107. package/dist/src/utils/memoryDiscovery.test.js +15 -47
  108. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  109. package/dist/tsconfig.tsbuildinfo +1 -1
  110. package/package.json +2 -1
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
7
7
  import os from 'node:os';
8
- import { isWindows10, isJetBrainsTerminal, supports256Colors, supportsTrueColor, getCompatibilityWarnings, WarningPriority, } from './compatibility.js';
8
+ import { isWindows10, isJetBrainsTerminal, isTmux, isGnuScreen, isLowColorTmux, isDumbTerminal, supports256Colors, supportsTrueColor, getCompatibilityWarnings, WarningPriority, } from './compatibility.js';
9
9
  vi.mock('node:os', () => ({
10
10
  default: {
11
11
  platform: vi.fn(),
@@ -46,19 +46,89 @@ describe('compatibility', () => {
46
46
  });
47
47
  });
48
48
  describe('isJetBrainsTerminal', () => {
49
+ beforeEach(() => {
50
+ vi.stubEnv('TERMINAL_EMULATOR', '');
51
+ vi.stubEnv('JETBRAINS_IDE', '');
52
+ });
49
53
  it.each([
50
54
  {
51
- env: 'JetBrains-JediTerm',
55
+ env: { TERMINAL_EMULATOR: 'JetBrains-JediTerm' },
52
56
  expected: true,
53
- desc: 'TERMINAL_EMULATOR is JetBrains-JediTerm',
57
+ desc: 'TERMINAL_EMULATOR starts with JetBrains',
58
+ },
59
+ {
60
+ env: { JETBRAINS_IDE: 'IntelliJ' },
61
+ expected: true,
62
+ desc: 'JETBRAINS_IDE is set',
63
+ },
64
+ {
65
+ env: { TERMINAL_EMULATOR: 'xterm' },
66
+ expected: false,
67
+ desc: 'other terminals',
54
68
  },
55
- { env: 'something-else', expected: false, desc: 'other terminals' },
56
- { env: '', expected: false, desc: 'TERMINAL_EMULATOR is not set' },
69
+ { env: {}, expected: false, desc: 'no env vars set' },
57
70
  ])('should return $expected when $desc', ({ env, expected }) => {
58
- vi.stubEnv('TERMINAL_EMULATOR', env);
71
+ vi.stubEnv('TERMINAL_EMULATOR', '');
72
+ vi.stubEnv('JETBRAINS_IDE', '');
73
+ for (const [key, value] of Object.entries(env)) {
74
+ vi.stubEnv(key, value);
75
+ }
59
76
  expect(isJetBrainsTerminal()).toBe(expected);
60
77
  });
61
78
  });
79
+ describe('isTmux', () => {
80
+ it('should return true when TMUX is set', () => {
81
+ vi.stubEnv('TMUX', '/tmp/tmux-1001/default,1425,0');
82
+ expect(isTmux()).toBe(true);
83
+ });
84
+ it('should return false when TMUX is not set', () => {
85
+ vi.stubEnv('TMUX', '');
86
+ expect(isTmux()).toBe(false);
87
+ });
88
+ });
89
+ describe('isGnuScreen', () => {
90
+ it('should return true when STY is set', () => {
91
+ vi.stubEnv('STY', '1234.pts-0.host');
92
+ expect(isGnuScreen()).toBe(true);
93
+ });
94
+ it('should return false when STY is not set', () => {
95
+ vi.stubEnv('STY', '');
96
+ expect(isGnuScreen()).toBe(false);
97
+ });
98
+ });
99
+ describe('isLowColorTmux', () => {
100
+ it('should return true when TERM=screen and COLORTERM is not set', () => {
101
+ vi.stubEnv('TERM', 'screen');
102
+ vi.stubEnv('TMUX', '1');
103
+ vi.stubEnv('COLORTERM', '');
104
+ expect(isLowColorTmux()).toBe(true);
105
+ });
106
+ it('should return false when TERM=screen and COLORTERM is set', () => {
107
+ vi.stubEnv('TERM', 'screen');
108
+ vi.stubEnv('TMUX', '1');
109
+ vi.stubEnv('COLORTERM', 'truecolor');
110
+ expect(isLowColorTmux()).toBe(false);
111
+ });
112
+ it('should return false when TERM=xterm-256color', () => {
113
+ vi.stubEnv('TERM', 'xterm-256color');
114
+ vi.stubEnv('COLORTERM', '');
115
+ expect(isLowColorTmux()).toBe(false);
116
+ });
117
+ });
118
+ describe('isDumbTerminal', () => {
119
+ it('should return true when TERM=dumb', () => {
120
+ vi.stubEnv('TERM', 'dumb');
121
+ expect(isDumbTerminal()).toBe(true);
122
+ });
123
+ it('should return true when TERM=vt100', () => {
124
+ vi.stubEnv('TERM', 'vt100');
125
+ expect(isDumbTerminal()).toBe(true);
126
+ });
127
+ it('should return false when TERM=xterm', () => {
128
+ vi.stubEnv('TERM', 'xterm');
129
+ expect(isDumbTerminal()).toBe(false);
130
+ });
131
+ });
62
132
  describe('supports256Colors', () => {
63
133
  it.each([
64
134
  {
@@ -84,6 +154,9 @@ describe('compatibility', () => {
84
154
  if (term !== undefined) {
85
155
  vi.stubEnv('TERM', term);
86
156
  }
157
+ else {
158
+ vi.stubEnv('TERM', '');
159
+ }
87
160
  expect(supports256Colors()).toBe(expected);
88
161
  });
89
162
  });
@@ -121,6 +194,13 @@ describe('compatibility', () => {
121
194
  });
122
195
  describe('getCompatibilityWarnings', () => {
123
196
  beforeEach(() => {
197
+ // Clear out potential local environment variables that might trigger warnings
198
+ vi.stubEnv('TERMINAL_EMULATOR', '');
199
+ vi.stubEnv('JETBRAINS_IDE', '');
200
+ vi.stubEnv('TMUX', '');
201
+ vi.stubEnv('STY', '');
202
+ vi.stubEnv('TERM', 'xterm-256color'); // Prevent dumb terminal warning
203
+ vi.stubEnv('TERM_PROGRAM', '');
124
204
  // Default to supporting true color to keep existing tests simple
125
205
  vi.stubEnv('COLORTERM', 'truecolor');
126
206
  process.stdout.getColorDepth = vi.fn().mockReturnValue(24);
@@ -135,33 +215,51 @@ describe('compatibility', () => {
135
215
  message: expect.stringContaining('Windows 10 detected'),
136
216
  }));
137
217
  });
138
- it.each([
139
- {
140
- platform: 'darwin',
141
- release: '20.6.0',
142
- externalTerminal: 'iTerm2 or Ghostty',
143
- desc: 'macOS',
144
- },
145
- {
146
- platform: 'win32',
147
- release: '10.0.22000',
148
- externalTerminal: 'Windows Terminal',
149
- desc: 'Windows',
150
- }, // Valid Windows 11 release to not trigger the Windows 10 warning
151
- {
152
- platform: 'linux',
153
- release: '5.10.0',
154
- externalTerminal: 'Ghostty',
155
- desc: 'Linux',
156
- },
157
- ])('should return JetBrains warning when detected and in alternate buffer ($desc)', ({ platform, release, externalTerminal }) => {
158
- vi.mocked(os.platform).mockReturnValue(platform);
159
- vi.mocked(os.release).mockReturnValue(release);
218
+ it('should return JetBrains warning when detected and in alternate buffer', () => {
219
+ vi.mocked(os.platform).mockReturnValue('darwin');
160
220
  vi.stubEnv('TERMINAL_EMULATOR', 'JetBrains-JediTerm');
161
221
  const warnings = getCompatibilityWarnings({ isAlternateBuffer: true });
162
222
  expect(warnings).toContainEqual(expect.objectContaining({
163
223
  id: 'jetbrains-terminal',
164
- message: expect.stringContaining(`Warning: JetBrains mouse scrolling is unreliable. Disabling alternate buffer mode in settings or using an external terminal (e.g., ${externalTerminal}) is recommended.`),
224
+ message: expect.stringContaining('JetBrains terminal detected'),
225
+ priority: WarningPriority.High,
226
+ }));
227
+ });
228
+ it('should return tmux warning when detected and in alternate buffer', () => {
229
+ vi.stubEnv('TMUX', '/tmp/tmux-1001/default,1,0');
230
+ const warnings = getCompatibilityWarnings({ isAlternateBuffer: true });
231
+ expect(warnings).toContainEqual(expect.objectContaining({
232
+ id: 'tmux-alternate-buffer',
233
+ message: expect.stringContaining('tmux detected'),
234
+ priority: WarningPriority.High,
235
+ }));
236
+ });
237
+ it('should return low-color tmux warning when detected', () => {
238
+ vi.stubEnv('TERM', 'screen');
239
+ vi.stubEnv('TMUX', '1');
240
+ vi.stubEnv('COLORTERM', '');
241
+ const warnings = getCompatibilityWarnings();
242
+ expect(warnings).toContainEqual(expect.objectContaining({
243
+ id: 'low-color-tmux',
244
+ message: expect.stringContaining('Limited color support detected'),
245
+ priority: WarningPriority.High,
246
+ }));
247
+ });
248
+ it('should return GNU screen warning when detected', () => {
249
+ vi.stubEnv('STY', '1234.pts-0.host');
250
+ const warnings = getCompatibilityWarnings();
251
+ expect(warnings).toContainEqual(expect.objectContaining({
252
+ id: 'gnu-screen',
253
+ message: expect.stringContaining('GNU screen detected'),
254
+ priority: WarningPriority.Low,
255
+ }));
256
+ });
257
+ it.each(['dumb', 'vt100'])('should return dumb terminal warning when TERM=%s', (term) => {
258
+ vi.stubEnv('TERM', term);
259
+ const warnings = getCompatibilityWarnings();
260
+ expect(warnings).toContainEqual(expect.objectContaining({
261
+ id: 'dumb-terminal',
262
+ message: `Warning: Basic terminal detected (TERM=${term}). Visual rendering will be limited. For the best experience, use a terminal emulator with truecolor support.`,
165
263
  priority: WarningPriority.High,
166
264
  }));
167
265
  });
@@ -1 +1 @@
1
- {"version":3,"file":"compatibility.test.js","sourceRoot":"","sources":["../../../src/utils/compatibility.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compatibility.test.js","sourceRoot":"","sources":["../../../src/utils/compatibility.test.ts"],"names":[],"mappings":"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"}
@@ -107,10 +107,10 @@ async function findProjectRoot(startDir) {
107
107
  while (true) {
108
108
  const gitPath = path.join(currentDir, '.git');
109
109
  try {
110
- // Check for existence only — .git can be a directory (normal repos)
111
- // or a file (submodules / worktrees).
112
- await fs.access(gitPath);
113
- return currentDir;
110
+ const stats = await fs.lstat(gitPath);
111
+ if (stats.isDirectory()) {
112
+ return currentDir;
113
+ }
114
114
  }
115
115
  catch (error) {
116
116
  // Don't log ENOENT errors as they're expected when .git doesn't exist
@@ -127,10 +127,10 @@ async function findProjectRoot(startDir) {
127
127
  if (typeof error === 'object' && error !== null && 'code' in error) {
128
128
  // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
129
129
  const fsError = error;
130
- logger.warn(`Error checking for .git at ${gitPath}: ${fsError.message}`);
130
+ logger.warn(`Error checking for .git directory at ${gitPath}: ${fsError.message}`);
131
131
  }
132
132
  else {
133
- logger.warn(`Non-standard error checking for .git at ${gitPath}: ${String(error)}`);
133
+ logger.warn(`Non-standard error checking for .git directory at ${gitPath}: ${String(error)}`);
134
134
  }
135
135
  }
136
136
  }
@@ -333,12 +333,8 @@ export async function getEnvironmentMemoryPaths(trustedRoots) {
333
333
  // Trusted Roots Upward Traversal (Parallelized)
334
334
  const traversalPromises = trustedRoots.map(async (root) => {
335
335
  const resolvedRoot = normalizePath(root);
336
- const gitRoot = await findProjectRoot(resolvedRoot);
337
- const ceiling = gitRoot ? normalizePath(gitRoot) : resolvedRoot;
338
- debugLogger.debug('[DEBUG] [MemoryDiscovery] Loading environment memory for trusted root:', resolvedRoot, '(Stopping at', gitRoot
339
- ? `git root: ${ceiling})`
340
- : `trusted root: ${ceiling} — no git root found)`);
341
- return findUpwardGeminiFiles(resolvedRoot, ceiling);
336
+ debugLogger.debug('[DEBUG] [MemoryDiscovery] Loading environment memory for trusted root:', resolvedRoot, '(Stopping exactly here)');
337
+ return findUpwardGeminiFiles(resolvedRoot, resolvedRoot);
342
338
  });
343
339
  const pathArrays = await Promise.all(traversalPromises);
344
340
  pathArrays.flat().forEach((p) => allPaths.add(p));
@@ -494,11 +490,7 @@ export async function loadJitSubdirectoryMemory(targetPath, trustedRoots, alread
494
490
  debugLogger.debug('[DEBUG] [MemoryDiscovery] JIT memory skipped:', resolvedTarget, 'is not in any trusted root.');
495
491
  return { files: [], fileIdentities: [] };
496
492
  }
497
- // Find the git root to use as the traversal ceiling.
498
- // If no git root exists, fall back to the trusted root as the ceiling.
499
- const gitRoot = await findProjectRoot(bestRoot);
500
- const resolvedCeiling = gitRoot ? normalizePath(gitRoot) : bestRoot;
501
- debugLogger.debug('[DEBUG] [MemoryDiscovery] Loading JIT memory for', resolvedTarget, `(Trusted root: ${bestRoot}, Ceiling: ${resolvedCeiling}${gitRoot ? ' [git root]' : ' [trusted root, no git]'})`);
493
+ debugLogger.debug('[DEBUG] [MemoryDiscovery] Loading JIT memory for', resolvedTarget, `(Trusted root: ${bestRoot})`);
502
494
  // Resolve the target to a directory before traversing upward.
503
495
  // When the target is a file (e.g. /app/src/file.ts), start from its
504
496
  // parent directory to avoid a wasted fs.access check on a nonsensical
@@ -515,8 +507,8 @@ export async function loadJitSubdirectoryMemory(targetPath, trustedRoots, alread
515
507
  // assume it's a file path and use its parent directory.
516
508
  startDir = normalizePath(path.dirname(resolvedTarget));
517
509
  }
518
- // Traverse from the resolved directory up to the ceiling
519
- const potentialPaths = await findUpwardGeminiFiles(startDir, resolvedCeiling);
510
+ // Traverse from the resolved directory up to the trusted root
511
+ const potentialPaths = await findUpwardGeminiFiles(startDir, bestRoot);
520
512
  if (potentialPaths.length === 0) {
521
513
  return { files: [], fileIdentities: [] };
522
514
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memoryDiscovery.js","sourceRoot":"","sources":["../../../src/utils/memoryDiscovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memoryDiscovery.js","sourceRoot":"","sources":["../../../src/utils/memoryDiscovery.ts"],"names":[],"mappings":"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"}
@@ -403,33 +403,32 @@ included directory memory
403
403
  });
404
404
  });
405
405
  describe('getEnvironmentMemoryPaths', () => {
406
- it('should traverse upward from trusted root to git root', async () => {
406
+ it('should NOT traverse upward beyond trusted root (even with .git)', async () => {
407
407
  // Setup: /temp/parent/repo/.git
408
408
  const parentDir = await createEmptyDir(path.join(testRootDir, 'parent'));
409
409
  const repoDir = await createEmptyDir(path.join(parentDir, 'repo'));
410
410
  await createEmptyDir(path.join(repoDir, '.git'));
411
411
  const srcDir = await createEmptyDir(path.join(repoDir, 'src'));
412
412
  await createTestFile(path.join(parentDir, DEFAULT_CONTEXT_FILENAME), 'Parent content');
413
- const repoFile = await createTestFile(path.join(repoDir, DEFAULT_CONTEXT_FILENAME), 'Repo content');
413
+ await createTestFile(path.join(repoDir, DEFAULT_CONTEXT_FILENAME), 'Repo content');
414
414
  const srcFile = await createTestFile(path.join(srcDir, DEFAULT_CONTEXT_FILENAME), 'Src content');
415
- // Trust srcDir. Should load srcFile AND repoFile (git root),
416
- // but NOT parentFile (above git root).
415
+ // Trust srcDir. Should ONLY load srcFile.
416
+ // Repo and Parent are NOT trusted.
417
417
  const result = await getEnvironmentMemoryPaths([srcDir]);
418
- expect(result).toHaveLength(2);
419
- expect(result).toContain(repoFile);
420
- expect(result).toContain(srcFile);
418
+ expect(result).toHaveLength(1);
419
+ expect(result[0]).toBe(srcFile);
421
420
  });
422
- it('should fall back to trusted root as ceiling when no .git exists', async () => {
421
+ it('should NOT traverse upward beyond trusted root (no .git)', async () => {
423
422
  // Setup: /homedir/docs/notes (no .git anywhere)
424
423
  const docsDir = await createEmptyDir(path.join(homedir, 'docs'));
425
424
  const notesDir = await createEmptyDir(path.join(docsDir, 'notes'));
426
425
  await createTestFile(path.join(homedir, DEFAULT_CONTEXT_FILENAME), 'Home content');
427
426
  const docsFile = await createTestFile(path.join(docsDir, DEFAULT_CONTEXT_FILENAME), 'Docs content');
428
- // No .git, so ceiling falls back to the trusted root itself.
429
- // notesDir has no GEMINI.md and won't traverse up to docsDir.
427
+ // Trust notesDir. Should load NOTHING because notesDir has no file,
428
+ // and we do not traverse up to docsDir.
430
429
  const resultNotes = await getEnvironmentMemoryPaths([notesDir]);
431
430
  expect(resultNotes).toHaveLength(0);
432
- // docsDir has a GEMINI.md at the trusted root itself, so it's found.
431
+ // Trust docsDir. Should load docsFile, but NOT homeFile.
433
432
  const resultDocs = await getEnvironmentMemoryPaths([docsDir]);
434
433
  expect(resultDocs).toHaveLength(1);
435
434
  expect(resultDocs[0]).toBe(docsFile);
@@ -443,19 +442,6 @@ included directory memory
443
442
  expect(result).toHaveLength(1);
444
443
  expect(result[0]).toBe(repoFile);
445
444
  });
446
- it('should recognize .git as a file (submodules/worktrees)', async () => {
447
- const repoDir = await createEmptyDir(path.join(testRootDir, 'worktree_repo'));
448
- // .git as a file, like in submodules and worktrees
449
- await createTestFile(path.join(repoDir, '.git'), 'gitdir: /some/other/path/.git/worktrees/worktree_repo');
450
- const srcDir = await createEmptyDir(path.join(repoDir, 'src'));
451
- const repoFile = await createTestFile(path.join(repoDir, DEFAULT_CONTEXT_FILENAME), 'Repo content');
452
- const srcFile = await createTestFile(path.join(srcDir, DEFAULT_CONTEXT_FILENAME), 'Src content');
453
- // Trust srcDir. Should traverse up to repoDir (git root via .git file).
454
- const result = await getEnvironmentMemoryPaths([srcDir]);
455
- expect(result).toHaveLength(2);
456
- expect(result).toContain(repoFile);
457
- expect(result).toContain(srcFile);
458
- });
459
445
  it('should keep multiple memory files from the same directory adjacent and in order', async () => {
460
446
  // Configure multiple memory filenames
461
447
  setGeminiMdFilename(['PRIMARY.md', 'SECONDARY.md']);
@@ -569,7 +555,6 @@ included directory memory
569
555
  describe('loadJitSubdirectoryMemory', () => {
570
556
  it('should load JIT memory when target is inside a trusted root', async () => {
571
557
  const rootDir = await createEmptyDir(path.join(testRootDir, 'jit_root'));
572
- await createEmptyDir(path.join(rootDir, '.git'));
573
558
  const subDir = await createEmptyDir(path.join(rootDir, 'subdir'));
574
559
  const targetFile = path.join(subDir, 'target.txt');
575
560
  const subDirMemory = await createTestFile(path.join(subDir, DEFAULT_CONTEXT_FILENAME), 'Subdir JIT content');
@@ -588,7 +573,6 @@ included directory memory
588
573
  });
589
574
  it('should skip already loaded paths', async () => {
590
575
  const rootDir = await createEmptyDir(path.join(testRootDir, 'jit_root'));
591
- await createEmptyDir(path.join(rootDir, '.git'));
592
576
  const subDir = await createEmptyDir(path.join(rootDir, 'subdir'));
593
577
  const targetFile = path.join(subDir, 'target.txt');
594
578
  const rootMemory = await createTestFile(path.join(rootDir, DEFAULT_CONTEXT_FILENAME), 'Root content');
@@ -602,7 +586,6 @@ included directory memory
602
586
  });
603
587
  it('should deduplicate files in JIT memory loading (same inode)', async () => {
604
588
  const rootDir = await createEmptyDir(path.join(testRootDir, 'jit_root'));
605
- await createEmptyDir(path.join(rootDir, '.git'));
606
589
  const subDir = await createEmptyDir(path.join(rootDir, 'subdir'));
607
590
  const targetFile = path.join(subDir, 'target.txt');
608
591
  const geminiFile = await createTestFile(path.join(subDir, 'gemini.md'), 'JIT memory content');
@@ -637,21 +620,19 @@ included directory memory
637
620
  });
638
621
  it('should use the deepest trusted root when multiple nested roots exist', async () => {
639
622
  const outerRoot = await createEmptyDir(path.join(testRootDir, 'outer'));
640
- await createEmptyDir(path.join(outerRoot, '.git'));
641
623
  const innerRoot = await createEmptyDir(path.join(outerRoot, 'inner'));
642
624
  const targetFile = path.join(innerRoot, 'target.txt');
643
625
  const outerMemory = await createTestFile(path.join(outerRoot, DEFAULT_CONTEXT_FILENAME), 'Outer content');
644
626
  const innerMemory = await createTestFile(path.join(innerRoot, DEFAULT_CONTEXT_FILENAME), 'Inner content');
645
627
  const result = await loadJitSubdirectoryMemory(targetFile, [outerRoot, innerRoot], new Set());
646
- // Traversal goes from innerRoot (deepest trusted root) up to outerRoot
647
- // (git root), so both files are found.
648
- expect(result.files).toHaveLength(2);
649
- expect(result.files.find((f) => f.path === innerMemory)).toBeDefined();
650
- expect(result.files.find((f) => f.path === outerMemory)).toBeDefined();
628
+ expect(result.files).toHaveLength(1);
629
+ expect(result.files[0].path).toBe(innerMemory);
630
+ expect(result.files[0].content).toBe('Inner content');
631
+ // Ensure outer memory is NOT loaded
632
+ expect(result.files.find((f) => f.path === outerMemory)).toBeUndefined();
651
633
  });
652
634
  it('should resolve file target to its parent directory for traversal', async () => {
653
635
  const rootDir = await createEmptyDir(path.join(testRootDir, 'jit_file_resolve'));
654
- await createEmptyDir(path.join(rootDir, '.git'));
655
636
  const subDir = await createEmptyDir(path.join(rootDir, 'src'));
656
637
  // Create the target file so fs.stat can identify it as a file
657
638
  const targetFile = await createTestFile(path.join(subDir, 'app.ts'), 'const x = 1;');
@@ -664,7 +645,6 @@ included directory memory
664
645
  });
665
646
  it('should handle non-existent file target by using parent directory', async () => {
666
647
  const rootDir = await createEmptyDir(path.join(testRootDir, 'jit_nonexistent'));
667
- await createEmptyDir(path.join(rootDir, '.git'));
668
648
  const subDir = await createEmptyDir(path.join(rootDir, 'src'));
669
649
  // Target file does NOT exist (e.g. write_file creating a new file)
670
650
  const targetFile = path.join(subDir, 'new-file.ts');
@@ -674,18 +654,6 @@ included directory memory
674
654
  expect(result.files[0].path).toBe(subDirMemory);
675
655
  expect(result.files[0].content).toBe('Rules for new files');
676
656
  });
677
- it('should fall back to trusted root as ceiling when no git root exists', async () => {
678
- const rootDir = await createEmptyDir(path.join(testRootDir, 'jit_no_git'));
679
- // No .git directory created — ceiling falls back to trusted root
680
- const subDir = await createEmptyDir(path.join(rootDir, 'subdir'));
681
- const targetFile = path.join(subDir, 'target.txt');
682
- const subDirMemory = await createTestFile(path.join(subDir, DEFAULT_CONTEXT_FILENAME), 'Content without git');
683
- const result = await loadJitSubdirectoryMemory(targetFile, [rootDir], new Set());
684
- // subDir is within the trusted root, so its GEMINI.md is found
685
- expect(result.files).toHaveLength(1);
686
- expect(result.files[0].path).toBe(subDirMemory);
687
- expect(result.files[0].content).toBe('Content without git');
688
- });
689
657
  });
690
658
  it('refreshServerHierarchicalMemory should refresh memory and update config', async () => {
691
659
  const extensionLoader = new SimpleExtensionLoader([]);