Disconnecting a sync provider now calls the provider's revoke endpoint (DELETE /v1/permissions for Wahoo) before dropping the local row, so tokens don't accumulate against Wahoo's per-(app,user) cap. The token exchange now classifies Wahoo's "Too many unrevoked access tokens" 400 as a distinct OAuthError code, and the connections settings page shows a localized banner for that and other connect failures instead of a silent ?error=sync_failed. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| app | ||
| public | ||
| .env.example | ||
| Dockerfile | ||
| package.json | ||
| react-router.config.ts | ||
| server.ts | ||
| tsconfig.json | ||
| vite.config.ts | ||
| vitest.config.ts | ||