summaryrefslogtreecommitdiff
path: root/packages/cli/src/config
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/config')
-rw-r--r--packages/cli/src/config/config.integration.test.ts18
-rw-r--r--packages/cli/src/config/config.ts6
-rw-r--r--packages/cli/src/config/settings.ts5
3 files changed, 26 insertions, 3 deletions
diff --git a/packages/cli/src/config/config.integration.test.ts b/packages/cli/src/config/config.integration.test.ts
index 4a965a1f..de329384 100644
--- a/packages/cli/src/config/config.integration.test.ts
+++ b/packages/cli/src/config/config.integration.test.ts
@@ -186,4 +186,22 @@ describe('Configuration Integration Tests', () => {
expect(config.getFileFilteringRespectGitIgnore()).toBe(false);
});
});
+
+ describe('Checkpointing Configuration', () => {
+ it('should enable checkpointing when the setting is true', async () => {
+ const configParams: ConfigParameters = {
+ cwd: '/tmp',
+ contentGeneratorConfig: TEST_CONTENT_GENERATOR_CONFIG,
+ embeddingModel: 'test-embedding-model',
+ sandbox: false,
+ targetDir: tempDir,
+ debugMode: false,
+ checkpointing: true,
+ };
+
+ const config = new Config(configParams);
+
+ expect(config.getCheckpointingEnabled()).toBe(true);
+ });
+ });
});
diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts
index 6e52c6e2..afc63b78 100644
--- a/packages/cli/src/config/config.ts
+++ b/packages/cli/src/config/config.ts
@@ -49,7 +49,7 @@ interface CliArgs {
show_memory_usage: boolean | undefined;
yolo: boolean | undefined;
telemetry: boolean | undefined;
- checkpoint: boolean | undefined;
+ checkpointing: boolean | undefined;
telemetryTarget: string | undefined;
telemetryOtlpEndpoint: string | undefined;
telemetryLogPrompts: boolean | undefined;
@@ -122,7 +122,7 @@ async function parseArguments(): Promise<CliArgs> {
description:
'Enable or disable logging of user prompts for telemetry. Overrides settings files.',
})
- .option('checkpoint', {
+ .option('checkpointing', {
alias: 'c',
type: 'boolean',
description: 'Enables checkpointing of file edits',
@@ -229,7 +229,7 @@ export async function loadCliConfig(
},
// Git-aware file filtering settings
fileFilteringRespectGitIgnore: settings.fileFiltering?.respectGitIgnore,
- checkpoint: argv.checkpoint,
+ checkpointing: argv.checkpointing || settings.checkpointing?.enabled,
proxy:
process.env.HTTPS_PROXY ||
process.env.https_proxy ||
diff --git a/packages/cli/src/config/settings.ts b/packages/cli/src/config/settings.ts
index a90ed2d8..b63f5bb6 100644
--- a/packages/cli/src/config/settings.ts
+++ b/packages/cli/src/config/settings.ts
@@ -27,6 +27,10 @@ export enum SettingScope {
Workspace = 'Workspace',
}
+export interface CheckpointingSettings {
+ enabled?: boolean;
+}
+
export interface AccessibilitySettings {
disableLoadingPhrases?: boolean;
}
@@ -47,6 +51,7 @@ export interface Settings {
telemetry?: TelemetrySettings;
preferredEditor?: string;
bugCommand?: BugCommandSettings;
+ checkpointing?: CheckpointingSettings;
// Git-aware file filtering settings
fileFiltering?: {