Appearance
CO.4: Google Calendar Sync
Summary
Counselors connect Google Calendar from profile integrations. The current code supports per-user Google calendar integration and calendar event push/update/delete through the Google provider path.
Role
- Primary: Counselor
- Secondary: Google Calendar
Entry Point
- URL:
/profile - Profile tab: Integrations
- Calendar toolbar prompts when not connected.
Preconditions
- User is authenticated.
- Google OAuth configuration is available.
Steps
- Counselor opens profile integrations or calendar connect prompt.
- Counselor starts Google Calendar connection.
- OAuth flow links the Google account.
- App stores calendar connection metadata.
- Calendar can include external events.
- Meeting scheduling/update/delete notifies the calendar sync path.
Diagram
Edge Cases
- Disconnected calendar: Calendar still works for Compath events.
- Provider failure: Sync failures are logged separately from the primary meeting action.
- Implementation note: The current tree uses
GoogleProvider.PushEvent/UpdateEvent/DeleteEvent; agoogle_relay.gofile is not present.
Current Implementation Notes
- Frontend:
frontend/src/features/calendar-sync/components/integrations-tab.tsx,frontend/src/features/calendar/components/calendar-connect-prompt.tsx - Backend:
backend/internal/calendar/google_provider.go
Screenshot Status
- Not captured.