Releasing

  1. Bump the version: uv version --bump patch (or minor / major). Commit pyproject.toml and uv.lock, then merge the change into main.
  2. After the Tests workflow passes on main, the Release workflow builds that commit, publishes to PyPI via Trusted Publishing, and creates its v<version> tag. A version already tagged is skipped; there is no manual tag or tag push.