CI: a hotfix/* branch push publishes a GA release with no tag or review gate #12

Open
opened 2026-10-13 01:09:03 +00:00 by KofTwentyTwo · 0 comments
KofTwentyTwo commented 2026-10-13 01:09:03 +00:00 (Migrated from github.com)

Problem

.circleci/config.yml runs publish_hotfix_release (qqq-orb/mvn_publish, branch_type: hotfix) on any push to a hotfix/* branch. The orb then bumps the patch version and publishes a GA release to Maven Central, with no tag, no review and no merge gate.

Evidence

On 2026-10-13, a push to hotfix/tag-rule-pvs-table (commit 26e62f3) published com.kingsrook.qbits:qbit-cdn:0.1.1 to Central (CircleCI 14). Only the "Create GitHub Release" step failed. The content happened to be correct, but nothing required it to be. A tag was added afterwards for provenance: https://github.com/QRun-IO/qbit-cdn/releases/tag/v0.1.1

Proposal

Hotfix publishing should require a tag, like GA:

  • either drop publish_hotfix_release and publish hotfixes only from a reviewed vX.Y.Z tag on the hotfix commit (the existing publish_release workflow, filter /^v\d+\.\d+\.\d+$/),
  • or keep a hotfix workflow but filter it on tags only, never on branch pushes.

hotfix/* branch pushes should run test_only only. The same change applies to every qbit that copied this config. The standard is tracked in QRun-IO/qqq docs/QRUN-QBIT-REPO-STANDARD.md.

🤖 Generated with Claude Code

## Problem `.circleci/config.yml` runs `publish_hotfix_release` (`qqq-orb/mvn_publish`, `branch_type: hotfix`) on **any push to a `hotfix/*` branch**. The orb then bumps the patch version and publishes a **GA release to Maven Central**, with no tag, no review and no merge gate. ## Evidence On 2026-10-13, a push to `hotfix/tag-rule-pvs-table` (commit `26e62f3`) published `com.kingsrook.qbits:qbit-cdn:0.1.1` to Central ([CircleCI 14](https://circleci.com/gh/QRun-IO/qbit-cdn/14)). Only the "Create GitHub Release" step failed. The content happened to be correct, but nothing required it to be. A tag was added afterwards for provenance: https://github.com/QRun-IO/qbit-cdn/releases/tag/v0.1.1 ## Proposal Hotfix publishing should require a tag, like GA: - either drop `publish_hotfix_release` and publish hotfixes only from a reviewed `vX.Y.Z` tag on the hotfix commit (the existing `publish_release` workflow, filter `/^v\d+\.\d+\.\d+$/`), - or keep a hotfix workflow but filter it on tags only, never on branch pushes. `hotfix/*` branch pushes should run `test_only` only. The same change applies to every qbit that copied this config. The standard is tracked in QRun-IO/qqq `docs/QRUN-QBIT-REPO-STANDARD.md`. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: QRun-IO/qbit-cdn#12