Local Whisper’s release path is direct to main.

Release script

The script updates desktop, mobile, and keyboard versions, runs the Python tests, commits and pushes main, then waits for CI on that commit before publishing the tag. It creates the GitHub release and updates the Homebrew tap at ../homebrew-local-whisper. A missing test environment or failed CI stops the release before a tag is published.

Before release

Verify the relevant surfaces:
  • Python tests for service and CLI changes
  • Swift build for macOS UI changes
  • Flutter analyze, tests, and platform builds for mobile changes
  • Manual wh smoke checks for runtime behavior
  • Mintlify validation for documentation changes
  • Public text for privacy accuracy and artifact identity hygiene

Changelog

Update CHANGELOG.md for user-visible changes. Keep entries concrete and grouped under Added, Changed, Fixed, or Removed where useful.

Documentation

Update docs in the same change as behavior changes. Source-of-truth docs live in doc/.