Skip to content

Commit 303f54f

Browse files
abrichrclaude
andauthored
fix(docs): require conventional commit format for PR titles (#32)
PR titles become squash merge commit messages. Without the fix:/feat: prefix, python-semantic-release skips the release. Document this requirement prominently in CLAUDE.md. Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent aeac459 commit 303f54f

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

CLAUDE.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,25 @@ Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
156156

157157
**Rules**: Imperative mood, no period, max 50 chars, lowercase after type
158158

159+
### PR Titles MUST Use Conventional Commit Format
160+
161+
PR titles become the squash merge commit message on main. `python-semantic-release` parses these to decide version bumps. **If the PR title doesn't follow the format, no release is created.**
162+
163+
```
164+
fix: short description → patch bump (0.0.x)
165+
feat: short description → minor bump (0.x.0)
166+
feat!: breaking change → major bump (x.0.0)
167+
```
168+
169+
**Examples**:
170+
- `fix: align PolicyAgent prompt with training format`
171+
- `feat: add Modal inference timeout config`
172+
173+
**Wrong** (will NOT trigger a release):
174+
- `Align PolicyAgent prompt with training format` (no `fix:` prefix)
175+
176+
When merging with `gh pr merge --squash`, GitHub uses the PR title as the commit message — so the title format is what matters.
177+
159178
---
160179

161180
## Don't Do

0 commit comments

Comments
 (0)