diff options
| author | Billy Biggs <[email protected]> | 2025-06-21 18:23:35 -0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-06-22 01:23:35 +0000 |
| commit | 0779697da6caeae09b67a146013612a34f369b74 (patch) | |
| tree | 665d2b22773b28843648b01fd74b5f0dcb392c6f /packages/core/src | |
| parent | 63f6a497cba61299a1c24aa96795a55479740ac6 (diff) | |
Add setting enableRecursiveFileSearch to control @-file completion (#1290)
Diffstat (limited to 'packages/core/src')
| -rw-r--r-- | packages/core/src/config/config.test.ts | 4 | ||||
| -rw-r--r-- | packages/core/src/config/config.ts | 23 |
2 files changed, 21 insertions, 6 deletions
diff --git a/packages/core/src/config/config.test.ts b/packages/core/src/config/config.test.ts index 8a9f038c..9b576b96 100644 --- a/packages/core/src/config/config.test.ts +++ b/packages/core/src/config/config.test.ts @@ -163,7 +163,9 @@ describe('Server Config (config.ts)', () => { it('should set custom file filtering settings when provided', () => { const paramsWithFileFiltering: ConfigParameters = { ...baseParams, - fileFilteringRespectGitIgnore: false, + fileFiltering: { + respectGitIgnore: false, + }, }; const config = new Config(paramsWithFileFiltering); expect(config.getFileFilteringRespectGitIgnore()).toBe(false); diff --git a/packages/core/src/config/config.ts b/packages/core/src/config/config.ts index 514fc717..be21ac8c 100644 --- a/packages/core/src/config/config.ts +++ b/packages/core/src/config/config.ts @@ -104,7 +104,10 @@ export interface ConfigParameters { contextFileName?: string | string[]; accessibility?: AccessibilitySettings; telemetry?: TelemetrySettings; - fileFilteringRespectGitIgnore?: boolean; + fileFiltering?: { + respectGitIgnore?: boolean; + enableRecursiveFileSearch?: boolean; + }; checkpointing?: boolean; proxy?: string; cwd: string; @@ -136,7 +139,10 @@ export class Config { private readonly accessibility: AccessibilitySettings; private readonly telemetrySettings: TelemetrySettings; private geminiClient!: GeminiClient; - private readonly fileFilteringRespectGitIgnore: boolean; + private readonly fileFiltering: { + respectGitIgnore: boolean; + enableRecursiveFileSearch: boolean; + }; private fileDiscoveryService: FileDiscoveryService | null = null; private gitService: GitService | undefined = undefined; private readonly checkpointing: boolean; @@ -172,8 +178,11 @@ export class Config { logPrompts: params.telemetry?.logPrompts ?? true, }; - this.fileFilteringRespectGitIgnore = - params.fileFilteringRespectGitIgnore ?? true; + this.fileFiltering = { + respectGitIgnore: params.fileFiltering?.respectGitIgnore ?? true, + enableRecursiveFileSearch: + params.fileFiltering?.enableRecursiveFileSearch ?? true, + }; this.checkpointing = params.checkpointing ?? false; this.proxy = params.proxy; this.cwd = params.cwd ?? process.cwd(); @@ -330,8 +339,12 @@ export class Config { return getProjectTempDir(this.getProjectRoot()); } + getEnableRecursiveFileSearch(): boolean { + return this.fileFiltering.enableRecursiveFileSearch; + } + getFileFilteringRespectGitIgnore(): boolean { - return this.fileFilteringRespectGitIgnore; + return this.fileFiltering.respectGitIgnore; } getCheckpointingEnabled(): boolean { |
