Release checklist
How-to Steps for one specific job. Assumes you already know the basics.
🌍 Language pair / Par de idioma
Section titled “🌍 Language pair / Par de idioma”- English: 09-release-checklist.md
- Español: ../es/09-release-checklist.md
[!TIP] For startup instructions and prompts, use:
🗣️ Friendly prompt (copy/paste)
Section titled “🗣️ Friendly prompt (copy/paste)”Using https://github.com/juanklagos/spec-driven-development-template, run a release-readiness review on my project.My project is: [describe project].Check this list, tell me what is missing, and propose exact next actions in simple language.What this list is for
Section titled “What this list is for”This is the list to run before publishing a version, every time. Run the commands from the repository’s main folder.
There were two other lists — 39 and 46 — written for specific releases that already shipped. They are kept as a historical record and are not followed.
1. The gate first
Section titled “1. The gate first”No release without a green gate, the same way there is no code without a spec.
./scripts/check-sdd-gate.sh- The gate passes: 0 errors.
- Every spec touched in this cycle is approved and its plan is consistent.
- Decisions taken are recorded in
bitacora/decisiones/.
2. Code
Section titled “2. Code”npm run typecheck && npm run build && npm test-
npm run typecheckpasses. -
npm run buildpasses. -
npm testpasses — unit tests plus the MCP integration test.
3. The MCP server actually answers
Section titled “3. The MCP server actually answers”The three smoke tests start the server and talk to it; they do not read the code, they run it.
npm run mcp:smoke && npm run mcp:http:smoke && npm run mcp:pack:smoke-
mcp:smokepasses — stdio transport. -
mcp:http:smokepasses — Streamable HTTP. -
mcp:pack:smokepasses — the important one before publishing: it packs the tarball exactly as it would go to npm and runs it. This is the test that caught an exact internal pin making npm download the already publishedsdd-coreinstead of the one inside the tarball.
4. Documentation
Section titled “4. Documentation”npm run docs:types && npm run docs:links && npm run docs:contrast-
docs:typesleaves no uncommitted changes — each guide’s type header comes fromsite/src/guides.mjs, so the two cannot disagree. -
docs:linkspasses on all three surfaces:docs/, the npm payload and the built site. -
docs:contrastpasses — no colour pair below WCAG AA. - No statement about the interface describes something that no longer exists.
- English and Spanish say the same thing.
5. Versions aligned
Section titled “5. Versions aligned”The four packages and server.json carry a single number, the repository
release (guide 37).
-
packages/sdd-core,packages/sdd-mcp,packages/create-sdd-projectand the root package match. -
packages/sdd-mcp/server.jsonmatches them. - The
sdd-mcppin onsdd-coredid not fall behind.
You do not check this by eye: release-integrity.test.ts does, inside
npm test. When it fails it names the exact file to fix.
6. Publish
Section titled “6. Publish”-
CHANGELOG.mdhas this version’s entry, saying what changed and not just the numbers. - The git tag, the package versions and the changelog agree.
- The copy/paste MCP configurations in the docs match this version.
First time only
Section titled “First time only”These are from the repository’s initial publication, already done. They stay here because they serve anyone starting their own project from this template:
-
LICENSE,CONTRIBUTING.mdandCODE_OF_CONDUCT.mdpresent. - Issue and pull request templates in
.github/. - Repository description and topics set on GitHub.
-
idea/,specs/andbitacora/with their templates, and at least one complete sample spec.