Skip to content

Commit 7933f7d

Browse files
committed
docs: add release checklist to .cursorrules, CONTRIBUTING.md, CLAUDE.md, and ROADMAP.md
Ensures every version bump has a consistent process: implementation, version sync across 8 files, docs/GH Pages updates, test re-run, tag, release, and repo description update. Made-with: Cursor
1 parent 2a7e9df commit 7933f7d

File tree

4 files changed

+100
-0
lines changed

4 files changed

+100
-0
lines changed

.cursorrules

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,30 @@
1818
- Use `execDocker()` from `utils/docker-api.ts` for all Docker CLI calls.
1919
- Always check for Docker availability before executing commands.
2020

21+
## Release checklist
22+
Before finalizing any version bump, complete every item in order:
23+
1. Implement all MCP tools, skills, and rules listed for the milestone in ROADMAP.md.
24+
2. Add input validation tests for every new MCP tool in `input-validation.test.ts`.
25+
3. Build the MCP server (`npm run build`) and confirm zero compiler errors.
26+
4. Run all tests: `cd mcp-server && npm test` (Vitest) and `pytest tests/ -v --tb=short` (structure).
27+
5. Bump version in ALL of these files (must be consistent):
28+
- `.cursor-plugin/plugin.json` (version + description tool count)
29+
- `mcp-server/package.json` (version + description)
30+
- `mcp-server/src/index.ts` (McpServer version string)
31+
- `README.md` (version badge, tool count in tagline, tools table)
32+
- `CLAUDE.md` (version, tool count, tool table, CLI quick reference)
33+
- `ROADMAP.md` (mark new version as current, previous as Released, update Completed list)
34+
6. Add a new section to `CHANGELOG.md` with all Added/Changed/Fixed items.
35+
7. Update `docs/index.html` (GitHub Pages site):
36+
- Meta description and og:description tool counts
37+
- Hero version pill
38+
- Stats counter data-target for MCP Tools
39+
- Tools table (add new tool rows)
40+
- Roadmap timeline (mark current, add/shift planned items)
41+
8. Re-run all tests after doc changes (some tests validate docs consistency).
42+
9. Commit, push, tag (`vX.Y.Z`), and `gh release create` with release notes.
43+
10. Update repo description: `gh repo edit --description "..."` with new tool count.
44+
2145
## Docker conventions
2246
- Default to Alpine or slim base images when suggesting Dockerfiles.
2347
- Always suggest multi-stage builds for production images.

CLAUDE.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,25 @@ pip install -r requirements-test.txt
132132
pytest tests/ -v --tb=short
133133
```
134134

135+
## Release Checklist
136+
137+
When bumping a version, update ALL of these (they must stay in sync):
138+
139+
| File | What to update |
140+
|------|---------------|
141+
| `.cursor-plugin/plugin.json` | `version`, tool count in `description` |
142+
| `mcp-server/package.json` | `version`, `description` |
143+
| `mcp-server/src/index.ts` | `version` in `McpServer` constructor |
144+
| `README.md` | Version badge, tagline tool count, tools table |
145+
| `CLAUDE.md` | Version, tool count, tool tables, CLI quick reference |
146+
| `CHANGELOG.md` | New version section with Added/Changed/Fixed |
147+
| `ROADMAP.md` | Mark new version `(current)`, previous `Released`, update Completed |
148+
| `docs/index.html` | Meta tags, hero pill, stats counter, tools table, roadmap timeline |
149+
150+
After all updates: re-run tests (some validate doc consistency), commit, tag, push, create GitHub release, update repo description.
151+
152+
Full checklist with copy-paste commands: [CONTRIBUTING.md - Release Checklist](CONTRIBUTING.md#release-checklist)
153+
135154
## Key Conventions
136155

137156
- **No em dashes.** Use regular dashes (-) or rewrite the sentence.

CONTRIBUTING.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,50 @@ export function register(server: McpServer): void {
229229
3. Fill out the PR template completely
230230
4. One approval required for merge
231231

232+
## Release Checklist
233+
234+
When cutting a new version, complete every step in order before merging to `main`:
235+
236+
### 1. Implementation
237+
238+
- [ ] All MCP tools, skills, and rules listed for the milestone in `ROADMAP.md` are implemented
239+
- [ ] Input validation tests added for every new MCP tool (`input-validation.test.ts`)
240+
- [ ] MCP server builds cleanly (`cd mcp-server && npm run build`)
241+
- [ ] All Vitest tests pass (`cd mcp-server && npm test`)
242+
- [ ] All pytest structure tests pass (`pytest tests/ -v --tb=short`)
243+
244+
### 2. Version bump (must be consistent across all files)
245+
246+
- [ ] `.cursor-plugin/plugin.json` - `version` field and tool count in `description`
247+
- [ ] `mcp-server/package.json` - `version` field and `description`
248+
- [ ] `mcp-server/src/index.ts` - `version` in `McpServer` constructor
249+
- [ ] `README.md` - version badge, tool count in tagline, tools table rows
250+
- [ ] `CLAUDE.md` - version, tool count, tool tables, CLI quick reference table
251+
- [ ] `ROADMAP.md` - mark new version `(current)`, previous version `Released`, update Completed list
252+
253+
### 3. Documentation
254+
255+
- [ ] `CHANGELOG.md` - new version section with all Added/Changed/Fixed items and comparison link
256+
- [ ] `docs/index.html` (GitHub Pages):
257+
- Meta description and `og:description` tool counts
258+
- Hero version pill
259+
- Stats counter `data-target` for MCP Tools
260+
- Tools table (add rows for new tools)
261+
- Roadmap timeline (shift current marker, update planned items)
262+
263+
### 4. Final validation
264+
265+
- [ ] Re-run all tests after doc changes (some tests check docs consistency)
266+
- [ ] Verify `docs/index.html` renders correctly in a browser
267+
268+
### 5. Ship
269+
270+
- [ ] Commit and push to `main`
271+
- [ ] Create annotated tag: `git tag vX.Y.Z`
272+
- [ ] Push tag: `git push origin vX.Y.Z`
273+
- [ ] Create GitHub release: `gh release create vX.Y.Z --title "vX.Y.Z - Theme" --notes "..."`
274+
- [ ] Update repo description: `gh repo edit --description "...new tool count..."`
275+
232276
## Style Guidelines
233277

234278
- **No em dashes.** Use regular dashes (-) or rewrite the sentence.

ROADMAP.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,19 @@ All destructive MCP tools (`rm`, `rmi`, `prune`, `kill`, `down`) will:
230230

231231
---
232232

233+
## Release Process
234+
235+
Every release follows the checklist in [CONTRIBUTING.md](CONTRIBUTING.md#release-checklist). The short version:
236+
237+
1. Implement all tools/skills/rules for the milestone
238+
2. Add tests, build, verify all tests pass
239+
3. Bump version consistently across `plugin.json`, `package.json`, `index.ts`, `README.md`, `CLAUDE.md`, and this file
240+
4. Update `CHANGELOG.md` and `docs/index.html` (GitHub Pages)
241+
5. Re-run tests (some validate doc consistency)
242+
6. Commit, tag, push, create GitHub release, update repo description
243+
244+
---
245+
233246
## Contributing
234247

235248
Have an idea for a new skill, rule, or MCP tool? Check the [Contributing Guide](CONTRIBUTING.md) and open an issue or pull request.

0 commit comments

Comments
 (0)