diff --git a/packages/cli/src/config/persistence_regression.test.ts b/packages/cli/src/config/persistence_regression.test.ts index 3c8fb8aed6..1738970133 100644 --- a/packages/cli/src/config/persistence_regression.test.ts +++ b/packages/cli/src/config/persistence_regression.test.ts @@ -104,8 +104,16 @@ describe('Issue 25428 Regression', () => { const settings = loadSettings('/mock/workspace-' + Math.random()); expect(settings.user.settings.general?.plan?.enabled).toBe(true); - expect(settings.user.settings.experimental?.plan).toBeUndefined(); - expect(settings.user.settings.experimental?.keepMe).toBe('important'); + expect( + (settings.user.settings.experimental as Record)?.[ + 'plan' + ], + ).toBeUndefined(); + expect( + (settings.user.settings.experimental as Record)?.[ + 'keepMe' + ], + ).toBe('important'); expect(updateSettingsFilePreservingFormat).toHaveBeenCalled(); const lastCall = vi diff --git a/packages/core/src/config/config.ts b/packages/core/src/config/config.ts index 69d1b59c92..76f9741760 100644 --- a/packages/core/src/config/config.ts +++ b/packages/core/src/config/config.ts @@ -3542,7 +3542,7 @@ export class Config implements McpContext, AgentLoopContext { if (s.model) this.setModel(s.model); if (s.compressionThreshold !== undefined) { // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion - (this as unknown as Record).compressionThreshold = + (this as unknown as Record)['compressionThreshold'] = s.compressionThreshold; } if (s.ideMode !== undefined) this.ideMode = s.ideMode; @@ -3551,17 +3551,18 @@ export class Config implements McpContext, AgentLoopContext { } if (s.topicUpdateNarration !== undefined) { // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion - (this as unknown as Record).topicUpdateNarration = + (this as unknown as Record)['topicUpdateNarration'] = s.topicUpdateNarration; } if (s.experimentalAutoMemory !== undefined) { // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion - (this as unknown as Record).experimentalAutoMemory = - s.experimentalAutoMemory; + (this as unknown as Record)[ + 'experimentalAutoMemory' + ] = s.experimentalAutoMemory; } if (s.experimentalMemoryV2 !== undefined) { // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion - (this as unknown as Record).experimentalMemoryV2 = + (this as unknown as Record)['experimentalMemoryV2'] = s.experimentalMemoryV2; } } @@ -3573,7 +3574,7 @@ export class Config implements McpContext, AgentLoopContext { } if (refreshed.adminSkillsEnabled !== undefined) { // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion - (this as unknown as Record).adminSkillsEnabled = + (this as unknown as Record)['adminSkillsEnabled'] = refreshed.adminSkillsEnabled; } }