trails/packages
Ullrich Schäfer b60cd96736
Revoke Wahoo tokens on disconnect; surface OAuth errors
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>
2026-05-01 10:03:50 +02:00
..
api DRY up ZodError → FieldError mapping 2026-04-19 11:45:09 +02:00
db Add sync_pushes table and granted_scopes column 2026-04-30 22:33:43 +02:00
fit Add Wahoo push action route + OAuth callback resume 2026-04-30 22:41:24 +02:00
gpx Standardize monorepo pipeline: test, lint, typecheck across all workspaces 2026-04-13 00:00:43 +02:00
i18n Revoke Wahoo tokens on disconnect; surface OAuth errors 2026-05-01 10:03:50 +02:00
jobs Bump the production group with 28 updates 2026-04-26 08:37:27 +00:00
map Add tests to all packages, remove passWithNoTests 2026-04-13 00:48:27 +02:00
map-core Add tests to all packages, remove passWithNoTests 2026-04-13 00:48:27 +02:00
sentry-config Fix sentry-config typecheck: explicit types: [node] in tsconfig 2026-04-18 00:43:48 +02:00
types Standardize monorepo pipeline: test, lint, typecheck across all workspaces 2026-04-13 00:00:43 +02:00
ui Add tests to all packages, remove passWithNoTests 2026-04-13 00:48:27 +02:00