Skip to content

chore: update GitHub Actions to latest versions, add commit linting, and configure native GitHub changelog generation#413

Closed
SuperCoolPencil wants to merge 2 commits into
mainfrom
better-release-notes
Closed

chore: update GitHub Actions to latest versions, add commit linting, and configure native GitHub changelog generation#413
SuperCoolPencil wants to merge 2 commits into
mainfrom
better-release-notes

Conversation

@SuperCoolPencil
Copy link
Copy Markdown
Member

@SuperCoolPencil SuperCoolPencil commented Apr 24, 2026

Greptile Summary

This PR bumps all GitHub Actions to their latest major versions across 8 workflow files, introduces a new conventional-commits linting workflow, and switches changelog generation to GitHub's native system (backed by a new .github/release.yml label-based config and goreleaser's use: github-native).

  • P1 — extension.yml: actions/upload-artifact@v7 (build job) and actions/download-artifact@v8 (release job) are on different major versions; they share an artifact format contract that may break across majors, causing the ext-v* release job to fail when downloading artifacts.

Confidence Score: 4/5

Safe to merge after fixing the upload/download-artifact version mismatch, which would silently break extension releases.

One P1 finding: the upload-artifact@v7 / download-artifact@v8 mismatch in the connected build→release jobs in extension.yml will cause the release pipeline to fail on ext-v* tag pushes. All other changes are straightforward action version bumps that look correct.

.github/workflows/extension.yml — verify upload-artifact and download-artifact are on the same major version.

Important Files Changed

Filename Overview
.github/workflows/extension.yml Bumps checkout, setup-node, upload-artifact, download-artifact, and softprops action versions; upload-artifact@v7 / download-artifact@v8 version mismatch may break release job artifact retrieval.
.github/workflows/commit-lint.yml New workflow enforcing conventional commits on PRs and pushes to main using webiny/action-conventional-commits@v1.3.1; looks correct.
.github/release.yml New GitHub-native changelog config categorising PRs by label with a catch-all "Internal Changes" bucket; looks correct.
.goreleaser.yaml Switches goreleaser changelog to github-native, delegates to .github/release.yml; consistent with new release config.
.github/workflows/build-push-images.yml Bumps checkout, docker/login-action, docker/metadata-action, and docker/build-push-action to latest major versions; straightforward update.
.github/workflows/core-binary-size-compare.yml Bumps checkout, setup-go, and upload-artifact; no download-artifact counterpart in this file so no version mismatch concern.
.github/workflows/core-build.yml Bumps checkout, setup-go, upload-artifact, and goreleaser-action to latest major versions; consistent updates.
.github/workflows/core-lint.yml Bumps checkout and setup-go; straightforward update.
.github/workflows/extension-checks.yml Bumps checkout and setup-node across three jobs; straightforward update.
.github/workflows/integration.yml Bumps checkout, setup-go, and setup-node; straightforward update.
Prompt To Fix All With AI
This is a comment left during a code review.
Path: .github/workflows/extension.yml
Line: 57-81

Comment:
**upload-artifact/download-artifact major-version mismatch**

The `build` job uploads with `actions/upload-artifact@v7` while the `release` job downloads with `actions/download-artifact@v8`. These two actions use a shared internal artifact format, and different major versions are not guaranteed to be cross-compatible — a v7-produced artifact may not be correctly read by the v8 client, causing the release job to fail silently or error out on `ext-v*` tag pushes.

Both actions should be pinned to the same major version. Either downgrade the download to `@v7` or upgrade the upload to `@v8`.

```suggestion
        uses: actions/upload-artifact@v8
```

How can I resolve this? If you propose a fix, please make it concise.

Reviews (1): Last reviewed commit: "Potential fix for pull request finding '..." | Re-trigger Greptile

Greptile also left 1 inline comment on this PR.

…and configure native GitHub changelog generation
Comment thread .github/workflows/commit-lint.yml Fixed
…ntain permissions'

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Comment on lines 57 to +81
@@ -76,15 +76,15 @@ jobs:
if: startsWith(github.ref, 'refs/tags/ext-v')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Download all artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
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.

P1 upload-artifact/download-artifact major-version mismatch

The build job uploads with actions/upload-artifact@v7 while the release job downloads with actions/download-artifact@v8. These two actions use a shared internal artifact format, and different major versions are not guaranteed to be cross-compatible — a v7-produced artifact may not be correctly read by the v8 client, causing the release job to fail silently or error out on ext-v* tag pushes.

Both actions should be pinned to the same major version. Either downgrade the download to @v7 or upgrade the upload to @v8.

Suggested change
uses: actions/upload-artifact@v8
Prompt To Fix With AI
This is a comment left during a code review.
Path: .github/workflows/extension.yml
Line: 57-81

Comment:
**upload-artifact/download-artifact major-version mismatch**

The `build` job uploads with `actions/upload-artifact@v7` while the `release` job downloads with `actions/download-artifact@v8`. These two actions use a shared internal artifact format, and different major versions are not guaranteed to be cross-compatible — a v7-produced artifact may not be correctly read by the v8 client, causing the release job to fail silently or error out on `ext-v*` tag pushes.

Both actions should be pinned to the same major version. Either downgrade the download to `@v7` or upgrade the upload to `@v8`.

```suggestion
        uses: actions/upload-artifact@v8
```

How can I resolve this? If you propose a fix, please make it concise.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants