ci(release): treat breaking changes as a major release

Custom releaseRules short-circuit semantic-release's default rules, so a
feat carrying a BREAKING CHANGE footer resolved to minor. v2.11.0 should
have been v3.0.0.
This commit is contained in:
neon
2026-09-21 07:18:29 +00:00
parent 67ef7f29a5
commit 6be648b48a
+5
View File
@@ -198,6 +198,11 @@ module.exports = {
{
preset: "conventionalcommits",
releaseRules: [
// Must stay first: custom rules short-circuit the analyzer, and the
// default `{ breaking: true }` rule is only consulted when no custom
// rule matched. Without this, a `feat` carrying a BREAKING CHANGE
// footer releases as a minor.
{ breaking: true, release: "major" },
{ type: "feat", release: "minor" },
{ type: "fix", release: "patch" },
{ type: "i18n", release: "patch" },