feat: add update-changelog project skill

This commit is contained in:
Aaron Wood 2026-04-11 16:46:26 -04:00
parent 4ef981e456
commit 45bdb39765

View file

@ -0,0 +1,54 @@
# update-changelog
Use this skill when a feature has shipped, a bug has been fixed, or a feature has been removed. It updates CHANGELOG.md with a new versioned entry.
## Process
1. Read `CHANGELOG.md` — find the current latest version number (top `## [x.y.z]` entry)
2. Check recent git history for context on what changed:
```bash
git log --oneline -20
```
3. Read `docs/ROADMAP.md` — check what moved to Completed since the last changelog entry
4. Determine the version bump:
- **Patch** (0.1.x → 0.1.x+1): bug fixes, minor UI polish, no new user-facing features
- **Minor** (0.x.0 → 0.x+1.0): new features or meaningful enhancements
- **Major** (x.0.0 → x+1.0.0): breaking changes or significant redesigns (rare)
5. Write a new entry **above** the previous version, using today's date and the bumped version:
```markdown
## [0.2.0] - YYYY-MM-DD
### Added
- Feature name — brief description of what it does for users
### Changed
- What changed and why
### Fixed
- Bug description — what was wrong and what's right now
### Removed
- What was removed and why
```
Only include sections that apply. Skip empty sections.
6. Update `docs/HANDBOOK.md` if the change affects feature descriptions or known limitations (use the `update-handbook` skill or do it inline).
7. Commit:
```bash
git add CHANGELOG.md
git commit -m "chore: changelog v0.x.y"
```
## Versioning rules
- Write entries for users, not developers ("Added initiative tracker" not "Added registerInitiativeHandlers to socket.ts")
- One entry per version bump — don't create multiple entries for the same version
- The `[Unreleased]` section at the top is for changes not yet assigned a version; move them down when cutting a release
- Keep descriptions brief but specific — "Fixed HP leak exposing enemy stats to players" beats "Fixed bug"