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

@@ -6,14 +6,14 @@ const { describe, test } = require('node:test');
const assert = require('node:assert/strict');
const fs = require('fs');
const path = require('path');
const { runGsdTools, createTempProject, cleanup } = require('./helpers.cjs');
const { runMsdTools, createTempProject, cleanup } = require('./helpers.cjs');
const GSD_ROOT = path.join(__dirname, '..', 'gsd-core');
const MSD_ROOT = path.join(__dirname, '..', 'msd-core');
describe('Thinking Partner Integration (#1726)', () => {
// Reference doc tests
describe('Reference document', () => {
const refPath = path.join(GSD_ROOT, 'references', 'thinking-partner.md');
const refPath = path.join(MSD_ROOT, 'references', 'thinking-partner.md');
test('thinking-partner.md exists', () => {
assert.ok(fs.existsSync(refPath), 'references/thinking-partner.md should exist');
@@ -76,7 +76,7 @@ describe('Thinking Partner Integration (#1726)', () => {
// Replaces two source-grep tests that read config-schema.cjs and core.cjs (see #2691).
const tmpDir = createTempProject();
try {
const setResult = runGsdTools('config-set features.thinking_partner true', tmpDir);
const setResult = runMsdTools('config-set features.thinking_partner true', tmpDir);
assert.ok(setResult.success, `config-set should accept features.thinking_partner: ${setResult.error}`);
const configPath = path.join(tmpDir, '.planning', 'config.json');
assert.ok(fs.existsSync(configPath), 'config-set should create .planning/config.json');
@@ -99,9 +99,9 @@ describe('Thinking Partner Integration (#1726)', () => {
describe('Discuss-phase integration', () => {
function readDiscussFamily() {
const candidates = [
path.join(GSD_ROOT, 'workflows', 'discuss-phase.md'),
path.join(GSD_ROOT, 'workflows', 'discuss-phase', 'modes', 'default.md'),
path.join(GSD_ROOT, 'workflows', 'discuss-phase', 'modes', 'advisor.md'),
path.join(MSD_ROOT, 'workflows', 'discuss-phase.md'),
path.join(MSD_ROOT, 'workflows', 'discuss-phase', 'modes', 'default.md'),
path.join(MSD_ROOT, 'workflows', 'discuss-phase', 'modes', 'advisor.md'),
];
return candidates
.filter(p => fs.existsSync(p))
@@ -145,7 +145,7 @@ describe('Thinking Partner Integration (#1726)', () => {
describe('Plan-phase integration', () => {
test('plan-phase.md contains thinking partner conditional block', () => {
const content = fs.readFileSync(
path.join(GSD_ROOT, 'workflows', 'plan-phase.md'),
path.join(MSD_ROOT, 'workflows', 'plan-phase.md'),
'utf-8'
);
assert.ok(
@@ -156,7 +156,7 @@ describe('Thinking Partner Integration (#1726)', () => {
test('plan-phase references features.thinking_partner config', () => {
const content = fs.readFileSync(
path.join(GSD_ROOT, 'workflows', 'plan-phase.md'),
path.join(MSD_ROOT, 'workflows', 'plan-phase.md'),
'utf-8'
);
assert.ok(
@@ -167,7 +167,7 @@ describe('Thinking Partner Integration (#1726)', () => {
test('plan-phase scans for architectural tradeoff keywords', () => {
const content = fs.readFileSync(
path.join(GSD_ROOT, 'workflows', 'plan-phase.md'),
path.join(MSD_ROOT, 'workflows', 'plan-phase.md'),
'utf-8'
);
assert.ok(
@@ -186,7 +186,7 @@ describe('Thinking Partner Integration (#1726)', () => {
test('plan-phase offers skip option', () => {
const content = fs.readFileSync(
path.join(GSD_ROOT, 'workflows', 'plan-phase.md'),
path.join(MSD_ROOT, 'workflows', 'plan-phase.md'),
'utf-8'
);
assert.ok(
@@ -197,7 +197,7 @@ describe('Thinking Partner Integration (#1726)', () => {
test('plan-phase block is between step 11 and step 12', () => {
const content = fs.readFileSync(
path.join(GSD_ROOT, 'workflows', 'plan-phase.md'),
path.join(MSD_ROOT, 'workflows', 'plan-phase.md'),
'utf-8'
);
const step11Idx = content.indexOf('## 11. Handle Checker Return');