Skip to content

fix(release): only fix/feat/perf commits can cut a release - #58

Merged
BrainerVirus merged 1 commit into
mainfrom
fix/release-loop-chore-gate
Sep 2, 2026
Merged

fix(release): only fix/feat/perf commits can cut a release#58
BrainerVirus merged 1 commit into
mainfrom
fix/release-loop-chore-gate

Conversation

@BrainerVirus

Copy link
Copy Markdown
Owner

Stop the infinite release loop

The chore(scope) gating made the post-release chore(release): sync manifests to v0.X merge releasable (it touches package.json + manifest.json), so every release spawned the next sync → release → sync → ... loop (0.7.5 → 0.7.36+ and climbing, one npm publish every ~1.5 min).

Change

scripts/analyze-release-scope.ts: subject matching is again fix/feat/perf onlychore (with or without a scope) never cuts a release. This matches the workflow-toolkit convention and keeps:

  • manifest-sync chore(release) merges → no release (breaks the loop)
  • catalog-sync chore(catalog) merges → no release until they carry a real fix(catalog) commit
  • real product changes (fix/feat) → release as before

Test

analyze-release-scope.test.ts asserts chore(catalog) + chore(release) commits touching product files yield { level: null }.

@BrainerVirus
BrainerVirus force-pushed the fix/release-loop-chore-gate branch from 5e30d99 to 94d4d67 Compare September 2, 2026 13:31
@BrainerVirus
BrainerVirus enabled auto-merge (squash) September 2, 2026 13:33
@BrainerVirus
BrainerVirus force-pushed the fix/release-loop-chore-gate branch from 94d4d67 to 45f9ada Compare September 2, 2026 13:38
The chore(scope) release gating added for catalog syncs made the post-release 'chore(release): sync manifests' merge releasable (it touches package.json/manifest.json), so every release spawned the next one in an infinite loop (0.7.5..0.7.36+). Restore fix/feat/perf-only subject matching: manifest-sync and catalog-sync chore commits are bookkeeping and never release.
@BrainerVirus
BrainerVirus force-pushed the fix/release-loop-chore-gate branch from 45f9ada to 0a6d095 Compare September 2, 2026 13:40
@BrainerVirus
BrainerVirus merged commit 4bd75b0 into main Sep 2, 2026
5 checks passed
@BrainerVirus
BrainerVirus deleted the fix/release-loop-chore-gate branch September 2, 2026 13:40
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 0.7.47 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant