Files
wehub-resource-sync 8a21a212f8
CI / Build Rust Project on Windows (push) Waiting to run
Live Provider Tests / Smoke Tests (push) Blocked by required conditions
Live Provider Tests / Smoke Tests (Code Execution) (push) Blocked by required conditions
Live Provider Tests / Compaction Tests (push) Blocked by required conditions
Deploy Documentation / deploy (push) Has been cancelled
Canary / build-cli (push) Has been skipped
Canary / Upload Install Script (push) Has been skipped
Canary / bundle-desktop (push) Has been skipped
Canary / bundle-desktop-intel (push) Has been skipped
Canary / bundle-desktop-linux (push) Has been skipped
Canary / bundle-desktop-windows (push) Has been skipped
Canary / bundle-desktop-windows-cuda (push) Has been skipped
Canary / Release (push) Has been skipped
Cargo Deny / deny (push) Has been skipped
Unused Dependencies / machete (push) Has been skipped
Canary / Prepare Version (push) Failing after 1s
Live Provider Tests / check-fork (push) Failing after 0s
Create Minor Release PR / check-version-bump-pr (push) Has been skipped
Create Minor Release PR / release (push) Waiting to run
Publish Ask AI Bot Docker Image / docker (push) Failing after 1s
Live Provider Tests / changes (push) Has been skipped
Live Provider Tests / Build Binary (push) Waiting to run
Scorecard supply-chain security / Scorecard analysis (push) Has been skipped
Publish Docker Image / docker (push) Failing after 1s
CI / changes (push) Failing after 8s
CI / Check Rust Code Format (push) Waiting to run
CI / Build and Test Rust Project (push) Waiting to run
CI / Check MSRV (push) Waiting to run
CI / Lint Rust Code (push) Waiting to run
CI / Check Generated Schemas are Up-to-Date (push) Waiting to run
CI / Test and Lint Electron Desktop App (push) Waiting to run
chore: import upstream snapshot with attribution
2026-07-13 12:04:08 +08:00

2.3 KiB

Making a Release

You'll generally create one of two release types: a regular feature release (minor version bump like 1.20) or a bug-fixing patch release (patch version bump like 1.20.1).

goose uses GitHub actions to automate the release process. The actual releases are triggered by tags.

Minor version releases

These are typically done once per week. The process has two automated phases:

  1. Version bump PR — An action runs every Tuesday (or can be triggered manually) that creates a PR to bump the version on main. Review and merge this PR.

  2. Release branch + PR — When the version bump PR merges, automation creates a release/<version> branch from main and opens a release PR with a QA checklist.

From there:

  • Test locally if you can (just run-ui)
  • Cherry-pick any last-minute fixes into the release branch if needed
  • Download and test the .zip from the release PR
  • When ready, follow the instructions on the release PR to tag and release

To trigger the release, find the corresponding PR and follow the instructions in the PR description.

Patch version releases

When a minor release is tagged, automation immediately creates the next patch release branch (e.g. release/1.25.1 from release/1.25.0) with the version already bumped and a release PR open. Cherry-pick fixes into this branch, then tag when ready.

To trigger the release, find the corresponding PR and follow the instructions in the PR description.

High level release flow:

minor-release (cron/manual)
  │
  ▼
version-bump PR → main (merge this)
  │
  ▼ (on merge)
release/<V> branch created from main
release PR opened (for QA, cherry-picks, testing)
  │
  ▼ (when ready)
git tag v<V> origin/release/<V> && git push origin v<V>
  │
  ├─► release PR auto-closed (no merge needed)
  ├─► release.yml builds & publishes
  └─► patch release/<V+1> branch + PR auto-created
        │
        ▼ (cherry-pick fixes, then when ready)
        git tag v<V+1> origin/release/<V+1> && git push origin v<V+1>