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:
Jakub Zych
2026-10-06 01:47:40 +02:00
parent fe069b2a56
commit a9a7a328e6
2763 changed files with 78465 additions and 78434 deletions

View File

@@ -3,7 +3,7 @@
/**
* Regression tests for the test-command normalizer (#1857).
*
* A GSD test gate must not hang forever on a watch-mode runner. The normalizer
* A MSD test gate must not hang forever on a watch-mode runner. The normalizer
* rewrites a resolved test command to a best-effort one-shot form; the gate's
* wall-clock timeout is the ultimate guarantee (asserted separately as workflow
* content). These tests cover the two normalization acceptance criteria:
@@ -19,11 +19,11 @@ const path = require('node:path');
const { cleanup } = require('./helpers.cjs');
const normalizer = require('../gsd-core/bin/lib/normalize-test-command.cjs');
const normalizer = require('../msd-core/bin/lib/normalize-test-command.cjs');
const { normalizeTestCommand, isAlreadyOneShot } = normalizer;
function tmpProject(testScript) {
const dir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-1857-'));
const dir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-1857-'));
fs.writeFileSync(
path.join(dir, 'package.json'),
JSON.stringify({ scripts: { test: testScript } }),
@@ -96,7 +96,7 @@ describe('normalizeTestCommand: package-manager script invocation inspects packa
});
test('pnpm --dir <app> test inspects the target package.json (#1857 comment 5)', () => {
const root = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-1857-root-'));
const root = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-1857-root-'));
try {
fs.mkdirSync(path.join(root, 'app'));
fs.writeFileSync(path.join(root, 'app', 'package.json'), JSON.stringify({ scripts: { test: 'vitest' } }));
@@ -117,7 +117,7 @@ describe('normalizeTestCommand: non-JS / unknown runners are untouched (#1857)',
});
}
test('npm test with no package.json is left unchanged (cannot classify)', () => {
const empty = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-1857-empty-'));
const empty = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-1857-empty-'));
try {
assert.strictEqual(normalizeTestCommand('npm test', empty), 'npm test');
} finally {
@@ -149,7 +149,7 @@ describe('normalizeTestCommand: security hardening (#1857 review)', () => {
test('a package.json that is not a regular file is ignored (no FIFO hang)', () => {
// resolvePackageDir would point here; a non-regular "package.json" must be skipped.
const dir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-1857-notfile-'));
const dir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-1857-notfile-'));
try {
fs.mkdirSync(path.join(dir, 'package.json')); // a DIRECTORY named package.json
// Classified as "cannot determine runner" → command returned unchanged.