@machina.ai/cell-cli 1.49.0-rc5 → 1.49.0-rc6
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.
- package/dist/package.json +3 -3
- package/dist/src/acp/acpSession.test.js +5 -1
- package/dist/src/acp/acpSession.test.js.map +1 -1
- package/dist/src/config/config.js +15 -2
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +2 -2
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/settings.d.ts +4 -0
- package/dist/src/config/settings.js +73 -1
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settings.test.js +161 -16
- package/dist/src/config/settings.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/ui/components/AsciiArt.d.ts +6 -6
- package/dist/src/ui/components/AsciiArt.js +6 -6
- package/dist/src/utils/handleAutoUpdate.test.js +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -152,7 +152,29 @@ export function mergeSettings(system, systemDefaults, user, workspace, isTrusted
|
|
|
152
152
|
// 4. Workspace Settings
|
|
153
153
|
// 5. System Settings (as overrides)
|
|
154
154
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
155
|
-
|
|
155
|
+
const merged = customDeepMerge(getMergeStrategyForPath, schemaDefaults, systemDefaults, user, safeWorkspace, system);
|
|
156
|
+
// Ensure 'AGENTS.md' is included in context.fileName by default
|
|
157
|
+
if (!merged.context) {
|
|
158
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
159
|
+
merged.context = {};
|
|
160
|
+
}
|
|
161
|
+
const fileName = merged.context.fileName;
|
|
162
|
+
if (!fileName) {
|
|
163
|
+
merged.context.fileName = ['AGENTS.md', 'GEMINI.md'];
|
|
164
|
+
}
|
|
165
|
+
else if (typeof fileName === 'string') {
|
|
166
|
+
const trimmed = fileName.trim();
|
|
167
|
+
if (trimmed.toLowerCase() !== 'agents.md') {
|
|
168
|
+
merged.context.fileName = ['AGENTS.md', trimmed];
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
else if (Array.isArray(fileName)) {
|
|
172
|
+
const hasAgents = fileName.some((f) => typeof f === 'string' && f.trim().toLowerCase() === 'agents.md');
|
|
173
|
+
if (!hasAgents) {
|
|
174
|
+
merged.context.fileName = ['AGENTS.md', ...fileName];
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
return merged;
|
|
156
178
|
}
|
|
157
179
|
/**
|
|
158
180
|
* Creates a fully populated MergedSettings object for testing purposes.
|
|
@@ -790,6 +812,8 @@ function _doLoadSettings(workspaceDir) {
|
|
|
790
812
|
}, isTrusted, settingsErrors);
|
|
791
813
|
// Automatically migrate deprecated settings when loading.
|
|
792
814
|
migrateDeprecatedSettings(loadedSettings);
|
|
815
|
+
// Ensure AGENTS.md is physically written into settings files if not present.
|
|
816
|
+
enforceAgentsMdSetting(loadedSettings);
|
|
793
817
|
return loadedSettings;
|
|
794
818
|
}
|
|
795
819
|
/**
|
|
@@ -948,6 +972,54 @@ export function migrateDeprecatedSettings(loadedSettings, removeDeprecated = tru
|
|
|
948
972
|
}
|
|
949
973
|
return anyModified;
|
|
950
974
|
}
|
|
975
|
+
/**
|
|
976
|
+
* Ensures 'AGENTS.md' is physically saved into existing settings.json files if not already present.
|
|
977
|
+
*/
|
|
978
|
+
export function enforceAgentsMdSetting(loadedSettings) {
|
|
979
|
+
let anyModified = false;
|
|
980
|
+
const processScope = (scope) => {
|
|
981
|
+
const settingsFile = loadedSettings.forScope(scope);
|
|
982
|
+
if (settingsFile.readOnly) {
|
|
983
|
+
return;
|
|
984
|
+
}
|
|
985
|
+
// Only update if the settings file already exists on disk.
|
|
986
|
+
// This prevents creating a settings file out of thin air when there is none.
|
|
987
|
+
if (!settingsFile.path || !fs.existsSync(settingsFile.path)) {
|
|
988
|
+
return;
|
|
989
|
+
}
|
|
990
|
+
const settings = settingsFile.settings;
|
|
991
|
+
const context = settings.context || {};
|
|
992
|
+
const fileName = context['fileName'];
|
|
993
|
+
if (!fileName) {
|
|
994
|
+
return;
|
|
995
|
+
}
|
|
996
|
+
let newFileName = undefined;
|
|
997
|
+
let modified = false;
|
|
998
|
+
if (typeof fileName === 'string') {
|
|
999
|
+
const trimmed = fileName.trim();
|
|
1000
|
+
if (trimmed.toLowerCase() !== 'agents.md') {
|
|
1001
|
+
newFileName = ['AGENTS.md', trimmed];
|
|
1002
|
+
modified = true;
|
|
1003
|
+
}
|
|
1004
|
+
}
|
|
1005
|
+
else if (Array.isArray(fileName)) {
|
|
1006
|
+
const stringArray = fileName.filter((f) => typeof f === 'string');
|
|
1007
|
+
const hasAgents = stringArray.some((f) => f.trim().toLowerCase() === 'agents.md');
|
|
1008
|
+
if (!hasAgents) {
|
|
1009
|
+
newFileName = ['AGENTS.md', ...stringArray];
|
|
1010
|
+
modified = true;
|
|
1011
|
+
}
|
|
1012
|
+
}
|
|
1013
|
+
if (modified && newFileName) {
|
|
1014
|
+
const newContext = { ...context, fileName: newFileName };
|
|
1015
|
+
loadedSettings.setValue(scope, 'context', newContext);
|
|
1016
|
+
anyModified = true;
|
|
1017
|
+
}
|
|
1018
|
+
};
|
|
1019
|
+
processScope(SettingScope.User);
|
|
1020
|
+
processScope(SettingScope.Workspace);
|
|
1021
|
+
return anyModified;
|
|
1022
|
+
}
|
|
951
1023
|
export function saveSettings(settingsFile) {
|
|
952
1024
|
// Clear the entire cache on any save.
|
|
953
1025
|
settingsCache.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/config/settings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/config/settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,7 +45,7 @@ import stripJsonComments from 'strip-json-comments'; // Will be mocked separatel
|
|
|
45
45
|
import { isWorkspaceTrusted } from './trustedFolders.js';
|
|
46
46
|
// These imports will get the versions from the vi.mock('./settings.js', ...) factory.
|
|
47
47
|
import { loadSettings, USER_SETTINGS_PATH, // This IS the mocked path.
|
|
48
|
-
getSystemSettingsPath, getSystemDefaultsPath, saveSettings, getDefaultsFromSchema, loadEnvironment, migrateDeprecatedSettings, SettingScope, LoadedSettings, sanitizeEnvVar, createTestMergedSettings, resetSettingsCacheForTesting, } from './settings.js';
|
|
48
|
+
getSystemSettingsPath, getSystemDefaultsPath, saveSettings, getDefaultsFromSchema, loadEnvironment, migrateDeprecatedSettings, enforceAgentsMdSetting, SettingScope, LoadedSettings, sanitizeEnvVar, createTestMergedSettings, resetSettingsCacheForTesting, } from './settings.js';
|
|
49
49
|
import { FatalConfigError, CELL_DIR, AuthType, Storage, } from '@google/gemini-cli-core';
|
|
50
50
|
import { updateSettingsFilePreservingFormat } from '../utils/commentJson.js';
|
|
51
51
|
import { getSettingsSchema, MergeStrategy, } from './settingsSchema.js';
|
|
@@ -204,13 +204,41 @@ describe('Settings Loading and Merging', () => {
|
|
|
204
204
|
},
|
|
205
205
|
},
|
|
206
206
|
};
|
|
207
|
-
|
|
208
|
-
|
|
207
|
+
const expectedWithMerged = structuredClone(expectedWithAuth);
|
|
208
|
+
if (expectedWithMerged.context?.fileName) {
|
|
209
|
+
const fn = expectedWithMerged.context.fileName;
|
|
210
|
+
expectedWithMerged.context.fileName = Array.isArray(fn)
|
|
211
|
+
? fn.includes('AGENTS.md')
|
|
212
|
+
? fn
|
|
213
|
+
: ['AGENTS.md', ...fn]
|
|
214
|
+
: fn === 'AGENTS.md'
|
|
215
|
+
? fn
|
|
216
|
+
: ['AGENTS.md', fn];
|
|
209
217
|
}
|
|
210
218
|
else {
|
|
211
|
-
|
|
219
|
+
if (!expectedWithMerged.context) {
|
|
220
|
+
expectedWithMerged.context = {};
|
|
221
|
+
}
|
|
222
|
+
expectedWithMerged.context.fileName = ['AGENTS.md', 'GEMINI.md'];
|
|
223
|
+
}
|
|
224
|
+
const expectedScopeSettings = structuredClone(scope === 'user' ? expectedWithAuth : content);
|
|
225
|
+
if (scope === 'user' || scope === 'workspace') {
|
|
226
|
+
if (!expectedScopeSettings.context) {
|
|
227
|
+
expectedScopeSettings.context = {};
|
|
228
|
+
}
|
|
229
|
+
const fn = expectedScopeSettings.context.fileName;
|
|
230
|
+
expectedScopeSettings.context.fileName = fn
|
|
231
|
+
? Array.isArray(fn)
|
|
232
|
+
? fn.includes('AGENTS.md')
|
|
233
|
+
? fn
|
|
234
|
+
: ['AGENTS.md', ...fn]
|
|
235
|
+
: fn === 'AGENTS.md'
|
|
236
|
+
? fn
|
|
237
|
+
: ['AGENTS.md', fn]
|
|
238
|
+
: ['AGENTS.md', 'GEMINI.md'];
|
|
212
239
|
}
|
|
213
|
-
expect(settings.
|
|
240
|
+
expect(settings[scope].settings).toEqual(expectedScopeSettings);
|
|
241
|
+
expect(settings.merged).toMatchObject(expectedWithMerged);
|
|
214
242
|
});
|
|
215
243
|
it('should merge system, user and workspace settings, with system taking precedence over workspace, and workspace over user', () => {
|
|
216
244
|
mockFsExistsSync.mockImplementation((p) => {
|
|
@@ -268,13 +296,22 @@ describe('Settings Loading and Merging', () => {
|
|
|
268
296
|
expect(settings.system.settings).toEqual(systemSettingsContent);
|
|
269
297
|
expect(settings.user.settings).toEqual({
|
|
270
298
|
...userSettingsContent,
|
|
299
|
+
context: {
|
|
300
|
+
fileName: ['AGENTS.md', 'USER_CONTEXT.md'],
|
|
301
|
+
},
|
|
271
302
|
security: {
|
|
272
303
|
auth: {
|
|
273
304
|
selectedType: AuthType.KEYCLOAK,
|
|
274
305
|
},
|
|
275
306
|
},
|
|
276
307
|
});
|
|
277
|
-
expect(settings.workspace.settings).toEqual(
|
|
308
|
+
expect(settings.workspace.settings).toEqual({
|
|
309
|
+
...workspaceSettingsContent,
|
|
310
|
+
context: {
|
|
311
|
+
...workspaceSettingsContent.context,
|
|
312
|
+
fileName: ['AGENTS.md', 'WORKSPACE_CONTEXT.md'],
|
|
313
|
+
},
|
|
314
|
+
});
|
|
278
315
|
expect(settings.merged).toMatchObject({
|
|
279
316
|
ui: {
|
|
280
317
|
theme: 'system-theme',
|
|
@@ -285,7 +322,7 @@ describe('Settings Loading and Merging', () => {
|
|
|
285
322
|
},
|
|
286
323
|
telemetry: { enabled: false },
|
|
287
324
|
context: {
|
|
288
|
-
fileName: 'WORKSPACE_CONTEXT.md',
|
|
325
|
+
fileName: ['AGENTS.md', 'WORKSPACE_CONTEXT.md'],
|
|
289
326
|
},
|
|
290
327
|
mcp: {
|
|
291
328
|
allowed: ['server1', 'server2'],
|
|
@@ -407,13 +444,23 @@ describe('Settings Loading and Merging', () => {
|
|
|
407
444
|
expect(settings.system.settings).toEqual(systemSettingsContent);
|
|
408
445
|
expect(settings.user.settings).toEqual({
|
|
409
446
|
...userSettingsContent,
|
|
447
|
+
context: {
|
|
448
|
+
...userSettingsContent.context,
|
|
449
|
+
fileName: ['AGENTS.md', 'USER_CONTEXT.md'],
|
|
450
|
+
},
|
|
410
451
|
security: {
|
|
411
452
|
auth: {
|
|
412
453
|
selectedType: AuthType.KEYCLOAK,
|
|
413
454
|
},
|
|
414
455
|
},
|
|
415
456
|
});
|
|
416
|
-
expect(settings.workspace.settings).toEqual(
|
|
457
|
+
expect(settings.workspace.settings).toEqual({
|
|
458
|
+
...workspaceSettingsContent,
|
|
459
|
+
context: {
|
|
460
|
+
...workspaceSettingsContent.context,
|
|
461
|
+
fileName: ['AGENTS.md', 'WORKSPACE_CONTEXT.md'],
|
|
462
|
+
},
|
|
463
|
+
});
|
|
417
464
|
expect(settings.merged).toEqual({
|
|
418
465
|
context: {
|
|
419
466
|
discoveryMaxDirs: 200,
|
|
@@ -424,7 +471,7 @@ describe('Settings Loading and Merging', () => {
|
|
|
424
471
|
'/workspace/dir',
|
|
425
472
|
'/system/dir',
|
|
426
473
|
],
|
|
427
|
-
fileName: 'WORKSPACE_CONTEXT.md',
|
|
474
|
+
fileName: ['AGENTS.md', 'WORKSPACE_CONTEXT.md'],
|
|
428
475
|
},
|
|
429
476
|
mcpServers: {},
|
|
430
477
|
ui: { theme: 'system-theme' },
|
|
@@ -619,13 +666,19 @@ describe('Settings Loading and Merging', () => {
|
|
|
619
666
|
description: 'contextFileName in user settings',
|
|
620
667
|
path: USER_SETTINGS_PATH,
|
|
621
668
|
content: { context: { fileName: 'CUSTOM.md' } },
|
|
622
|
-
expected: {
|
|
669
|
+
expected: {
|
|
670
|
+
key: 'context.fileName',
|
|
671
|
+
value: ['AGENTS.md', 'CUSTOM.md'],
|
|
672
|
+
},
|
|
623
673
|
},
|
|
624
674
|
{
|
|
625
675
|
description: 'contextFileName in workspace settings',
|
|
626
676
|
path: MOCK_WORKSPACE_SETTINGS_PATH,
|
|
627
677
|
content: { context: { fileName: 'PROJECT_SPECIFIC.md' } },
|
|
628
|
-
expected: {
|
|
678
|
+
expected: {
|
|
679
|
+
key: 'context.fileName',
|
|
680
|
+
value: ['AGENTS.md', 'PROJECT_SPECIFIC.md'],
|
|
681
|
+
},
|
|
629
682
|
},
|
|
630
683
|
{
|
|
631
684
|
description: 'excludedProjectEnvVars in user settings',
|
|
@@ -701,7 +754,7 @@ describe('Settings Loading and Merging', () => {
|
|
|
701
754
|
'WORKSPACE_VAR',
|
|
702
755
|
]);
|
|
703
756
|
});
|
|
704
|
-
it('should default contextFileName to
|
|
757
|
+
it('should default contextFileName to include AGENTS.md and GEMINI.md if not in any settings file', () => {
|
|
705
758
|
mockFsExistsSync.mockImplementation((p) => normalizePath(p) === normalizePath(USER_SETTINGS_PATH) ||
|
|
706
759
|
normalizePath(p) === normalizePath(MOCK_WORKSPACE_SETTINGS_PATH));
|
|
707
760
|
const userSettingsContent = { ui: { theme: 'dark' } };
|
|
@@ -714,7 +767,10 @@ describe('Settings Loading and Merging', () => {
|
|
|
714
767
|
return '';
|
|
715
768
|
});
|
|
716
769
|
const settings = loadSettings(MOCK_WORKSPACE_DIR);
|
|
717
|
-
expect(settings.merged.context?.fileName).
|
|
770
|
+
expect(settings.merged.context?.fileName).toEqual([
|
|
771
|
+
'AGENTS.md',
|
|
772
|
+
'GEMINI.md',
|
|
773
|
+
]);
|
|
718
774
|
});
|
|
719
775
|
it.each([
|
|
720
776
|
{
|
|
@@ -1631,7 +1687,10 @@ describe('Settings Loading and Merging', () => {
|
|
|
1631
1687
|
});
|
|
1632
1688
|
const settings = loadSettings(MOCK_WORKSPACE_DIR);
|
|
1633
1689
|
expect(settings.merged.tools?.sandbox).toBe(true);
|
|
1634
|
-
expect(settings.merged.context?.fileName).
|
|
1690
|
+
expect(settings.merged.context?.fileName).toEqual([
|
|
1691
|
+
'AGENTS.md',
|
|
1692
|
+
'WORKSPACE.md',
|
|
1693
|
+
]);
|
|
1635
1694
|
expect(settings.merged.ui?.theme).toBe('dark');
|
|
1636
1695
|
});
|
|
1637
1696
|
it('should NOT merge workspace settings when workspace is not trusted', () => {
|
|
@@ -1658,7 +1717,10 @@ describe('Settings Loading and Merging', () => {
|
|
|
1658
1717
|
});
|
|
1659
1718
|
const settings = loadSettings(MOCK_WORKSPACE_DIR);
|
|
1660
1719
|
expect(settings.merged.tools?.sandbox).toBe(false); // User setting
|
|
1661
|
-
expect(settings.merged.context?.fileName).
|
|
1720
|
+
expect(settings.merged.context?.fileName).toEqual([
|
|
1721
|
+
'AGENTS.md',
|
|
1722
|
+
'USER.md',
|
|
1723
|
+
]); // User setting
|
|
1662
1724
|
expect(settings.merged.ui?.theme).toBe('dark'); // User setting
|
|
1663
1725
|
});
|
|
1664
1726
|
it('should NOT merge workspace settings when workspace trust is undefined', () => {
|
|
@@ -1685,7 +1747,10 @@ describe('Settings Loading and Merging', () => {
|
|
|
1685
1747
|
});
|
|
1686
1748
|
const settings = loadSettings(MOCK_WORKSPACE_DIR);
|
|
1687
1749
|
expect(settings.merged.tools?.sandbox).toBe(false); // User setting
|
|
1688
|
-
expect(settings.merged.context?.fileName).
|
|
1750
|
+
expect(settings.merged.context?.fileName).toEqual([
|
|
1751
|
+
'AGENTS.md',
|
|
1752
|
+
'USER.md',
|
|
1753
|
+
]); // User setting
|
|
1689
1754
|
});
|
|
1690
1755
|
});
|
|
1691
1756
|
describe('loadEnvironment', () => {
|
|
@@ -2144,6 +2209,86 @@ describe('Settings Loading and Merging', () => {
|
|
|
2144
2209
|
});
|
|
2145
2210
|
});
|
|
2146
2211
|
});
|
|
2212
|
+
describe('enforceAgentsMdSetting', () => {
|
|
2213
|
+
let mockFsExistsSync;
|
|
2214
|
+
beforeEach(() => {
|
|
2215
|
+
vi.resetAllMocks();
|
|
2216
|
+
mockFsExistsSync = vi.mocked(fs.existsSync);
|
|
2217
|
+
vi.spyOn(trustedFolders, 'isWorkspaceTrusted').mockReturnValue({
|
|
2218
|
+
isTrusted: true,
|
|
2219
|
+
source: undefined,
|
|
2220
|
+
});
|
|
2221
|
+
});
|
|
2222
|
+
afterEach(() => {
|
|
2223
|
+
vi.restoreAllMocks();
|
|
2224
|
+
});
|
|
2225
|
+
it('should do nothing if context or context.fileName is missing from existing file', () => {
|
|
2226
|
+
const userSettingsContent = { ui: { theme: 'dark' } };
|
|
2227
|
+
mockFsExistsSync.mockReturnValue(true);
|
|
2228
|
+
const loadedSettings = createMockSettings(userSettingsContent);
|
|
2229
|
+
loadedSettings.user.path = USER_SETTINGS_PATH;
|
|
2230
|
+
loadedSettings.user.readOnly = false;
|
|
2231
|
+
const setValueSpy = vi.spyOn(loadedSettings, 'setValue');
|
|
2232
|
+
enforceAgentsMdSetting(loadedSettings);
|
|
2233
|
+
expect(setValueSpy).not.toHaveBeenCalled();
|
|
2234
|
+
});
|
|
2235
|
+
it('should migrate context.fileName from custom string to array starting with AGENTS.md', () => {
|
|
2236
|
+
const userSettingsContent = { context: { fileName: 'CUSTOM.md' } };
|
|
2237
|
+
mockFsExistsSync.mockReturnValue(true);
|
|
2238
|
+
const loadedSettings = createMockSettings(userSettingsContent);
|
|
2239
|
+
loadedSettings.user.path = USER_SETTINGS_PATH;
|
|
2240
|
+
loadedSettings.user.readOnly = false;
|
|
2241
|
+
const setValueSpy = vi.spyOn(loadedSettings, 'setValue');
|
|
2242
|
+
enforceAgentsMdSetting(loadedSettings);
|
|
2243
|
+
expect(setValueSpy).toHaveBeenCalledWith(SettingScope.User, 'context', expect.objectContaining({ fileName: ['AGENTS.md', 'CUSTOM.md'] }));
|
|
2244
|
+
});
|
|
2245
|
+
it('should prepend AGENTS.md if context.fileName is an array not containing agents.md', () => {
|
|
2246
|
+
const userSettingsContent = {
|
|
2247
|
+
context: { fileName: ['PROJECT.md', 'OTHER.md'] },
|
|
2248
|
+
};
|
|
2249
|
+
mockFsExistsSync.mockReturnValue(true);
|
|
2250
|
+
const loadedSettings = createMockSettings(userSettingsContent);
|
|
2251
|
+
loadedSettings.user.path = USER_SETTINGS_PATH;
|
|
2252
|
+
loadedSettings.user.readOnly = false;
|
|
2253
|
+
const setValueSpy = vi.spyOn(loadedSettings, 'setValue');
|
|
2254
|
+
enforceAgentsMdSetting(loadedSettings);
|
|
2255
|
+
expect(setValueSpy).toHaveBeenCalledWith(SettingScope.User, 'context', expect.objectContaining({
|
|
2256
|
+
fileName: ['AGENTS.md', 'PROJECT.md', 'OTHER.md'],
|
|
2257
|
+
}));
|
|
2258
|
+
});
|
|
2259
|
+
it('should not do anything if AGENTS.md is already in context.fileName array', () => {
|
|
2260
|
+
const userSettingsContent = {
|
|
2261
|
+
context: { fileName: ['AGENTS.md', 'GEMINI.md'] },
|
|
2262
|
+
};
|
|
2263
|
+
mockFsExistsSync.mockReturnValue(true);
|
|
2264
|
+
const loadedSettings = createMockSettings(userSettingsContent);
|
|
2265
|
+
loadedSettings.user.path = USER_SETTINGS_PATH;
|
|
2266
|
+
loadedSettings.user.readOnly = false;
|
|
2267
|
+
const setValueSpy = vi.spyOn(loadedSettings, 'setValue');
|
|
2268
|
+
enforceAgentsMdSetting(loadedSettings);
|
|
2269
|
+
expect(setValueSpy).not.toHaveBeenCalled();
|
|
2270
|
+
});
|
|
2271
|
+
it('should not mutate files if settingsFile is read-only', () => {
|
|
2272
|
+
const userSettingsContent = { context: { fileName: 'CUSTOM.md' } };
|
|
2273
|
+
mockFsExistsSync.mockReturnValue(true);
|
|
2274
|
+
const loadedSettings = createMockSettings(userSettingsContent);
|
|
2275
|
+
loadedSettings.user.path = USER_SETTINGS_PATH;
|
|
2276
|
+
loadedSettings.user.readOnly = true;
|
|
2277
|
+
const setValueSpy = vi.spyOn(loadedSettings, 'setValue');
|
|
2278
|
+
enforceAgentsMdSetting(loadedSettings);
|
|
2279
|
+
expect(setValueSpy).not.toHaveBeenCalled();
|
|
2280
|
+
});
|
|
2281
|
+
it('should not do anything if settings file does not physically exist', () => {
|
|
2282
|
+
const userSettingsContent = { context: { fileName: 'CUSTOM.md' } };
|
|
2283
|
+
mockFsExistsSync.mockReturnValue(false); // File does not exist on disk
|
|
2284
|
+
const loadedSettings = createMockSettings(userSettingsContent);
|
|
2285
|
+
loadedSettings.user.path = USER_SETTINGS_PATH;
|
|
2286
|
+
loadedSettings.user.readOnly = false;
|
|
2287
|
+
const setValueSpy = vi.spyOn(loadedSettings, 'setValue');
|
|
2288
|
+
enforceAgentsMdSetting(loadedSettings);
|
|
2289
|
+
expect(setValueSpy).not.toHaveBeenCalled();
|
|
2290
|
+
});
|
|
2291
|
+
});
|
|
2147
2292
|
describe('saveSettings', () => {
|
|
2148
2293
|
it('should save settings using updateSettingsFilePreservingFormat', () => {
|
|
2149
2294
|
const mockUpdateSettings = vi.mocked(updateSettingsFilePreservingFormat);
|