Skip to content

fix(ci): create GitHub release on the source tag, not main HEAD#13569

Open
ogabrielluiz wants to merge 1 commit into
mainfrom
fix/release-notes-wrong-tag
Open

fix(ci): create GitHub release on the source tag, not main HEAD#13569
ogabrielluiz wants to merge 1 commit into
mainfrom
fix/release-notes-wrong-tag

Conversation

@ogabrielluiz

@ogabrielluiz ogabrielluiz commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

The release notes for 1.10.0 only listed 2 PRs because the release got tagged on the wrong commit.

The create_release job tagged the release with determine-main-version.outputs.version, which strips the v prefix (line 260, sed 's/^v//'), and passed no commit. So ncipollo created a brand new bare tag 1.10.0 at the default branch (main) HEAD instead of using the validated source tag v1.10.0.

You can see it on the live release: 1.10.0 has tagName: 1.10.0, targetCommitish: main, and the bare tag resolves to main HEAD (e26dff2), while v1.10.0 points at the actual release commit. GitHub's generateReleaseNotes then compared the bare 1.10.0 against the previous bare tag 1.9.6, so the changelog only picked up the handful of PRs merged directly to main and missed everything that shipped through the release branch.

This is the same vless-duplicate-tag failure the validate-tag-format job already warns about, except the workflow itself was creating the duplicate tag.

Fix: tag the release on inputs.release_tag (already validated to be vX.Y.Z) and pin the commit to it. GitHub then generates the notes against v1.9.6 like it does for the rest of the 1.9.x line. create-release.yml already tags this way.

One manual follow-up this PR cannot do: the stray bare tags 1.9.6 and 1.10.0 are still on origin and could be picked as a comparison base on a future run. They should be deleted:

git push origin :refs/tags/1.9.6 :refs/tags/1.10.0

And the already-published 1.10.0 release needs to be re-created on v1.10.0 to get the correct notes.

The create_release job tagged the release with determine-main-version's
output, which strips the v prefix, and passed no commit. ncipollo then
created a bare vless tag (e.g. 1.10.0) at the default branch HEAD instead
of the validated source tag (v1.10.0). GitHub generateReleaseNotes
compared that bare tag against the previous bare tag, so the changelog
only captured PRs merged directly to main and missed everything that
shipped through the release branch.

Tag the release on inputs.release_tag and pin the commit to it. This is
the same vless-duplicate-tag failure the validate-tag-format job already
warns about.
@coderabbitai

coderabbitai Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Walkthrough

The release workflow configuration is updated to use the manually provided release_tag input for both the GitHub release tag and commit reference, replacing the previous behavior that computed the tag from the main package version output.

Changes

Release tag configuration

Layer / File(s) Summary
Release action tag configuration
.github/workflows/release.yml
The ncipollo/release-action step now uses inputs.release_tag for both tag and commit fields instead of computing the tag from needs.determine-main-version.outputs.version.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Suggested labels

bug

🚥 Pre-merge checks | ✅ 9
✅ Passed checks (9 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Test Coverage For New Implementations ✅ Passed PR modifies GitHub Actions workflow configuration, not application code. CI workflow changes do not require unit/regression tests; they are validated through workflow execution.
Test Quality And Coverage ✅ Passed PR modifies GitHub Actions workflow configuration (.github/workflows/release.yml), not application code. Workflow files are not unit tested; the workflow is validated through CI pipeline execution.
Test File Naming And Structure ✅ Passed The custom check for test file structure is not applicable to this PR; it modifies only .github/workflows/release.yml with no test files changed.
Excessive Mock Usage Warning ✅ Passed PR only modifies .github/workflows/release.yml (CI/CD config). No test files or mock usage involved—check not applicable to this workflow fix.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: fixing the CI workflow to create GitHub releases on the source tag (v1.10.0) instead of a bare tag at main HEAD (1.10.0), which directly addresses the root cause of the release notes issue.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/release-notes-wrong-tag

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added the bug Something isn't working label Jun 9, 2026
@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

✅ Test Coverage Advisor

No source changes detected without accompanying tests. Thanks for keeping coverage up! 🎉

Advisory check only — never blocks merge.

@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Jun 9, 2026
@codecov

codecov Bot commented Jun 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 53.33%. Comparing base (e26dff2) to head (d2e00df).

❌ Your project check has failed because the head coverage (50.14%) is below the target coverage (60.00%). You can increase the head coverage or adjust the target coverage.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main   #13569      +/-   ##
==========================================
- Coverage   53.34%   53.33%   -0.01%     
==========================================
  Files        2046     2046              
  Lines      184949   184949              
  Branches    27495    27495              
==========================================
- Hits        98652    98651       -1     
  Misses      85188    85188              
- Partials     1109     1110       +1     
Flag Coverage Δ
lfx 50.14% <ø> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Frontend Unit Test Coverage Report

Coverage Summary

Lines Statements Branches Functions
Coverage: 35%
35.55% (40803/114761) 68% (5619/8263) 36.11% (949/2628)

Unit Test Results

Tests Skipped Failures Errors Time
4020 0 💤 0 ❌ 0 🔥 8m 41s ⏱️

@ogabrielluiz ogabrielluiz changed the title fix(ci): create GitHub release on the source tag, not main HEAD fix(ci): generate release notes against an explicit, correct base tag Jun 9, 2026
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Jun 9, 2026
@ogabrielluiz ogabrielluiz requested a review from Copilot June 9, 2026 19:12
@ogabrielluiz ogabrielluiz requested a review from vjgit96 June 9, 2026 19:12
@ogabrielluiz ogabrielluiz force-pushed the fix/release-notes-wrong-tag branch from d2e00df to 79c3cb3 Compare June 9, 2026 19:15
@ogabrielluiz ogabrielluiz changed the title fix(ci): generate release notes against an explicit, correct base tag fix(ci): create GitHub release on the source tag, not main HEAD Jun 9, 2026
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Jun 9, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes the release workflow so GitHub release notes are generated against a deterministic, correct base tag and the release is created for the intended vX.Y.Z tag rather than an accidental “v-less” tag on main.

Changes:

  • Check out the repo at inputs.release_tag with full history so tags can be inspected reliably.
  • Determine the previous stable vX.Y.Z tag (excluding pre-releases) and use it as previous_tag_name when generating release notes via the GitHub generate-notes API.
  • Create/update the GitHub Release using the generated notes file and the explicit inputs.release_tag.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants