From 34e0d9c0b65b91b12df4f205d9835e05913992b9 Mon Sep 17 00:00:00 2001 From: "Anas H. Sulaiman" Date: Fri, 13 Jun 2025 12:00:38 -0400 Subject: [PATCH] cleanup unused `allowBuildArtifacts` (#1010) --- docs/cli/configuration.md | 2 -- docs/core/telemetry.md | 1 - .../cli/src/config/config.integration.test.ts | 34 ------------------- packages/cli/src/config/config.ts | 2 -- packages/cli/src/config/settings.ts | 1 - .../src/ui/hooks/atCommandProcessor.test.ts | 1 - .../hooks/useCompletion.integration.test.ts | 1 - packages/core/src/config/config.test.ts | 3 -- packages/core/src/config/config.ts | 9 ----- packages/core/src/telemetry/loggers.test.ts | 2 -- packages/core/src/telemetry/loggers.ts | 2 -- packages/core/src/telemetry/types.ts | 1 - packages/core/src/tools/glob.test.ts | 1 - .../core/src/tools/read-many-files.test.ts | 1 - 14 files changed, 61 deletions(-) diff --git a/docs/cli/configuration.md b/docs/cli/configuration.md index cd8d26c4..4eacc6fd 100644 --- a/docs/cli/configuration.md +++ b/docs/cli/configuration.md @@ -49,12 +49,10 @@ When you create a `.gemini/settings.json` file for project-specific settings, or - **Description:** Controls git-aware file filtering behavior for @ commands and file discovery tools. - **Properties:** - **`respectGitIgnore`** (boolean, default: `true`): Whether to respect .gitignore patterns when discovering files. When enabled, git-ignored files (like `node_modules/`, `dist/`, `.env`) are automatically excluded from @ commands and file listing operations. - - **`allowBuildArtifacts`** (boolean, default: `false`): Whether to include build artifacts and generated files in file discovery operations. - **Example:** ```json "fileFiltering": { "respectGitIgnore": true, - "allowBuildArtifacts": false } ``` diff --git a/docs/core/telemetry.md b/docs/core/telemetry.md index 4455638c..538150cf 100644 --- a/docs/core/telemetry.md +++ b/docs/core/telemetry.md @@ -367,7 +367,6 @@ These are timestamped records of specific events. - `code_assist_enabled` (boolean) - `log_user_prompts_enabled` (boolean) - `file_filtering_respect_git_ignore` (boolean) - - `file_filtering_allow_build_artifacts` (boolean) - `debug_mode` (boolean) - `mcp_servers` (string) diff --git a/packages/cli/src/config/config.integration.test.ts b/packages/cli/src/config/config.integration.test.ts index 99745d29..4a965a1f 100644 --- a/packages/cli/src/config/config.integration.test.ts +++ b/packages/cli/src/config/config.integration.test.ts @@ -60,13 +60,11 @@ describe('Configuration Integration Tests', () => { targetDir: tempDir, debugMode: false, fileFilteringRespectGitIgnore: undefined, // Should default to true - fileFilteringAllowBuildArtifacts: undefined, // Should default to false }; const config = new Config(configParams); expect(config.getFileFilteringRespectGitIgnore()).toBe(true); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(false); }); it('should load custom file filtering settings from configuration', async () => { @@ -78,13 +76,11 @@ describe('Configuration Integration Tests', () => { targetDir: tempDir, debugMode: false, fileFilteringRespectGitIgnore: false, - fileFilteringAllowBuildArtifacts: true, }; const config = new Config(configParams); expect(config.getFileFilteringRespectGitIgnore()).toBe(false); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(true); }); it('should merge user and workspace file filtering settings', async () => { @@ -96,12 +92,10 @@ describe('Configuration Integration Tests', () => { targetDir: tempDir, debugMode: false, fileFilteringRespectGitIgnore: true, - fileFilteringAllowBuildArtifacts: true, }; const config = new Config(configParams); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(true); expect(config.getFileFilteringRespectGitIgnore()).toBe(true); }); }); @@ -116,16 +110,12 @@ describe('Configuration Integration Tests', () => { targetDir: tempDir, debugMode: false, fileFilteringRespectGitIgnore: false, - fileFilteringAllowBuildArtifacts: undefined, // Should default to false }; const config = new Config(configParams); // Specified settings should be applied expect(config.getFileFilteringRespectGitIgnore()).toBe(false); - - // Missing settings should use defaults - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(false); }); it('should handle empty configuration objects gracefully', async () => { @@ -137,14 +127,12 @@ describe('Configuration Integration Tests', () => { targetDir: tempDir, debugMode: false, fileFilteringRespectGitIgnore: undefined, - fileFilteringAllowBuildArtifacts: undefined, }; const config = new Config(configParams); // All settings should use defaults expect(config.getFileFilteringRespectGitIgnore()).toBe(true); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(false); }); it('should handle missing configuration sections gracefully', async () => { @@ -162,7 +150,6 @@ describe('Configuration Integration Tests', () => { // All git-aware settings should use defaults expect(config.getFileFilteringRespectGitIgnore()).toBe(true); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(false); }); }); @@ -176,30 +163,11 @@ describe('Configuration Integration Tests', () => { targetDir: tempDir, debugMode: false, fileFilteringRespectGitIgnore: true, - fileFilteringAllowBuildArtifacts: false, }; const config = new Config(configParams); expect(config.getFileFilteringRespectGitIgnore()).toBe(true); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(false); - }); - - it('should handle a development-focused configuration', async () => { - const configParams: ConfigParameters = { - cwd: '/tmp', - contentGeneratorConfig: TEST_CONTENT_GENERATOR_CONFIG, - embeddingModel: 'test-embedding-model', - sandbox: false, - targetDir: tempDir, - debugMode: false, - fileFilteringRespectGitIgnore: true, - fileFilteringAllowBuildArtifacts: true, - }; - - const config = new Config(configParams); - - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(true); }); it('should handle a CI/CD environment configuration', async () => { @@ -211,13 +179,11 @@ describe('Configuration Integration Tests', () => { targetDir: tempDir, debugMode: false, fileFilteringRespectGitIgnore: false, // CI might need to see all files - fileFilteringAllowBuildArtifacts: true, }; const config = new Config(configParams); expect(config.getFileFilteringRespectGitIgnore()).toBe(false); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(true); }); }); }); diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts index 4fee7499..9215afdd 100644 --- a/packages/cli/src/config/config.ts +++ b/packages/cli/src/config/config.ts @@ -195,8 +195,6 @@ export async function loadCliConfig( : (settings.telemetry ?? false), // Git-aware file filtering settings fileFilteringRespectGitIgnore: settings.fileFiltering?.respectGitIgnore, - fileFilteringAllowBuildArtifacts: - settings.fileFiltering?.allowBuildArtifacts, checkpoint: argv.checkpoint, proxy: process.env.HTTPS_PROXY || diff --git a/packages/cli/src/config/settings.ts b/packages/cli/src/config/settings.ts index df557e25..e00ebb79 100644 --- a/packages/cli/src/config/settings.ts +++ b/packages/cli/src/config/settings.ts @@ -43,7 +43,6 @@ export interface Settings { // Git-aware file filtering settings fileFiltering?: { respectGitIgnore?: boolean; - allowBuildArtifacts?: boolean; }; // UI setting. Does not display the ANSI-controlled terminal title. diff --git a/packages/cli/src/ui/hooks/atCommandProcessor.test.ts b/packages/cli/src/ui/hooks/atCommandProcessor.test.ts index c76bdd37..9a80c95c 100644 --- a/packages/cli/src/ui/hooks/atCommandProcessor.test.ts +++ b/packages/cli/src/ui/hooks/atCommandProcessor.test.ts @@ -21,7 +21,6 @@ const mockConfig = { isSandboxed: vi.fn(() => false), getFileService: vi.fn(), getFileFilteringRespectGitIgnore: vi.fn(() => true), - getFileFilteringAllowBuildArtifacts: vi.fn(() => false), } as unknown as Config; const mockReadManyFilesExecute = vi.fn(); diff --git a/packages/cli/src/ui/hooks/useCompletion.integration.test.ts b/packages/cli/src/ui/hooks/useCompletion.integration.test.ts index 76204497..3ee24a8a 100644 --- a/packages/cli/src/ui/hooks/useCompletion.integration.test.ts +++ b/packages/cli/src/ui/hooks/useCompletion.integration.test.ts @@ -47,7 +47,6 @@ describe('useCompletion git-aware filtering integration', () => { mockConfig = { getFileFilteringRespectGitIgnore: vi.fn(() => true), - getFileFilteringAllowBuildArtifacts: vi.fn(() => false), getFileService: vi.fn().mockResolvedValue(mockFileDiscoveryService), }; diff --git a/packages/core/src/config/config.test.ts b/packages/core/src/config/config.test.ts index 71af832b..4a5cae1b 100644 --- a/packages/core/src/config/config.test.ts +++ b/packages/core/src/config/config.test.ts @@ -106,18 +106,15 @@ describe('Server Config (config.ts)', () => { it('should set default file filtering settings when not provided', () => { const config = new Config(baseParams); expect(config.getFileFilteringRespectGitIgnore()).toBe(true); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(false); }); it('should set custom file filtering settings when provided', () => { const paramsWithFileFiltering: ConfigParameters = { ...baseParams, fileFilteringRespectGitIgnore: false, - fileFilteringAllowBuildArtifacts: true, }; const config = new Config(paramsWithFileFiltering); expect(config.getFileFilteringRespectGitIgnore()).toBe(false); - expect(config.getFileFilteringAllowBuildArtifacts()).toBe(true); }); it('Config constructor should set telemetry to true when provided as true', () => { diff --git a/packages/core/src/config/config.ts b/packages/core/src/config/config.ts index 5e13241d..2576080b 100644 --- a/packages/core/src/config/config.ts +++ b/packages/core/src/config/config.ts @@ -81,7 +81,6 @@ export interface ConfigParameters { telemetryLogUserPromptsEnabled?: boolean; telemetryOtlpEndpoint?: string; fileFilteringRespectGitIgnore?: boolean; - fileFilteringAllowBuildArtifacts?: boolean; checkpoint?: boolean; proxy?: string; cwd: string; @@ -114,7 +113,6 @@ export class Config { private readonly geminiClient: GeminiClient; private readonly geminiIgnorePatterns: string[] = []; private readonly fileFilteringRespectGitIgnore: boolean; - private readonly fileFilteringAllowBuildArtifacts: boolean; private fileDiscoveryService: FileDiscoveryService | null = null; private gitService: GitService | undefined = undefined; private readonly checkpoint: boolean; @@ -148,8 +146,6 @@ export class Config { this.telemetryOtlpEndpoint = params.telemetryOtlpEndpoint ?? ''; this.fileFilteringRespectGitIgnore = params.fileFilteringRespectGitIgnore ?? true; - this.fileFilteringAllowBuildArtifacts = - params.fileFilteringAllowBuildArtifacts ?? false; this.checkpoint = params.checkpoint ?? false; this.proxy = params.proxy; this.cwd = params.cwd ?? process.cwd(); @@ -296,10 +292,6 @@ export class Config { return this.fileFilteringRespectGitIgnore; } - getFileFilteringAllowBuildArtifacts(): boolean { - return this.fileFilteringAllowBuildArtifacts; - } - getCheckpointEnabled(): boolean { return this.checkpoint; } @@ -317,7 +309,6 @@ export class Config { this.fileDiscoveryService = new FileDiscoveryService(this.targetDir); await this.fileDiscoveryService.initialize({ respectGitIgnore: this.fileFilteringRespectGitIgnore, - includeBuildArtifacts: this.fileFilteringAllowBuildArtifacts, }); } return this.fileDiscoveryService; diff --git a/packages/core/src/telemetry/loggers.test.ts b/packages/core/src/telemetry/loggers.test.ts index 58ea3a10..2f909c22 100644 --- a/packages/core/src/telemetry/loggers.test.ts +++ b/packages/core/src/telemetry/loggers.test.ts @@ -62,7 +62,6 @@ describe('loggers', () => { }), getTelemetryLogUserPromptsEnabled: () => true, getFileFilteringRespectGitIgnore: () => true, - getFileFilteringAllowBuildArtifacts: () => false, getDebugMode: () => true, getMcpServers: () => ({ 'test-server': { @@ -90,7 +89,6 @@ describe('loggers', () => { code_assist_enabled: false, log_user_prompts_enabled: true, file_filtering_respect_git_ignore: true, - file_filtering_allow_build_artifacts: false, debug_mode: true, mcp_servers: 'test-server', }, diff --git a/packages/core/src/telemetry/loggers.ts b/packages/core/src/telemetry/loggers.ts index f6896def..e788119c 100644 --- a/packages/core/src/telemetry/loggers.ts +++ b/packages/core/src/telemetry/loggers.ts @@ -89,8 +89,6 @@ export function logCliConfiguration(config: Config): void { log_user_prompts_enabled: config.getTelemetryLogUserPromptsEnabled(), file_filtering_respect_git_ignore: config.getFileFilteringRespectGitIgnore(), - file_filtering_allow_build_artifacts: - config.getFileFilteringAllowBuildArtifacts(), debug_mode: config.getDebugMode(), mcp_servers: mcpServers ? Object.keys(mcpServers).join(',') : '', }; diff --git a/packages/core/src/telemetry/types.ts b/packages/core/src/telemetry/types.ts index bed9b16d..68dd411e 100644 --- a/packages/core/src/telemetry/types.ts +++ b/packages/core/src/telemetry/types.ts @@ -67,7 +67,6 @@ export interface CliConfigEvent { vertex_ai_enabled: boolean; log_user_prompts_enabled: boolean; file_filtering_respect_git_ignore: boolean; - file_filtering_allow_build_artifacts: boolean; } export type TelemetryEvent = diff --git a/packages/core/src/tools/glob.test.ts b/packages/core/src/tools/glob.test.ts index b848b030..21f7f0fe 100644 --- a/packages/core/src/tools/glob.test.ts +++ b/packages/core/src/tools/glob.test.ts @@ -26,7 +26,6 @@ describe('GlobTool', () => { return service; }, getFileFilteringRespectGitIgnore: () => true, - getFileFilteringAllowBuildArtifacts: () => false, } as Partial as Config; beforeEach(async () => { diff --git a/packages/core/src/tools/read-many-files.test.ts b/packages/core/src/tools/read-many-files.test.ts index 82f6c57d..90a5a312 100644 --- a/packages/core/src/tools/read-many-files.test.ts +++ b/packages/core/src/tools/read-many-files.test.ts @@ -29,7 +29,6 @@ describe('ReadManyFilesTool', () => { return service; }, getFileFilteringRespectGitIgnore: () => true, - getFileFilteringAllowBuildArtifacts: () => false, getGeminiIgnorePatterns: () => ['**/foo.bar', 'foo.baz', 'foo.*'], } as Partial as Config;