trails/apps/journal/app
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
..
components Redesign navbar with avatar dropdown and mobile drawer 2026-04-26 09:56:20 +02:00
hooks Implement notifications + supporting fixes 2026-04-26 01:28:55 +02:00
jobs Cursor-based pagination for /notifications 2026-04-26 01:42:32 +02:00
lib Revoke Wahoo tokens on disconnect; surface OAuth errors 2026-05-01 10:03:50 +02:00
routes Revoke Wahoo tokens on disconnect; surface OAuth errors 2026-05-01 10:03:50 +02:00
entry.client.tsx Add legal pages, ToS acceptance, and alpha banner 2026-04-18 00:08:48 +02:00
entry.server.tsx Consolidate Sentry config into shared package; fix inconsistencies 2026-04-18 00:30:09 +02:00
root.tsx Redesign navbar with avatar dropdown and mobile drawer 2026-04-26 09:56:20 +02:00
routes.ts Add Wahoo push action route + OAuth callback resume 2026-04-30 22:41:24 +02:00