fix: Usage of folder trust config flags in FileCommandLoader (#10837)

This commit is contained in:
shrutip90
2025-10-10 11:07:40 -07:00
committed by GitHub
parent 32db4ff66d
commit c6af4eaa00
4 changed files with 19 additions and 26 deletions

View File

@@ -116,8 +116,8 @@ describe('runNonInteractive', () => {
getContentGeneratorConfig: vi.fn().mockReturnValue({}),
getDebugMode: vi.fn().mockReturnValue(false),
getOutputFormat: vi.fn().mockReturnValue('text'),
getFolderTrustFeature: vi.fn().mockReturnValue(false),
getFolderTrust: vi.fn().mockReturnValue(false),
isTrustedFolder: vi.fn().mockReturnValue(false),
} as unknown as Config;
mockSettings = {

View File

@@ -224,8 +224,8 @@ describe('FileCommandLoader', () => {
const mockConfig = {
getProjectRoot: vi.fn(() => '/path/to/project'),
getExtensions: vi.fn(() => []),
getFolderTrustFeature: vi.fn(() => false),
getFolderTrust: vi.fn(() => false),
isTrustedFolder: vi.fn(() => false),
} as unknown as Config;
const loader = new FileCommandLoader(mockConfig);
const commands = await loader.loadCommands(signal);
@@ -269,8 +269,8 @@ describe('FileCommandLoader', () => {
const mockConfig = {
getProjectRoot: vi.fn(() => process.cwd()),
getExtensions: vi.fn(() => []),
getFolderTrustFeature: vi.fn(() => false),
getFolderTrust: vi.fn(() => false),
isTrustedFolder: vi.fn(() => false),
} as unknown as Config;
const loader = new FileCommandLoader(mockConfig);
const commands = await loader.loadCommands(signal);
@@ -560,8 +560,8 @@ describe('FileCommandLoader', () => {
path: extensionDir,
},
]),
getFolderTrustFeature: vi.fn(() => false),
getFolderTrust: vi.fn(() => false),
isTrustedFolder: vi.fn(() => false),
} as unknown as Config;
const loader = new FileCommandLoader(mockConfig);
const commands = await loader.loadCommands(signal);
@@ -613,8 +613,8 @@ describe('FileCommandLoader', () => {
path: extensionDir,
},
]),
getFolderTrustFeature: vi.fn(() => false),
getFolderTrust: vi.fn(() => false),
isTrustedFolder: vi.fn(() => false),
} as unknown as Config;
const loader = new FileCommandLoader(mockConfig);
const commands = await loader.loadCommands(signal);
@@ -722,8 +722,8 @@ describe('FileCommandLoader', () => {
path: extensionDir2,
},
]),
getFolderTrustFeature: vi.fn(() => false),
getFolderTrust: vi.fn(() => false),
isTrustedFolder: vi.fn(() => false),
} as unknown as Config;
const loader = new FileCommandLoader(mockConfig);
const commands = await loader.loadCommands(signal);
@@ -760,8 +760,8 @@ describe('FileCommandLoader', () => {
path: extensionDir,
},
]),
getFolderTrustFeature: vi.fn(() => false),
getFolderTrust: vi.fn(() => false),
isTrustedFolder: vi.fn(() => false),
} as unknown as Config;
const loader = new FileCommandLoader(mockConfig);
const commands = await loader.loadCommands(signal);
@@ -794,8 +794,8 @@ describe('FileCommandLoader', () => {
getExtensions: vi.fn(() => [
{ name: 'a', version: '1.0.0', isActive: true, path: extensionDir },
]),
getFolderTrustFeature: vi.fn(() => false),
getFolderTrust: vi.fn(() => false),
isTrustedFolder: vi.fn(() => false),
} as unknown as Config;
const loader = new FileCommandLoader(mockConfig);
const commands = await loader.loadCommands(signal);
@@ -1189,8 +1189,8 @@ describe('FileCommandLoader', () => {
const mockConfig = {
getProjectRoot: vi.fn(() => '/path/to/project'),
getExtensions: vi.fn(() => []),
getFolderTrustFeature: vi.fn(() => true),
getFolderTrust: vi.fn(() => true),
isTrustedFolder: vi.fn(() => true),
} as unknown as Config;
const userCommandsDir = Storage.getUserCommandsDir();
mock({
@@ -1210,8 +1210,8 @@ describe('FileCommandLoader', () => {
const mockConfig = {
getProjectRoot: vi.fn(() => '/path/to/project'),
getExtensions: vi.fn(() => []),
getFolderTrustFeature: vi.fn(() => true),
getFolderTrust: vi.fn(() => false),
getFolderTrust: vi.fn(() => true),
isTrustedFolder: vi.fn(() => false),
} as unknown as Config;
const userCommandsDir = Storage.getUserCommandsDir();
mock({

View File

@@ -64,11 +64,11 @@ const TomlCommandDefSchema = z.object({
export class FileCommandLoader implements ICommandLoader {
private readonly projectRoot: string;
private readonly folderTrustEnabled: boolean;
private readonly folderTrust: boolean;
private readonly isTrustedFolder: boolean;
constructor(private readonly config: Config | null) {
this.folderTrustEnabled = !!config?.getFolderTrustFeature();
this.folderTrust = !!config?.getFolderTrust();
this.folderTrustEnabled = !!config?.getFolderTrust();
this.isTrustedFolder = !!config?.isTrustedFolder();
this.projectRoot = config?.getProjectRoot() || process.cwd();
}
@@ -101,7 +101,7 @@ export class FileCommandLoader implements ICommandLoader {
cwd: dirInfo.path,
});
if (this.folderTrustEnabled && !this.folderTrust) {
if (this.folderTrustEnabled && !this.isTrustedFolder) {
return [];
}