Skip to content

Commit 7235cd3

Browse files
committed
docs: clarify commit type β†’ release mapping
Add table showing which conventional commit types trigger npm releases to prevent accidental publishes from CI/tooling changes.
1 parent 823330c commit 7235cd3

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

β€ŽAGENTS.mdβ€Ž

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,21 @@ Commits must follow [Conventional Commits](https://www.conventionalcommits.org/)
3737
- Types: `feat`, `fix`, `chore`, `docs`, `refactor`, `test`, `ci`, `perf`, `style`, `build`, `revert`
3838
- Breaking changes: `!` after type/scope or `BREAKING CHANGE:` in footer
3939

40+
**Choosing the right type matters** β€” it controls whether semantic-release publishes to npm:
41+
42+
| Type | Release | When to use |
43+
|------|---------|-------------|
44+
| `fix` | patch | Bug fix **visible to package consumers** (runtime behaviour, CLI output, published types) |
45+
| `feat` | minor | New feature visible to consumers |
46+
| `fix!`/`feat!` | major | Breaking change to public API |
47+
| `ci` | none | CI/CD workflow changes (GitHub Actions, release config) |
48+
| `chore` | none | Tooling, deps, repo hygiene β€” anything not shipped to consumers |
49+
| `docs` | none | Documentation only |
50+
| `refactor` | none | Code restructuring with no behaviour change |
51+
| `test` | none | Adding or updating tests |
52+
53+
**Key rule**: `fix` means a consumer-facing bug fix that warrants an npm release. If the change only affects CI, dev tooling, or repo internals, use `ci` or `chore` instead β€” even if it "fixes" something.
54+
4055
## Module Layout
4156

4257
- `src/index.ts` β€” entry: waitForTerm then init overlay

0 commit comments

Comments
Β (0)