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

@@ -37,7 +37,7 @@ would shrink the spine:
4. **Security and prompt-injection language** — any text establishing a security boundary or
defending against injected instructions.
5. **Machine-parsed structural headings** — a heading or marker another tool locates by exact
text (a `## PLANNING COMPLETE`-style return marker, a `<!-- gsd:section -->` directive, a
text (a `## PLANNING COMPLETE`-style return marker, a `<!-- msd:section -->` directive, a
`<process>`/`</process>` boundary).
### Marking
@@ -47,12 +47,12 @@ sentinel-wrapped content's continued presence in the spine, never for category m
a guard cannot judge prose category on its own, so protection is declared, not inferred:
```markdown
<!-- gsd:protected -->
<!-- msd:protected -->
… one protected block …
<!-- gsd:protected:start -->
<!-- msd:protected:start -->
… a protected region spanning several blocks …
<!-- gsd:protected:end -->
<!-- msd:protected:end -->
```
The categories above are authoring guidance for *where* to place a sentinel when splitting a
@@ -61,8 +61,8 @@ continued presence in the spine is.
## The five checks
The guard discovers registered splits by scanning `gsd-core/workflows/**` for any
`<name>/detail/*.md` path and pairing it with `gsd-core/workflows/<name>.md`. There is no
The guard discovers registered splits by scanning `msd-core/workflows/**` for any
`<name>/detail/*.md` path and pairing it with `msd-core/workflows/<name>.md`. There is no
separate registry to maintain — a pair is registered by existing on disk.
1. **Completeness — once, at split time.** Fires only on the PR that introduces a new
@@ -76,7 +76,7 @@ separate registry to maintain — a pair is registered by existing on disk.
3. **Registration — ongoing.** A `<name>/detail/*.md` with no `<name>.md` spine, or a spine
whose prose names a detail path that does not exist on disk, fails and names the orphan.
4. **Protected content — ongoing, and cannot be excused.** For every registered spine a PR's
diff touches, every line that sat inside a `<!-- gsd:protected -->` sentinel at the
diff touches, every line that sat inside a `<!-- msd:protected -->` sentinel at the
merge-base must still be physically present in the spine. Deleting it or moving it into a
detail part both fail — naming the sentinel's first line and, for a move, the destination
path. **No `Boundary-Move-Declared` trailer excuses this one**: protected content is
@@ -88,7 +88,7 @@ separate registry to maintain — a pair is registered by existing on disk.
(`merge-base..HEAD`) must carry:
```
Boundary-Move-Declared: gsd-core/workflows/<name>.md — <why this moved>
Boundary-Move-Declared: msd-core/workflows/<name>.md — <why this moved>
```
A missing trailer fails and names the spine and the moved line. This mirrors