Skip to content

refactor: share google rate-limit reasons and description-link helpers - #4659

Merged
tyler-dane merged 1 commit into
mainfrom
cursor/code-simplification-d685
Oct 21, 2026
Merged

tyler-dane merged 1 commit into
mainfrom
cursor/code-simplification-d685

Conversation

@cursor

@cursor cursor Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

What and why

Nightly cleanup of merges after #4617, focused on #4646 (Google 400s / write classification), #4645 (description link UX), #4635 (provider save failures), and #4613/#4638 (sidebar footer).

Writer and People share hasGoogleRateLimitReason instead of private quota lists. googleErrorReasons is derived from googleErrorEntries. Description-link shortening shares one prefix and punctuation helper. useDescriptionLinkPresentation drops unused enabled and a dead focus ref. Mod+click opens description links through findLinkElement / openDescriptionLink. Mutation toast provider lookup uses calendarIdFromMutationInput. macOS shortcut footer reuses hideTipsButton.

Left alone: AuthStore success paths, Welcome Enter vs connect-prompt Enter, first-event celebration, TimePicker commit-draft event, TimePicker shortcut test harness, calendar notice stack, TimeGrid hit-test passes, ShiftHintOverlay, TimePickers start/end menu booleans, NativeGridKeyboardRouter confirmation-dialog and guest-email Return handling, deploy yaml awk readers, EventFormDateField commit paths, recurrence timezone vs draft TZ, keyboard vs form duplicate pipelines, CompassKit test trees, CommandPaletteSearch adapter, palette recent-while-searching, Event form Meet draft.kind === "create" type narrowing, SidebarActions footer icons, CommandPalettePhosphorIcon maps, DST wall-clock vs elapsed minutes.

Verify

VERDICT: PASS

Checks run: test:sync:fast, test:web, type-check, lint, knip, test:a11y, test:e2e.

CI-only: test:macos / test:macos:packages (no Xcode on this machine).

Open in Web View Automation 

Note

Medium Risk
Google write and contact-search retry classification changes behavior when quota reasons appear only on the error object; description link presentation now applies whenever the editor exists, not gated by a removed flag.

Overview
Consolidates Google API error handling so quota/rate-limit reasons live in GOOGLE_RATE_LIMIT_REASONS and hasGoogleRateLimitReason, with googleErrorReasons built from googleErrorEntries. The event writer and People contact search drop local 403 quota lists and use the shared helper (including reasons on the error object, not only the response body). Read-path transients still include backendError / internalError; writes only treat quota-style 403s as retryable.

Description editor link UX is tightened: autolink shortening recognizes www. labels, Mod+click opens links via findLinkElement / openDescriptionLink, and useDescriptionLinkPresentation always runs when the editor is mounted (removed unused enabled flag and dead focus ref).

Event mutation error toasts resolve provider via new calendarIdFromMutationInput instead of inlined input parsing. macOS shortcut footer reuses a shared hideTipsButton in the event-form tip.

Reviewed by Cursor Bugbot for commit dbb46db. Bugbot is set up for automated code reviews on this repo. Configure here.

@tyler-dane
tyler-dane marked this pull request as ready for review October 21, 2026 01:21
@tyler-dane tyler-dane added the agent-automerge Agent-loop finished; merge-guard may squash-merge label Oct 21, 2026
@tyler-dane
tyler-dane enabled auto-merge October 21, 2026 01:21
@github-actions

Copy link
Copy Markdown
Contributor

Boot bundle: 509.4 KB gzip (+0.0 KB vs main)

@tyler-dane
tyler-dane added this pull request to the merge queue Oct 21, 2026
Merged via the queue into main with commit ab91e02 Oct 21, 2026
33 of 34 checks passed
@tyler-dane
tyler-dane deleted the cursor/code-simplification-d685 branch October 21, 2026 03:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent-automerge Agent-loop finished; merge-guard may squash-merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants