Fix workflow issues - #139
swethasukumarr wants to merge 2 commits into
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
Skipping the promotion commit-delta check can cause the workflow to create a stable tag on the wrong commit (because tagging later uses the current HEAD).
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR modifies the GitHub Actions release workflow to change how “promotion” releases (promoting an RC tag to a stable tag) are validated before tagging and publishing a release.
Changes:
- Removes the promotion-time check that required the workflow’s checked-out
HEADto match the RC tag commit. - Updates the promotion log message to reflect the skipped validation.
File summaries
| File | Description |
|---|---|
| .github/workflows/release.yml | Adjusts validation logic for RC→stable promotions in the release workflow. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
🔵 Needs a closer look
The new promotion validation allows stable tags to be created from a different (descendant) commit than the RC being “promoted,” which can produce an unintended release.
Review details
Suppressed comments (1)
.github/workflows/release.yml:126
- In promotion mode, this now only checks that BASELINE is an ancestor of HEAD, but the workflow later creates the stable tag at the current HEAD (
git tag -a "${TAG}" ...), not at${BASELINE}. That means you can accidentally "promote" an RC tag while producing a stable release from a different (descendant) commit, so stable may not match the RC being promoted. If the intent is to promote the exact RC commit, keep the strict commit-equality check (using^{commit}to peel annotated tags).
if ! git merge-base --is-ancestor "${BASELINE}" HEAD; then
echo "ERROR: ${BASELINE} is not an ancestor of HEAD; select a descendant commit from this branch before promoting to stable."
exit 1
fi
echo "Promoting ${BASELINE} to stable release; current HEAD is a descendant."
- Files reviewed: 1/1 changed files
- Comments generated: 0 new
- Review effort level: Lite
No description provided.