chore: clear dead test and allowlist leftovers of dropped runtimes
Some checks failed
Tests / PR mergeability (push) Successful in 18s
Tests / Base branch health (push) Successful in 9s
Tests / Detect test scope (push) Successful in 16s
Tests / lint-tests (push) Failing after 1m43s
Tests / plugin-validate (push) Successful in 58s
Tests / test (ubuntu-latest, 24, shard 1/3) (push) Failing after 19s
Tests / test (ubuntu-latest, 24, shard 2/3) (push) Failing after 20s
Tests / test (ubuntu-latest, 24, shard 3/3) (push) Failing after 20s
Tests / test (ubuntu-latest, 24) (push) Failing after 18s
Tests / test (inert CI) (push) Has been skipped
Tests / QA loop walk (smell ratchet) (push) Failing after 19s
Tests / Coverage gate (merged shards) (push) Has been skipped
Tests / Publish emitted-baseline artifact (push) Has been skipped
Duplicate auto-close sweep / sweep (push) Successful in 19s
CI timeout budget report / report (push) Failing after 14s
Close Draft PRs (sweep) / Sweep open draft PRs (push) Successful in 9s
Dismiss Unauthorized PR Approvals / dismiss-unauthorized-approval (push) Successful in 9s
Tests / conformance test (macos-latest, 24) (push) Has been cancelled
Tests / conformance test (windows-latest, 24, shard 1/3) (push) Has been cancelled
Tests / conformance test (windows-latest, 24, shard 2/3) (push) Has been cancelled
Tests / conformance test (windows-latest, 24, shard 3/3) (push) Has been cancelled
Tests / Required tests (push) Has been cancelled

This commit is contained in:
Jakub Zych
2026-10-06 20:30:09 +02:00
parent 792139b5ed
commit fe3ed06691
83 changed files with 308 additions and 1997 deletions

View File

@@ -308,10 +308,10 @@ describe('applySurface', () => {
assert.ok(files.includes('msd-help.md'), 'msd-help.md should be present after applySurface on missing dest');
});
test('Hermes profile shrink: stale MSD skill dirs are removed; user skills preserved', (t) => {
test('Empty-prefix profile shrink: stale MSD skill dirs are removed; user skills preserved', (t) => {
const { _syncMsdDir } = require('../msd-core/bin/lib/surface.cjs');
const base = createTempDir('msd-surface-hermes-shrink-');
const base = createTempDir('msd-surface-empty-prefix-shrink-');
t.after(() => cleanup(base));
const stagedDir = path.join(base, 'staged');
const destDir = path.join(base, 'dest');
@@ -332,8 +332,8 @@ describe('applySurface', () => {
['msd-planner', []],
]);
const hermesKind = { kind: 'skills', destSubpath: 'skills/msd', prefix: '', stage: () => stagedDir };
_syncMsdDir(stagedDir, destDir, hermesKind, manifest);
const emptyPrefixKind = { kind: 'skills', destSubpath: 'skills/msd', prefix: '', stage: () => stagedDir };
_syncMsdDir(stagedDir, destDir, emptyPrefixKind, manifest);
assert.ok(
fs.existsSync(path.join(destDir, 'msd-executor', 'SKILL.md')),
@@ -349,10 +349,10 @@ describe('applySurface', () => {
);
});
test('_syncMsdDir skills kind (hermes): preserves non-MSD user dir under skills/msd/ when kindPrefix is empty', (t) => {
test('_syncMsdDir skills kind (empty prefix): preserves non-MSD user dir under skills/msd/ when kindPrefix is empty', (t) => {
const { _syncMsdDir } = require('../msd-core/bin/lib/surface.cjs');
const base = createTempDir('msd-surface-hermes-');
const base = createTempDir('msd-surface-empty-prefix-');
t.after(() => cleanup(base));
const stagedDir = path.join(base, 'staged');
const destDir = path.join(base, 'dest');
@@ -366,10 +366,10 @@ describe('applySurface', () => {
fs.mkdirSync(userDir, { recursive: true });
fs.writeFileSync(path.join(userDir, 'SKILL.md'), '# user custom\n', 'utf8');
const hermesKind = { kind: 'skills', destSubpath: 'skills/msd', prefix: '', stage: () => stagedDir };
_syncMsdDir(stagedDir, destDir, hermesKind);
const emptyPrefixKind = { kind: 'skills', destSubpath: 'skills/msd', prefix: '', stage: () => stagedDir };
_syncMsdDir(stagedDir, destDir, emptyPrefixKind);
assert.ok(fs.existsSync(userDir), 'user-custom-skill dir must be preserved when kindPrefix is empty (Hermes)');
assert.ok(fs.existsSync(userDir), 'user-custom-skill dir must be preserved when kindPrefix is empty');
assert.ok(fs.existsSync(path.join(destDir, stem1, 'SKILL.md')), 'MSD help/SKILL.md must be copied');
});
@@ -1381,7 +1381,7 @@ describe('skills-kind destination parity: installer vs surface-apply (#2911)', (
return; // runtime/scope combination not supported
}
const skillsKind = layout.kinds.find((k) => k.kind === 'skills');
if (!skillsKind) return; // e.g. cline at local scope: no skills kind
if (!skillsKind) return; // e.g. a local scope with no skills kind
if (typeof skillsKind.home === 'string' && skillsKind.home !== '') {
discriminatingRuntimes++;
@@ -1535,8 +1535,8 @@ describe('codex skills-kind destination: home override (#2911)', () => {
// installRuntimeArtifacts, and createRuntimeArtifactUninstallPlan — all three of
// which honor `skillsKindEntry.home ?? <install root>`. This writer originally did
// not, and would silently reproduce the #2911 duplicate-tree symptom the moment
// any combined-family runtime (opencode, kilo) gains a `home` override. Neither
// declares one today, so this test exercises the REAL production code path
// any combined-family runtime (opencode) gains a `home` override. It does not
// declare one today, so this test exercises the REAL production code path
// (installOpencodeFamilySkills, via the module-ref call convention documented at
// src/install-engine.cts:37-38) under a synthetic `home` override injected by
// monkeypatching resolveRuntimeArtifactLayout's shared module export — the same