refactor: streamline non-interactive session handling by removing settings parameter and introducing minimal settings instance

This commit is contained in:
mingholy.lmh
2025-11-18 12:20:47 +08:00
parent f9a2b7b032
commit 13cc8f9f55
6 changed files with 67 additions and 66 deletions

View File

@@ -484,6 +484,27 @@ export class LoadedSettings {
}
}
/**
* Creates a minimal LoadedSettings instance with empty settings.
* Used in stream-json mode where settings are ignored.
*/
export function createMinimalSettings(): LoadedSettings {
const emptySettingsFile: SettingsFile = {
path: '',
settings: {},
originalSettings: {},
rawJson: '{}',
};
return new LoadedSettings(
emptySettingsFile,
emptySettingsFile,
emptySettingsFile,
emptySettingsFile,
false,
new Set(),
);
}
function findEnvFile(startDir: string): string | null {
let currentDir = path.resolve(startDir);
while (true) {