Skip to content

feat(web): migrate sse, booking, calendars and analytics off google connect - #3389

Closed
tyler-dane wants to merge 3 commits into
mainfrom
cursor/p0-wp08c-sse-on-main-cc19
Closed

feat(web): migrate sse, booking, calendars and analytics off google connect#3389
tyler-dane wants to merge 3 commits into
mainfrom
cursor/p0-wp08c-sse-on-main-cc19

Conversation

@tyler-dane

@tyler-dane tyler-dane commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Fixes #3233.

Replays WP-08c onto current main (WP-08b #3382). PR #3384 is superseded: it targeted an older 08b layout that moved Google connect files out of auth/google/.

What

  • Move remaining Google connect files (useConnectGoogle, useGoogleUiState, useGcalSSE, useDisconnectGoogle, google-connect-status.util, google-sync-state.util, google-reconnect-status.util) to auth/providers/
  • SSE: useSyncSSE handles CONNECTION_REVOKED {connectionId} and GOOGLE_REVOKED; lookup by id; repair copy is "We couldn't keep your calendar connection healthy. Try Refresh, or reconnect if this lasts."
  • Booking: ConnectProviderChooser "prompt" variant; healthy gate is any connections[] HEALTHY or google aggregate HEALTHY; empty/google-only copy stays "Connect Google" / "Opening Google…" / "Connect a Google account to enable your booking page and let others schedule time with you."
  • Calendars: isWritableProviderCalendar uses provider !== "local" + canWrite + not reconnecting
  • Auth/Welcome: useIsProviderAvailable("google", "signIn")
  • Analytics: oauth_redirect_started {provider, intent}; calendar_connected gains provider
  • Delete leftover Google connect files; remaining auth/google/ is sign-in only (762 lines, under 1500)

Why

WP-08c is the last web connect-layer migration. Booking, SSE, and calendars still imported Google-named hooks after WP-08b. Dual SSE (CONNECTION_REVOKED then GOOGLE_REVOKED) must not double-toast; lookup-by-id is required because GOOGLE_REVOKED has no connectionId.

Verify

VERDICT: PASS

Checks: test:web, type-check, lint, knip, test:a11y, test:e2e

Human approval: OAuth connect/SSE revocation UX. Do not label agent-automerge.

wc -l packages/web/src/auth/google/**/*.ts* = 762

Open in Web Open in Cursor 

cursoragent and others added 3 commits September 5, 2026 02:42
…onnect

Rename useGcalSSE to useSyncSSE and handle CONNECTION_REVOKED by connection
id. Move the remaining connect layer into auth/providers, switch booking
and calendars onto any healthy writable provider, and replace the google_
analytics prefix.

Co-authored-by: Tyler Dane <tyler-dane@users.noreply.github.com>
Biome import order after the connect-layer move, plus Outlook copy in
the reconnect toast and account header tests.

Co-authored-by: Tyler Dane <tyler-dane@users.noreply.github.com>
Co-authored-by: Tyler Dane <tyler-dane@users.noreply.github.com>
@tyler-dane
tyler-dane marked this pull request as ready for review September 5, 2026 02:51
@tyler-dane tyler-dane added the agent-loop-needs-human Stop the agent loop for this issue; needs a human label Sep 5, 2026 — with Cursor
@tyler-dane tyler-dane closed this Sep 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent-loop-needs-human Stop the agent loop for this issue; needs a human

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[agent] providers P0 WP-08c: migrate SSE, booking, calendars, modals and analytics; delete the Google connect layer

2 participants