write-designlisted
Install: claude install-skill tonywo2049/GMGN
# Design stage: requirements → implementation decisions
<HARD-GATE>`Requirement.md` and the current approved Decision must exist. Requirement must have passed its owning-stage acceptance and Critic necessity gates. If either authority is missing or design work exposes changed upstream meaning, stop and return the issue to `gmgn` for routing instead of redefining it in Design.</HARD-GATE>
## Language, bundle, and authority
Before writing, load the registered `gmgn` Skill through normal discovery and follow its local
writing rules. Use the Requirement locale for artifact prose. Every Design-stage artifact
is normative.
`Design.md` always exists as the root Design authority and complete R/AC mapping entry. Add
architecture and module boundaries only when current R/ACs need them, and add a Bundle index
only when linked child artifacts exist. Add only the files current work needs:
```text
Design.md
design/
├── <module-id>.md
├── Contract.md
├── contracts/<contract-id>.md
└── schemas/<structural-authority>
```
- `design/<module-id>.md` owns one module's private design when size, specialization, or
parallel authoring makes a separate authority useful.
- `design/Contract.md` is required only when current work crosses an independently developed
module, task, team, process, or repository boundary. It owns the cross-unit interface index
and shared contract rules.
- Keep a small interface directly in `design/Contract.md`; split
`design/contracts/<contract-id>.md` only when