diff --git a/lib/release.sh b/lib/release.sh index cad1fe1..a570b34 100644 --- a/lib/release.sh +++ b/lib/release.sh @@ -84,12 +84,10 @@ _parse_conventional_commits() { done < <(git -C "$project_dir" log "$log_target" --format='%B%x00' 2>/dev/null) IFS="$IFS_SAVE" - # Patch floor: any non-[skip release] merge that has commits cuts AT LEAST a - # patch, so docs/chore/refactor/etc. merges still release (keeps "merge = - # release"). The empty-range and [skip release] cases already returned "none". - if [[ "$bump" == "none" ]]; then - bump="patch" - fi + # No patch floor: docs/chore/refactor/test/ci/style/perf-only ranges yield + # "none" (no release), matching conventional-commit rules and the documented + # release process. Only feat/fix/breaking cut a release. To force a release for + # an otherwise-non-releasable range, dispatch release.yml with bump_override. # Output echo "$bump" diff --git a/tests/unit/release.bats b/tests/unit/release.bats index e7f04a3..224b999 100644 --- a/tests/unit/release.bats +++ b/tests/unit/release.bats @@ -161,7 +161,7 @@ PJ MJ cat > "$proj/devflow-plugin/commands/test-cmd.md" <<'CMD' --- -description: "[devflow v0.1.0] Test command" +description: [0.1.0] Test command --- CMD @@ -177,7 +177,7 @@ CMD assert_success run grep '"version": "0.2.0"' "$proj/devflow-plugin/.claude-plugin/marketplace.json" assert_success - run grep '\[devflow v0.2.0\]' "$proj/devflow-plugin/commands/test-cmd.md" + run grep '\[0.2.0\]' "$proj/devflow-plugin/commands/test-cmd.md" assert_success }