refactor(#1291): T6 — migrate test files off the core spine ahead of deletion (#1293)

The convergence lint only scanned src/ + gsd-core/bin, so ~35 test files
still imported core.cjs. Repoint all 33 behaviour importers to the leaf
modules directly (same symbol->leaf map as the src migration; leaves are the
objects core re-exported by reference), delete the now-meaningless
shim-identity describe blocks in the 8 leaf tests, and delete tests/core.test.cjs
(forwarded-behaviour coverage now lives at the leaves; resolveWorktreeRoot
test relocated to worktree-safety in T0) and tests/lint-core-spine-imports.test.cjs
(the lint is removed in T-final). Dropped the stale core.test.cjs entries from
the allow-test-rule-refs allowlist; eslint-rules RuleTester fixture path
pointed at io.cjs.

After T6: ZERO test imports core.cjs. core.cts still builds (now fully unused);
T-final deletes it. No behaviour change.

Closes #1291

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Tom Boucher
2026-06-15 18:11:20 -04:00
committed by GitHub
parent 76765bc24d
commit c76827afbc
36 changed files with 51 additions and 2650 deletions

View File

@@ -22,7 +22,6 @@ const { test, describe } = require('node:test');
const assert = require('node:assert/strict');
const phaseId = require('../gsd-core/bin/lib/phase-id.cjs');
const core = require('../gsd-core/bin/lib/core.cjs');
// ─── escapeRegex ─────────────────────────────────────────────────────────────
@@ -388,42 +387,3 @@ describe('getPhaseDirFromPhaseId', () => {
});
});
// ─── core.cjs re-export shim identity assertions ──────────────────────────────
describe('core.cjs re-export shim identity (single instance)', () => {
test('core.escapeRegex === phaseId.escapeRegex', () => {
assert.strictEqual(core.escapeRegex, phaseId.escapeRegex);
});
test('core.normalizePhaseName === phaseId.normalizePhaseName', () => {
assert.strictEqual(core.normalizePhaseName, phaseId.normalizePhaseName);
});
test('core.comparePhaseNum === phaseId.comparePhaseNum', () => {
assert.strictEqual(core.comparePhaseNum, phaseId.comparePhaseNum);
});
test('core.extractPhaseToken === phaseId.extractPhaseToken', () => {
assert.strictEqual(core.extractPhaseToken, phaseId.extractPhaseToken);
});
test('core.phaseTokenMatches === phaseId.phaseTokenMatches', () => {
assert.strictEqual(core.phaseTokenMatches, phaseId.phaseTokenMatches);
});
test('core.phaseMarkdownRegexSource === phaseId.phaseMarkdownRegexSource', () => {
assert.strictEqual(core.phaseMarkdownRegexSource, phaseId.phaseMarkdownRegexSource);
});
test('core.phaseMarkdownRegexSourceExact === phaseId.phaseMarkdownRegexSourceExact', () => {
assert.strictEqual(core.phaseMarkdownRegexSourceExact, phaseId.phaseMarkdownRegexSourceExact);
});
test('core.getMilestoneFromPhaseId === phaseId.getMilestoneFromPhaseId', () => {
assert.strictEqual(core.getMilestoneFromPhaseId, phaseId.getMilestoneFromPhaseId);
});
test('core.getPhaseDirFromPhaseId === phaseId.getPhaseDirFromPhaseId', () => {
assert.strictEqual(core.getPhaseDirFromPhaseId, phaseId.getPhaseDirFromPhaseId);
});
});