Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
dd14da1
ci(release): Switch from action-prepare-release to Craft
BYK Jan 9, 2026
ecdd181
ci(release): Restore GitHub App token authentication
BYK Jan 9, 2026
ebb437d
fix: Pin actions to SHA and add permissions blocks
BYK Jan 10, 2026
2c748c6
fix: Use correct action version SHAs (restore original versions)
BYK Jan 10, 2026
c38e477
fix: Clean up action version comments
BYK Jan 12, 2026
089968e
Update Craft SHA to 1c58bfd57bfd6a967b6f3fc92bead2c42ee698ce
BYK Jan 13, 2026
18d871a
Add explicit permissions block to agp-matrix.yml
BYK Jan 13, 2026
b718642
Add explicit permissions block to enforce-license-compliance.yml
BYK Jan 13, 2026
f9ae0d4
Add explicit permissions block to generate-javadocs.yml
BYK Jan 13, 2026
9bd2e27
Add explicit permissions block to integration-tests-benchmarks.yml
BYK Jan 13, 2026
8df8f2c
Add explicit permissions block to integration-tests-ui-critical.yml
BYK Jan 13, 2026
613fab0
Add explicit permissions block to integration-tests-ui.yml
BYK Jan 13, 2026
0955cf8
Revert permissions changes to agp-matrix.yml
BYK Jan 13, 2026
10d2b90
Revert permissions changes to enforce-license-compliance.yml
BYK Jan 13, 2026
a7846ce
Revert permissions changes to generate-javadocs.yml
BYK Jan 13, 2026
d4ad5d4
Revert permissions changes to integration-tests-benchmarks.yml
BYK Jan 13, 2026
dedf975
Revert permissions changes to integration-tests-ui-critical.yml
BYK Jan 13, 2026
240710f
Revert permissions changes to integration-tests-ui.yml
BYK Jan 13, 2026
9889efc
fix: revert extraneous changes to non-release workflow files
BYK Jan 14, 2026
c20b091
fix: clean up release.yml formatting and version comments
BYK Jan 14, 2026
f230601
build(craft): Update Craft action to c6e2f04
BYK Jan 14, 2026
f85e220
chore: add unlabeled trigger to changelog-preview
BYK Jan 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions .github/workflows/changelog-preview.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Changelog Preview
on:
pull_request:
types:
- opened
- synchronize
- reopened
- edited
- labeled
- unlabeled
permissions:
contents: write
pull-requests: write

jobs:
changelog-preview:
uses: getsentry/craft/.github/workflows/changelog-preview.yml@v2
secrets: inherit
10 changes: 7 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,19 @@ on:
workflow_dispatch:
inputs:
version:
description: Version to release
required: true
description: Version to release (or "auto")
required: false
Comment on lines 5 to +7
Copy link

Choose a reason for hiding this comment

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

Bug: The optional version input defaults to an empty string, but the downstream craft action might expect the literal string 'auto' for automatic versioning, causing potential failure.
Severity: HIGH

Suggested Fix

To remove ambiguity, explicitly set the default value of the version input to 'auto'. This ensures that if a user does not provide a version, the workflow will correctly trigger the automatic versioning feature of the craft action as intended. Update the input definition to version: { description: 'Version to release (or ''auto'')', required: false, default: 'auto' }.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location: .github/workflows/release.yml#L5-L7

Potential issue: The `release.yml` workflow introduces an optional `version` input for
the `workflow_dispatch` trigger. If a user does not provide a value, GitHub Actions will
pass an empty string `""` to the `getsentry/action-craft` action. The intended behavior
for automatic versioning is to use the string `'auto'`. It is unclear whether the
`craft` action correctly interprets an empty string as a request for automatic version
detection or if it specifically requires the literal string `'auto'`. This ambiguity
could lead to a failure in the release process if the action does not handle the empty
string case as expected.

Did we get this right? 👍 / 👎 to inform future reviews.

force:
description: Force a release even when there are release-blockers (optional)
required: false
merge_target:
description: Target branch to merge into. Uses the default branch as a fallback (optional)
required: false

permissions:
contents: write
pull-requests: write

jobs:
release:
runs-on: ubuntu-latest
Expand All @@ -30,7 +34,7 @@ jobs:
fetch-depth: 0
submodules: 'recursive'
- name: Prepare release
uses: getsentry/action-prepare-release@v1
uses: getsentry/craft@c6e2f04939b6ee67030588afbb5af76b127d8203 # v2
env:
GITHUB_TOKEN: ${{ steps.token.outputs.token }}
with:
Comment on lines +37 to 40
Copy link

Choose a reason for hiding this comment

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

Bug: The release workflow passes an empty string to the craft action when no version is provided, instead of defaulting to 'auto' as the description implies.
Severity: HIGH

Suggested Fix

Modify the version parameter to use a default value when the input is not provided. Change version: ${{ github.event.inputs.version }} to version: ${{ github.event.inputs.version || 'auto' }}. This ensures that the craft action receives 'auto' when no version is specified.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location: .github/workflows/release.yml#L37-L40

Potential issue: The `release.yml` workflow defines an optional `version` input with a
description suggesting it defaults to `'auto'`. However, when a user triggers the
workflow without providing a version, the `${{ github.event.inputs.version }}`
expression evaluates to an empty string. This empty string is then passed to the
`getsentry/craft` action, which expects either a specific version or the literal string
`'auto'`. Passing an empty string will likely cause the release process to fail because
the action does not know how to interpret it.

Did we get this right? 👍 / 👎 to inform future reviews.

Expand Down
Loading