-
Notifications
You must be signed in to change notification settings - Fork 125
Description
Bug Description
The release-please job in .github/workflows/main.yml includes a commit-message guard that skips execution when the head commit starts with chore(main): release:
if: "${{ github.event_name != 'push' || !startsWith(github.event.head_commit.message, 'chore(main): release') }}"When a release PR (e.g. chore(main): release v2.2.0) is merged to main, this guard skips the entire release-please job. That prevents release-please from running createReleases(), which is responsible for creating the Git tag and GitHub release.
On the next non-release commit, release-please runs again but internally calls createPullRequests() before createReleases(). The new release PR is generated before the missing tag is created, so it falls back to the previous tag boundary and accumulates all commits since the last successful tag.
Impact
- Tags and GitHub releases are not created at merge time — they are deferred until the next non-release push
- The next release PR includes the full commit history since the last tagged release instead of only new changes
Root Cause
The guard was originally added to prevent a "spurious PR" issue where release-please-generated merge commits would re-trigger the release workflow. Release-please v4 handles chore type commits correctly — they are not releasable and do not produce spurious release PRs. The guard is no longer needed.
Fix
Delete the if line from the release-please job. Update documentation in docs/architecture/workflows.md that references the guard.
Validation
Validated in Azure-Samples/azure-nvidia-robotics-reference-architecture — PR #175 / issue #174.
Files to Change
.github/workflows/main.yml— remove theifguard (line 67)docs/architecture/workflows.md— remove guard documentation and table note