Skip to content

fix: restore release deployment with Wrangler - #1026

Merged
boomzero merged 1 commit into
masterfrom
fix/release-cloudflare-action
Sep 19, 2026
Merged

boomzero merged 1 commit into
masterfrom
fix/release-cloudflare-action

Conversation

@boomzero

@boomzero boomzero commented Sep 19, 2026

Copy link
Copy Markdown
Member

What does this PR aim to accomplish?:

Restore the 3.7.0 release pipeline. Release run 35411776022 failed during job setup with Unable to resolve action cloudflare/pages-action, not found, before publishing anything.

How does this PR accomplish the above?:

  • Replace unavailable cloudflare/pages-action@v1 with cloudflare/wrangler-action@v3 using pages deploy . --project-name=xmoj-script --branch=master.
  • Preserve the existing Cloudflare account, API secret, directory and production branch.
  • Use Node 22 for Wrangler compatibility.
  • Add manual dispatch and trigger on release-workflow changes so merging this fix starts a fresh release run.
  • Keep the existing 3.7.0 version and full release notes since stable 3.6.0 unchanged.

Validation: parsed the workflow YAML and checked its triggers and deployment inputs against the Wrangler action manifest and official usage. Live release/deployment verification follows merge. This hotfix targets master because the failing production workflow must be replaced; no userscript changes.


By submitting this pull request, I confirm the following:

  1. I have read and understood the contributor's guide, as well as this entire template. I understand which branch to base my commits and Pull Requests against.
  2. I have commented on my proposed changes within the code. Not applicable to this small workflow configuration change.
  3. I have tested my changes. Workflow parsing and input validation passed; live deployment is pending.
  4. I am willing to help maintain this change if there are issues with it later. Future maintenance commitment remains with maintainers.
  5. It is compatible with the GNU General Public License v3.0.
  6. I have squashed any insignificant commits. One focused commit.
  7. I have checked that another pull request for this purpose does not exist.
  8. I have considered and confirmed that this submission will be valuable to others.
  9. I accept that this submission may not be used, and the pull request can be closed at the will of the maintainer.
  10. I give this submission freely and claim no ownership to its content.
  11. I have verified that my changes work correctly in both the new UI and the old/classic UI. Not applicable: CI-only change, no browser behavior modified.

  • I have read the above and my PR is ready for review. Check this box to confirm

Summary by Sourcery

Restore the release pipeline by switching Cloudflare deployments to Wrangler and making the workflow easier to rerun after fixes.

Bug Fixes:

  • Restore release deployments by replacing the unavailable Cloudflare Pages action with Wrangler.

Enhancements:

  • Update the release workflow to use Node.js 22 and support manual or workflow-change-triggered runs.

CI:

  • Expand release workflow triggers to include manual dispatches and changes to the workflow configuration.

Deployment:

  • Deploy the production Pages site through Wrangler while preserving the existing project, account, credentials, and master branch settings.

Summary by cubic

Replaces the unavailable cloudflare/pages-action@v1 with cloudflare/wrangler-action@v3 to restore the 3.7.0 release pipeline.

  • Deploys via pages deploy . --project-name=xmoj-script --branch=master, keeping the existing Cloudflare account, API token, directory, and production branch.
  • Moves the workflow to Node 22 for Wrangler compatibility.
  • Adds workflow_dispatch and a trigger on .github/workflows/Release.yml changes so merging this fix starts a fresh release run.
  • Keeps the existing 3.7.0 version and release notes; live deployment still needs verification after merge.

Written for commit 263eac3. Summary will update on new commits.

Review in cubic

@sourcery-ai

sourcery-ai Bot commented Sep 19, 2026

Copy link
Copy Markdown
Contributor
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

The release workflow is updated to restore Cloudflare production deployments by switching from the unavailable Pages action to Wrangler, using Node 22 and equivalent deployment settings. It also adds manual dispatch and self-triggering configuration changes so the repaired release pipeline can be rerun immediately.

File-Level Changes

Change Details Files
Replace the unavailable Cloudflare Pages deployment action with Wrangler while preserving production deployment configuration.
  • Invoke Wrangler v3 with the Pages deploy command for the existing project, directory, branch, and account.
  • Upgrade the workflow runner’s Node runtime to 22 for Wrangler compatibility.
.github/workflows/Release.yml
Expand release workflow activation paths to support recovery and manual reruns.
  • Add manual workflow dispatch.
  • Run the workflow when its own configuration changes on master.
.github/workflows/Release.yml

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@sourcery-ai sourcery-ai Bot 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.

Hey - I've found 1 issue

Prompt for AI Agents
Please address the comments from this code review:

## Individual Comments

### Comment 1
<location path=".github/workflows/Release.yml" line_range="11-12" />
<code_context>
 name: Release
 on:
+  workflow_dispatch:
   push:
     branches:
</code_context>
<issue_to_address>
**issue (broader_impact):** A manually dispatched run can be started against any branch, but the job checks out that selected ref and deploys it to the Cloudflare `master` branch, while also creating a release from that ref. Running it from a stale or development branch publishes the wrong userscript to production.

**Triggers:** When a maintainer selects a ref other than `master` in the manual workflow dispatch UI.

**Suggested fix:** Restrict manual runs to `master` with a job-level condition, or require and validate a `master` ref before creating the release and deploying.

```suggestion
  Release:
    if: github.ref == 'refs/heads/master'
    runs-on: ubuntu-latest
```
</issue_to_address>

Sourcery assessment

Needs a human reviewer. 1 finding to address first, and this changes the production deployment mechanism to Wrangler, so an invalid command, incompatible action, or unintended directory contents could leave the public Pages site unavailable or serving the wrong release. Reverting the workflow prevents future bad deploys, but it does not undo a deployment or outage that already occurred; a subsequent known-good deployment would be required.

Blocking findings: .github/workflows/Release.yml:12


Sourcery is free for open source - if you like our reviews please consider sharing them ✨

Comment on lines 11 to 12
Release:
runs-on: ubuntu-latest

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.

issue (broader_impact): A manually dispatched run can be started against any branch, but the job checks out that selected ref and deploys it to the Cloudflare master branch, while also creating a release from that ref. Running it from a stale or development branch publishes the wrong userscript to production.

Triggers: When a maintainer selects a ref other than master in the manual workflow dispatch UI.

Suggested fix: Restrict manual runs to master with a job-level condition, or require and validate a master ref before creating the release and deploying.

Suggested change
Release:
runs-on: ubuntu-latest
Release:
if: github.ref == 'refs/heads/master'
runs-on: ubuntu-latest

@boomzero
boomzero merged commit a4556ee into master Sep 19, 2026
14 checks passed
@boomzero
boomzero deleted the fix/release-cloudflare-action branch September 19, 2026 01:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant