# Martin MCP Release Checklist

Use this checklist before calling a Martin MCP release ready.

## Source of Truth

- confirm `packages/mcp` is the public release source of truth
- confirm the candidate checkout contains only the intended public release files

## Metadata

- `packages/mcp/package.json` version matches `packages/mcp/server.json`
- the matching `docs/release/MCP-X.Y.Z-RELEASE-NOTES.md` exists
- the matching `docs/release/MCP-X.Y.Z-RELEASE-PACKET.md` exists
- `docs/release/VERSION-LEDGER.md` matches live npm, public GitHub `main`, and the current repo package manifests

## Docs

- `packages/mcp/README.md` matches the shipped MCP surface
- `docs/oss/MCP-FOR-AI-AGENTS.md` matches the shipped MCP surface
- `docs/oss/QUICKSTART.md` matches the shipped MCP surface
- `docs/release/MCP-PUBLISHING.md` keeps pre-publish and post-publish smoke gates separate

## Verification

- `pnpm --filter @martinloop/mcp lint`
- `pnpm --filter @martinloop/mcp test`
- `pnpm --filter @martinloop/mcp build`
- `pnpm --filter @martinloop/mcp smoke:pack`
- `pnpm --filter @martinloop/mcp smoke:published:pack`
- `pnpm --filter @martinloop/mcp verify:release`

## Source Sync

- keep the release branch limited to the intended MCP package files and docs
- rebuild artifacts only after a clean local build so stale packaged version labels do not survive
- refresh MCP-facing docs after the release-doc tests pass
- keep planning notes and non-package operational docs out of the public release branch

## Release Proof

- the exact release commit has CI proof on Windows, Linux, and macOS
- doc and version parity checks pass in CI on that exact pushed release commit
