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

@@ -9,7 +9,7 @@
>
> **Provenance note.** An earlier draft of this ADR (and issue #457) was authored
> by an agent and asserted a codebase state that did not exist — "~13 files
> generated from `.ts` via `tsc`", `gsd-core/src/` / `sdk/src/` source trees,
> generated from `.ts` via `tsc`", `msd-core/src/` / `sdk/src/` source trees,
> and a `tests/cjs-ts-parity.test.cjs`. None of those existed. This rewrite
> grounds the decision in verified ground truth. Do not restore the earlier
> "natural completion of the 13 generated files" framing; it was fiction.
@@ -18,12 +18,12 @@
### What actually exists today (verified 2026-05-31)
- `gsd-core/bin/lib/` holds **84** `.cjs` files. **Exactly one** carries a
- `msd-core/bin/lib/` holds **84** `.cjs` files. **Exactly one** carries a
`// @generated` header: `package-identity.cjs`.
- That one generated file is **not** `tsc` output. It is produced by
`scripts/generate-package-identity.cjs` — a plain Node script that reads
`package.json` and **bakes literal coordinate values** into a CJS module.
- There is **no** `gsd-core/src/` or `sdk/src/` TypeScript tree. There is
- There is **no** `msd-core/src/` or `sdk/src/` TypeScript tree. There is
**no** TS→CJS transpilation pipeline. There is **no**
`tests/cjs-ts-parity.test.cjs`. The only parity test is
`tests/package-identity.test.cjs`, scoped to the one baked file: it
@@ -50,8 +50,8 @@ This distinction is the crux of the decision, and the earlier draft erased it:
- **Value baking (exists, forced).** `package-identity.cjs` must be generated
because the *installed* tree carries no `package.json` with a `.name`. The
only ones GSD stages are synthetic `{"type":"commonjs"}` markers — and since
#2544 those sit inside the directories GSD owns (`hooks/`, and the native
only ones MSD stages are synthetic `{"type":"commonjs"}` markers — and since
#2544 those sit inside the directories MSD owns (`hooks/`, and the native
plugin dir), not at the runtime config root — so a runtime
`require('package.json').name` is `undefined` where it resolves at all, and
a `MODULE_NOT_FOUND` where it does not (bug #378; see also the Codex case in
@@ -93,7 +93,7 @@ build artifact?** Three models:
2. **Build at publish (recommended).** `bin/lib/*.cjs` becomes a gitignored
build artifact emitted from a TS `src/` tree by `tsc`; npm publishes the
built output. **Feasible today:** `package.json` already ships `gsd-core`
built output. **Feasible today:** `package.json` already ships `msd-core`
and `scripts` via its `files` array, and already runs a pre-publish build
step (`"prepublishOnly": "npm run build:hooks"`) — the `.cjs` emit hooks into
the same step, and `npm pack` includes on-disk artifacts regardless of
@@ -170,7 +170,7 @@ build artifact?** Three models:
- ESLint harness prerequisite (**accepted**): `452-eslint-lint-harness.md`
- Test-rigor policies (**accepted**): `456-test-rigor-architecture.md`
- Single-runtime collapse (**accepted**): `0174-retire-gsd-sdk-package-boundary.md`
- Single-runtime collapse (**accepted**): `0174-retire-msd-sdk-package-boundary.md`
- Superseded shared-module seam: `3524-cjs-sdk-hard-seam.md`
- Tracking issue: [#457](https://github.com/open-gsd/gsd-core/issues/457)
- Value-baking precedent (distinct technique): `scripts/generate-package-identity.cjs`,