refactor: hard-fork GSD -> MSD (Make Software Done)
Mechanical rename produced by scripts/msd-rename.cjs: gsd/Gsd/GSD -> msd/Msd/MSD across contents and paths, upstream package/repo coordinates -> @golem15/msd-core and golem15com/msd-core. Deep links into upstream history, sibling upstream packages, the GSD-2 import feature, CHANGELOG.md and .changeset/ are kept as-is. Hand edits on top: MSD block-letter banner and logos, LICENSE copyright line, package/plugin identity, regenerated lockfile, install-tree fixtures, derived registries and benchmark baseline; migration checksum baseline re-locked (MSD keeps its own install state, so no install had applied the old sums); sort-order and regex-escaped expectations in tests adjusted.
This commit is contained in:
@@ -27,10 +27,10 @@ const { LOOP_HOOK_POINT_CLI_TIMEOUT_MS } = require('./helpers/timeouts.cjs');
|
||||
// In-process seam for the fail-closed read-injection tests at the bottom of this
|
||||
// file (#2365 review): readPhaseScope is the pure phase-scope reader behind the
|
||||
// gate. Those tests monkeypatch fs rather than drive a subprocess.
|
||||
const { readPhaseScope } = require('../gsd-core/bin/lib/check-command-router.cjs');
|
||||
const { escapeRegex } = require('../gsd-core/bin/lib/pattern.cjs');
|
||||
const { readPhaseScope } = require('../msd-core/bin/lib/check-command-router.cjs');
|
||||
const { escapeRegex } = require('../msd-core/bin/lib/pattern.cjs');
|
||||
|
||||
const TOOLS_PATH = path.join(__dirname, '..', 'gsd-core', 'bin', 'gsd-tools.cjs');
|
||||
const TOOLS_PATH = path.join(__dirname, '..', 'msd-core', 'bin', 'msd-tools.cjs');
|
||||
|
||||
function runTools(args, cwd) {
|
||||
const argv = Array.isArray(args)
|
||||
@@ -57,7 +57,7 @@ function runTools(args, cwd) {
|
||||
}
|
||||
|
||||
function makeProject(workflow) {
|
||||
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-apicov-'));
|
||||
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-apicov-'));
|
||||
fs.mkdirSync(path.join(tmpDir, '.planning'), { recursive: true });
|
||||
fs.mkdirSync(path.join(tmpDir, '.planning', 'phases'), { recursive: true });
|
||||
fs.writeFileSync(
|
||||
@@ -286,9 +286,9 @@ describe('api-coverage.verify-pre — seal contract (#1562 acceptance #1,#2,#4,#
|
||||
assert.strictEqual(j.phase_lookup_failed, true);
|
||||
});
|
||||
|
||||
test('no .planning/phases at all → fail-open (genuine non-GSD project)', () => {
|
||||
test('no .planning/phases at all → fail-open (genuine non-MSD project)', () => {
|
||||
// A project with .planning/config.json but no phases directory.
|
||||
const noPhases = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-apicov-nophase-'));
|
||||
const noPhases = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-apicov-nophase-'));
|
||||
try {
|
||||
fs.mkdirSync(path.join(noPhases, '.planning'), { recursive: true });
|
||||
fs.writeFileSync(
|
||||
@@ -299,7 +299,7 @@ describe('api-coverage.verify-pre — seal contract (#1562 acceptance #1,#2,#4,#
|
||||
const r = runTools(['check', 'api-coverage.verify-pre', '01-pay', '--raw'], noPhases);
|
||||
assert.ok(r.success);
|
||||
const j = JSON.parse(r.output);
|
||||
assert.strictEqual(j.block, false, 'no phases tree → pass (not a GSD project)');
|
||||
assert.strictEqual(j.block, false, 'no phases tree → pass (not a MSD project)');
|
||||
} finally {
|
||||
cleanup(noPhases);
|
||||
}
|
||||
@@ -472,7 +472,7 @@ describe('api-coverage.verify-pre — unestablished scope blocks (#3909)', () =>
|
||||
});
|
||||
|
||||
test('a project with no .planning/phases tree still fails OPEN (not a scope block)', () => {
|
||||
const noPhases = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-apicov-nophases-'));
|
||||
const noPhases = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-apicov-nophases-'));
|
||||
try {
|
||||
fs.mkdirSync(path.join(noPhases, '.planning'), { recursive: true });
|
||||
fs.writeFileSync(
|
||||
@@ -482,12 +482,12 @@ describe('api-coverage.verify-pre — unestablished scope blocks (#3909)', () =>
|
||||
);
|
||||
const r = runTools(['check', 'api-coverage.verify-pre', '01-x', '--raw'], noPhases);
|
||||
const j = JSON.parse(r.output);
|
||||
assert.strictEqual(j.block, false, 'a non-GSD layout must stay fail-open');
|
||||
assert.strictEqual(j.block, false, 'a non-MSD layout must stay fail-open');
|
||||
assert.strictEqual(j.passed, true);
|
||||
assert.strictEqual(
|
||||
j.scope_unavailable,
|
||||
undefined,
|
||||
'the new block must not widen to swallow the non-GSD-project pass',
|
||||
'the new block must not widen to swallow the non-MSD-project pass',
|
||||
);
|
||||
} finally {
|
||||
cleanup(noPhases);
|
||||
|
||||
Reference in New Issue
Block a user