Skip to content

email: Google OAuth regression stabilization tracker #5637

Description

@RaresKeY

Prerequisites

  • I searched open issues and did not find an existing tracker with this scope.
  • I searched discussions and the open Google email OAuth PR cluster for duplicate or already-owned slices.
  • This is a concrete, actionable proposal - organize the regressions around the merged Google email OAuth flow into focused child issues and PRs.

Area

Email

Problem or Motivation

Google email OAuth support is present on dev, but several surrounding paths still use the older password-only or pre-OAuth contracts. The resulting failures are spread across Docker configuration, saved-account testing, MCP email, reminders, callback UI, reconnect identity, and client response serialization. The same regression pass also confirmed three adjacent persistence bugs in email-account defaults, urgency checkpoints, and lazy default-calendar creation that need focused fixes rather than being hidden inside one combined patch.

Reviewing those fixes as one combined patch would mix deployment, backend, MCP, scheduler, and frontend behavior. It would also obscure the prerequisite order between dependent slices.

This tracker gives maintainers one stabilization-first parent while keeping every implementation slice independently reviewable.

Proposed Solution

Use this issue as the parent for focused Google email OAuth regression fixes.

Initial child issues:

Order Issue Purpose Candidate PR
1 #5638 Verify reconnect mailbox identity and replace both credentials together #5648
2 #5639 Remove internal OAuth storage fields from the browser config response #5651
3 #5640 Forward Google OAuth configuration through all Compose variants #5650 (preserves #5020)
4 #5644 Make saved-account connection tests OAuth-aware #5653
5 #4992 Add Google OAuth parity to the email MCP server #5022
6 #5642 Allow OAuth SMTP accounts for email reminders #5649
7 #5643 Show the callback result and open Integrations after redirect #5654
8 #5647 Preserve SMTP security and display name when Connect saves the form #5652
9 #5646 Serialize email-account default mutations across workers #5656
10 #5645 Merge email-urgency checkpoints without duplicate delivery or lost state #5655
11 #5641 Keep lazy default-calendar creation in the event transaction #5657

Working rules:

  • One regression contract per child issue and PR.
  • Preserve existing contributor authorship when replacing stale focused OAuth PRs.
  • Keep Docker, main-app email, MCP, reminders, frontend, scheduler, and calendar transaction validation separate.
  • Merge dependent slices in prerequisite order.
  • When child branches overlap, resolve conflicts without dropping either regression contract.
  • Do not broaden this tracker into Microsoft OAuth, a general mail-provider abstraction, or an email UI rewrite.

Acceptance criteria:

  • Every public child has current-dev reproduction steps, a focused candidate fix, and meaningful regression coverage.
  • Concurrency fixes include deterministic overlapping-worker, cancellation, and partial-snapshot coverage where applicable.
  • Existing focused PRs are reused when they are current and reviewable instead of duplicated.
  • Dependent slices merge in prerequisite order.
  • Validate the combined tree after resolving overlapping changes.

Alternatives Considered

One combined regression PR was rejected because it would mix unrelated owners and make callback, MCP, Docker, and UI review harder.

Leaving the fixes as an informal PR cluster was rejected because dependencies and current-dev replacement work would remain unclear.

Reopening the original feature issue was rejected because the merged feature is broader than these stabilization slices and already has separate historical context.

Prior Art / Related Issues

Are you willing to implement this?

Yes - I can open focused PRs, preserve prior authorship where applicable, and keep the dependency/order notes current.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestready for reviewDescription complete — ready for maintainer review

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions