diff --git a/LifeOS/install/LIFEOS/PULSE/modules/tab-freshness.ts b/LifeOS/install/LIFEOS/PULSE/modules/tab-freshness.ts index 0fc37f7725..7103511207 100644 --- a/LifeOS/install/LIFEOS/PULSE/modules/tab-freshness.ts +++ b/LifeOS/install/LIFEOS/PULSE/modules/tab-freshness.ts @@ -168,7 +168,7 @@ function resolveSpec(spec: SourceSpec): ResolvedSource[] { const out: ResolvedSource[] = [] let entries: string[] = [] try { - entries = readdirSync(spec.path).filter((e) => e.endsWith(".md") || e.endsWith(".json") || e.endsWith(".yaml")) + entries = readdirSync(spec.path).filter((e) => e.endsWith(".md") || e.endsWith(".json") || e.endsWith(".yaml") || e.endsWith(".yml")) } catch { // unreadable dir — record as missing return [{ name: spec.name, path: spec.path, exists: false, mtime: null }] diff --git a/LifeOS/install/LIFEOS/TOOLS/DocCheck.ts b/LifeOS/install/LIFEOS/TOOLS/DocCheck.ts index 74afe68182..dcc0f0196d 100644 --- a/LifeOS/install/LIFEOS/TOOLS/DocCheck.ts +++ b/LifeOS/install/LIFEOS/TOOLS/DocCheck.ts @@ -164,7 +164,7 @@ function findDocs(): string[] { const secDir = join(LIFEOS_DIR, 'USER', 'SECURITY'); try { for (const f of readdirSync(secDir)) { - if (f.endsWith('.md') || f.endsWith('.yaml')) docs.push(join(secDir, f)); + if (f.endsWith('.md') || f.endsWith('.yaml') || f.endsWith('.yml')) docs.push(join(secDir, f)); } } catch { /* */ } diff --git a/LifeOS/install/skills/Evals/Tools/EvalRunner.ts b/LifeOS/install/skills/Evals/Tools/EvalRunner.ts index 967edea5a1..99074d60e6 100644 --- a/LifeOS/install/skills/Evals/Tools/EvalRunner.ts +++ b/LifeOS/install/skills/Evals/Tools/EvalRunner.ts @@ -82,8 +82,11 @@ export function buildLiveSystemPrompt(): string { function resolveSuite(name: string): string | null { for (const dir of [USER_SUITES, SKILL_SUITES]) { - for (const p of [join(dir, `${name}.yaml`), join(dir, 'Regression', `${name}.yaml`), join(dir, 'Capability', `${name}.yaml`)]) { - if (existsSync(p)) return p; + // .yaml first, so an existing .yaml keeps winning if both somehow exist. + for (const ext of ['yaml', 'yml']) { + for (const p of [join(dir, `${name}.${ext}`), join(dir, 'Regression', `${name}.${ext}`), join(dir, 'Capability', `${name}.${ext}`)]) { + if (existsSync(p)) return p; + } } } return null; diff --git a/LifeOS/install/skills/Evals/Tools/SuiteManager.ts b/LifeOS/install/skills/Evals/Tools/SuiteManager.ts index 96ebc2b866..a57d27e81b 100755 --- a/LifeOS/install/skills/Evals/Tools/SuiteManager.ts +++ b/LifeOS/install/skills/Evals/Tools/SuiteManager.ts @@ -91,7 +91,7 @@ export function listSuites(type?: EvalType): EvalSuite[] { if (!existsSync(dirPath)) continue; for (const file of readdirSync(dirPath)) { - if (file.endsWith('.yaml')) { + if (file.endsWith('.yaml') || file.endsWith('.yml')) { const suite = parseYaml(readFileSync(join(dirPath, file), 'utf-8')) as EvalSuite; suites.push(suite); }