fix(cli) : fixed bug #8310 where /memory refresh will create discrepancies with initial memory load ignoring settings/config for trusted folder and file filters (#10611)

Co-authored-by: Bryan Morgan <bryanmorgan@google.com>
This commit is contained in:
sgnagnarella
2025-10-10 12:04:15 -04:00
committed by GitHub
parent 65b9e367f0
commit 971eb64e98
7 changed files with 84 additions and 37 deletions
@@ -12,7 +12,10 @@ import type {
ConfigParameters,
ContentGeneratorConfig,
} from '@google/gemini-cli-core';
import { Config } from '@google/gemini-cli-core';
import {
Config,
DEFAULT_FILE_FILTERING_OPTIONS,
} from '@google/gemini-cli-core';
import { http, HttpResponse } from 'msw';
import { setupServer } from 'msw/node';
@@ -78,12 +81,14 @@ describe('Configuration Integration Tests', () => {
sandbox: false,
targetDir: tempDir,
debugMode: false,
fileFilteringRespectGitIgnore: undefined, // Should default to true
fileFilteringRespectGitIgnore: undefined, // Should default to DEFAULT_FILE_FILTERING_OPTIONS
};
const config = new Config(configParams);
expect(config.getFileFilteringRespectGitIgnore()).toBe(true);
expect(config.getFileFilteringRespectGitIgnore()).toBe(
DEFAULT_FILE_FILTERING_OPTIONS.respectGitIgnore,
);
});
it('should load custom file filtering settings from configuration', async () => {
@@ -112,7 +117,9 @@ describe('Configuration Integration Tests', () => {
sandbox: false,
targetDir: tempDir,
debugMode: false,
fileFilteringRespectGitIgnore: true,
fileFiltering: {
respectGitIgnore: true,
},
};
const config = new Config(configParams);
@@ -149,13 +156,15 @@ describe('Configuration Integration Tests', () => {
sandbox: false,
targetDir: tempDir,
debugMode: false,
fileFilteringRespectGitIgnore: undefined,
fileFiltering: {},
};
const config = new Config(configParams);
// All settings should use defaults
expect(config.getFileFilteringRespectGitIgnore()).toBe(true);
expect(config.getFileFilteringRespectGitIgnore()).toBe(
DEFAULT_FILE_FILTERING_OPTIONS.respectGitIgnore,
);
});
it('should handle missing configuration sections gracefully', async () => {
@@ -172,7 +181,9 @@ describe('Configuration Integration Tests', () => {
const config = new Config(configParams);
// All git-aware settings should use defaults
expect(config.getFileFilteringRespectGitIgnore()).toBe(true);
expect(config.getFileFilteringRespectGitIgnore()).toBe(
DEFAULT_FILE_FILTERING_OPTIONS.respectGitIgnore,
);
});
});
@@ -185,7 +196,9 @@ describe('Configuration Integration Tests', () => {
sandbox: false,
targetDir: tempDir,
debugMode: false,
fileFilteringRespectGitIgnore: true,
fileFiltering: {
respectGitIgnore: true,
},
};
const config = new Config(configParams);