This commit is contained in:
A.K.M. Adib
2026-01-26 16:10:32 -05:00
parent b07953fb38
commit a1559026f8
2 changed files with 11 additions and 1 deletions

View File

@@ -1252,6 +1252,12 @@ describe('setApprovalMode with folder trust', () => {
expect(() => config.setApprovalMode(ApprovalMode.DEFAULT)).not.toThrow();
});
it('should NOT throw an error when setting PLAN mode in an untrusted folder', () => {
const config = new Config(baseParams);
vi.spyOn(config, 'isTrustedFolder').mockReturnValue(false);
expect(() => config.setApprovalMode(ApprovalMode.PLAN)).not.toThrow();
});
it('should NOT throw an error when setting any mode in a trusted folder', () => {
const config = new Config(baseParams);
vi.spyOn(config, 'isTrustedFolder').mockReturnValue(true);

View File

@@ -1380,7 +1380,11 @@ export class Config {
}
setApprovalMode(mode: ApprovalMode): void {
if (!this.isTrustedFolder() && mode !== ApprovalMode.DEFAULT) {
if (
!this.isTrustedFolder() &&
mode !== ApprovalMode.DEFAULT &&
mode !== ApprovalMode.PLAN
) {
throw new Error(
'Cannot enable privileged approval modes in an untrusted folder.',
);