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.
1.2 KiB
1.2 KiB
Bracket phase-ID convention
The bracket convention is opt-in through phase_id_convention: "bracket".
Its compact grammar card below is generated from src/phase-id-card.cts; edit
that module, not this block.
[MSD.02] 05.03-01
│ │ │ │ │
│ │ │ │ └── plan 01
│ │ │ └────── subphase 03
│ │ └───────── phase 05
│ └───────────── milestone 02
└───────────────── project MSD
milestone = bracket integer; dots = phase-levels; one hyphen = plan; no 'Phase' word, no vX.Y
The display form is [PROJECT.MM] PP[.SS][-LL]: the bracket carries the
project and milestone, dots join phase levels, and the single hyphen introduces
the optional plan. A phase directory encodes the same identity without brackets:
PROJECT.MM-PP[.SS]-slug/.
Human-facing bracket surfaces omit both the literal Phase label and the
legacy vX.Y milestone marker. Repositories using the unset, sequential, or
milestone-prefixed conventions retain their existing display forms.