Skip to content

Commit 923daed

Browse files
GiggleLiuclaude
andcommitted
docs: add release skill to standardize version bumps
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 0567f17 commit 923daed

File tree

2 files changed

+42
-0
lines changed

2 files changed

+42
-0
lines changed

.claude/CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ Rust library for NP-hard problem reductions. Implements computational problems w
88
- [add-model](skills/add-model.md) -- Add a new problem model. Can be used standalone (brainstorms with user) or called from `issue-to-pr`.
99
- [add-rule](skills/add-rule.md) -- Add a new reduction rule. Can be used standalone (brainstorms with user) or called from `issue-to-pr`.
1010
- [review-implementation](skills/review-implementation.md) -- Review a model or rule implementation for completeness. Auto-detects type from changed files. Called automatically at the end of `add-model`/`add-rule`, or standalone via `/review-implementation`.
11+
- [release](skills/release.md) -- Create a new crate release. Determines version bump from diff, verifies tests/clippy, then runs `make release`.
1112

1213
## Commands
1314
```bash

.claude/skills/release.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
name: release
3+
description: Use when preparing a new crate release, bumping versions, or tagging a release
4+
---
5+
6+
# Release
7+
8+
Guide for creating a new release of problemreductions.
9+
10+
## Step 1: Determine Version Bump
11+
12+
Compare against the last release tag:
13+
14+
```bash
15+
git tag -l 'v0.*' | sort -V # find latest tag
16+
git log <last-tag>..HEAD --oneline # review commits
17+
git diff <last-tag>..HEAD --stat # review scope
18+
```
19+
20+
Apply semver for 0.x (pre-1.0):
21+
- **Patch** (0.x.Y) — bug fixes, docs, CI only
22+
- **Minor** (0.X.0) — new features, new reductions, new public API
23+
- **Major** — reserved for post-1.0
24+
25+
## Step 2: Verify Clean State
26+
27+
```bash
28+
make test clippy
29+
```
30+
31+
Both must pass with zero warnings before proceeding.
32+
33+
## Step 3: Release
34+
35+
```bash
36+
make release V=x.y.z
37+
```
38+
39+
This target bumps versions in `Cargo.toml` and `problemreductions-macros/Cargo.toml`, runs `cargo check`, commits, tags, and pushes. CI publishes to crates.io.
40+
41+
**Note:** `problemreductions-cli` has its own independent version and is not published to crates.io.

0 commit comments

Comments
 (0)