basecamp v0.9.0-rc.2
Pre-releaseRelease candidate. Stable channels — Homebrew, Scoop, AUR, the Nix flake and the Claude/Codex plugin manifests — all stay on v0.8.1. Install these assets explicitly to test.
Notes below diff against v0.8.1, not
v0.9.0-rc.1. rc.1's release job never ran (it failed at the pre-release lint gate on a stale golangci-lint pin, fixed in #625), so it published nothing and there is no rc.1 build to compare against.
⚠️ BC5 logins now request full access by default
basecamp auth login against a Basecamp-hosted OAuth server (not Launchpad) previously received a read-only token, because the server defaults an omitted scope to its least-privilege entry — so every write returned "access denied". Logins now ask for full, matching what Launchpad logins have always granted. Use basecamp auth login --scope read for a read-only token.
This changes the scope granted to new logins only; existing stored credentials are untouched and keep whatever they were granted.
What's Changed
⚠️ Breaking Changes
Other Changes
- Ask BC3 for presence-aware card step updates by @jeremy in #608
- Share the AUR notifier and the Nix hash classifier between their callers by @jeremy in #609
- Adopt basecamp-sdk v0.12.0 and cover the surface it opened up by @jeremy in #611
- Filter the account-wide task listings by assignee and due date by @jeremy in #612
- Stop a losing rm -rf race from failing a passing test by @jeremy in #613
- Point two comments at functions that exist by @jeremy in #614
- Make basecamp upgrade a real upgrade: native, verified self-update by @jeremy in #615
- Tell agents the truth about card column moves by @jeremy in #618
- Drive the circuit breaker's clock from tests, not sleep() by @jeremy in #619
- Stop echoing back step fields the caller never changed by @jeremy in #620
- Correct the API coverage claim: 183/184, not 100% by @jeremy in #621
- Take the communiques out of the source tree by @jeremy in #623
- Install the skill where opencode actually looks by @jeremy in #624
- Lint the release the same way we lint everything else by @jeremy in #625
Full Changelog: v0.8.1...v0.9.0-rc.2