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

@@ -1,5 +1,5 @@
'use strict';
process.env.GSD_TEST_MODE = '1';
process.env.MSD_TEST_MODE = '1';
const { test, describe } = require('node:test');
const assert = require('node:assert/strict');
@@ -258,7 +258,7 @@ describe('changeset lint: findPrFieldDrift (pure)', () => {
// ---------------------------------------------------------------------------
// src/ is user-facing (#2070 fix 2): post-ADR-457 the .cts sources under
// src/ are the product source of truth — gsd-core/bin/lib/*.cjs is a
// src/ are the product source of truth — msd-core/bin/lib/*.cjs is a
// gitignored build artifact, so a src/-only PR previously had zero
// USER_FACING_PREFIXES coverage and could merge with no release note.
// ---------------------------------------------------------------------------
@@ -295,7 +295,7 @@ describe('changeset lint: main() end-to-end wiring (#1006)', () => {
// Each test allocates its own tmpDir so cases run independently.
test('malformed fragment (pr: 0) fails the gate end-to-end', (t) => {
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-lint-e2e-'));
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-lint-e2e-'));
t.after(() => cleanup(tmpDir));
buildTempRepo(tmpDir, [
@@ -323,7 +323,7 @@ describe('changeset lint: main() end-to-end wiring (#1006)', () => {
});
test('valid fragment (pr: 1) passes the gate end-to-end', (t) => {
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-lint-e2e-'));
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-lint-e2e-'));
t.after(() => cleanup(tmpDir));
buildTempRepo(tmpDir, [
@@ -345,7 +345,7 @@ describe('changeset lint: main() end-to-end wiring (#1006)', () => {
});
test('deleted fragment is skipped and does not produce fail_invalid_fragment', (t) => {
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-lint-e2e-'));
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-lint-e2e-'));
t.after(() => cleanup(tmpDir));
// Base commit includes a valid fragment (pr: 5) that the PR will delete.
@@ -402,7 +402,7 @@ describe('#2988: changeset + docs lints resolve the same local base fallback', (
// ---------------------------------------------------------------------------
describe('changeset lint: PR-field-drift end-to-end wiring', () => {
test('correct pr: (matches the real PR number) passes the gate', (t) => {
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-lint-e2e-'));
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-lint-e2e-'));
t.after(() => cleanup(tmpDir));
buildTempRepo(tmpDir, [
@@ -417,7 +417,7 @@ describe('changeset lint: PR-field-drift end-to-end wiring', () => {
});
test('wrong pr: (stale/guessed number) fails the gate, naming the offending file', (t) => {
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-lint-e2e-'));
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-lint-e2e-'));
t.after(() => cleanup(tmpDir));
buildTempRepo(tmpDir, [
@@ -437,7 +437,7 @@ describe('changeset lint: PR-field-drift end-to-end wiring', () => {
});
test('no PR event payload (push / non-PR run) skips the drift check entirely, even with a stale pr:', (t) => {
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-lint-e2e-'));
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-lint-e2e-'));
t.after(() => cleanup(tmpDir));
buildTempRepo(tmpDir, [
@@ -453,7 +453,7 @@ describe('changeset lint: PR-field-drift end-to-end wiring', () => {
});
test('event payload present but with no pull_request key (also push-shaped) skips the drift check', (t) => {
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gsd-lint-e2e-'));
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'msd-lint-e2e-'));
t.after(() => cleanup(tmpDir));
buildTempRepo(tmpDir, [