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

@@ -19,7 +19,7 @@ const path = require('node:path');
const fc = require('fast-check');
const { PROBE_TIMEOUT_MS } = require('./helpers/timeouts.cjs');
const MODULE_PATH = path.join(__dirname, '..', 'gsd-core', 'bin', 'lib', 'api-coverage.cjs');
const MODULE_PATH = path.join(__dirname, '..', 'msd-core', 'bin', 'lib', 'api-coverage.cjs');
// Shared row-shape generators for the coverage-matrix property tests below
// (the parse/render bijection and the #2371 document-shaped property both
@@ -924,9 +924,9 @@ describe('coverage matrix — document-shaped fast-check (extract-exactly-canoni
decoysAfter: fc.array(decoyGen, { maxLength: 2 }),
});
// #2371's own test-runner (gsd-test / gsd-test-runner v1.6.2) has no concept
// #2371's own test-runner (msd-test / msd-test-runner v1.6.2) has no concept
// of node:test's `todo` option: its JSONL result parser
// (internal/pipeline/parse.go's parseJSONL, gsd-test-runner repo) only
// (internal/pipeline/parse.go's parseJSONL, msd-test-runner repo) only
// recognizes `kind: "pass" | "fail"` and hard-errors on anything else, so a
// `{ todo: true }` test whose body throws is still counted as a failure in
// the tool's own verdict — verified directly against that source, not
@@ -980,7 +980,7 @@ describe('coverage matrix — document-shaped fast-check (extract-exactly-canoni
// ──────────────────────────────────────────────────────────────────────────────
describe('api-coverage CLI — STDIN + exit codes', () => {
const CLI = path.join(__dirname, '..', 'gsd-core', 'bin', 'lib', 'api-coverage.cjs');
const CLI = path.join(__dirname, '..', 'msd-core', 'bin', 'lib', 'api-coverage.cjs');
function runCli(stdin) {
const r = spawnSync(process.execPath, [CLI, '--json'], {
@@ -1013,9 +1013,9 @@ describe('api-coverage CLI — STDIN + exit codes', () => {
// RULESET.TESTS.
// ──────────────────────────────────────────────────────────────────────────────
describe('api-coverage CLI — NO_INPUT / UNAVAILABLE (ADR-3889 Phase 3, #3907)', () => {
const CLI = path.join(__dirname, '..', 'gsd-core', 'bin', 'lib', 'api-coverage.cjs');
const CLI = path.join(__dirname, '..', 'msd-core', 'bin', 'lib', 'api-coverage.cjs');
const INJECT_STDIN_ERROR = path.join(__dirname, 'helpers', 'inject-stdin-error.cjs');
const { exitCodeFor } = require('../gsd-core/bin/lib/exit-code-registry.cjs');
const { exitCodeFor } = require('../msd-core/bin/lib/exit-code-registry.cjs');
const { runNode } = require('./helpers/process-seam.cjs');
function runCliJson(stdin, extraArgs = [], extraEnv = {}) {
@@ -1102,14 +1102,14 @@ describe('api-coverage CLI — NO_INPUT / UNAVAILABLE (ADR-3889 Phase 3, #3907)'
assert.notStrictEqual(body.reason, 'no_input', 'stdin_error must be distinguishable from no_input');
});
test('NO_INPUT / UNAVAILABLE codes are identical under GSD_EXIT_CONTRACT=v1 and v2', () => {
test('NO_INPUT / UNAVAILABLE codes are identical under MSD_EXIT_CONTRACT=v1 and v2', () => {
for (const version of ['v1', 'v2']) {
const emptyResult = runCliJson('', [], { GSD_EXIT_CONTRACT: version });
const emptyResult = runCliJson('', [], { MSD_EXIT_CONTRACT: version });
assert.strictEqual(emptyResult.exitCode, exitCodeFor('NO_INPUT'), `NO_INPUT under ${version}`);
const errResult = runNode(['-r', INJECT_STDIN_ERROR, CLI, '--json'], {
timeoutMs: PROBE_TIMEOUT_MS,
env: { ...process.env, GSD_EXIT_CONTRACT: version },
env: { ...process.env, MSD_EXIT_CONTRACT: version },
});
assert.strictEqual(errResult.exitCode, exitCodeFor('UNAVAILABLE'), `UNAVAILABLE under ${version}`);
}