releaselisted
Install: claude install-skill jgravelle/jdocmunch-mcp
# Release & PR Workflow
## ⚠⚠ READ FIRST — this file is jcodemunch-mcp's copy, kept VERBATIM
It was copied here 2026-09-01 because **jdoc had no copy at all** and a release
was attempted without it. `.claude/skills/` is gitignored in jcm, so the skill
is MACHINE-LOCAL and vanishes on any other box — which is what CLAUDE.md's
"Release: the two steps that are only written down here" section exists to
survive. **Kept verbatim on purpose:** two copies that drift silently are worse
than one copy plus an explicit delta list. Everything below is jcm's text; the
deltas that apply HERE are:
| | jcodemunch-mcp | **jdocmunch-mcp (this repo)** |
|---|---|---|
| Default branch | `main` | **`master`** |
| Pin sites | 5 (incl. `whatsnew.json`) | **4 tracked**: `pyproject.toml`, `server.json` (version + `packages[].version`), `.claude-plugin/plugin.json`. `whatsnew.json` does not exist here |
| `uv.lock` | tracked, `--locked` works | **GITIGNORED** — `--locked` FAILS. Never pass it |
| `[watch]` extra | exists | **does not exist** — `--extra watch` fails |
| Step 2c command | `uv sync --locked --group dev --extra watch --python 3.13` | **`uv sync --group dev --python 3.13`** then `uv run --python 3.13 pytest tests/ -q` |
| Skip count | 19–26 | **11** under the CI-equivalent sync (6 locally with `PYTHONPATH=src`) |
| `mcpb/manifest.json` | generated, gitignored | same — generated, do not edit |
⚠⚠ **Step 2c's command is BOUND**: `tests/test_brief_bindings.py` ties it to
`.github/workflows