Skip to content

fix(reminders): support OAuth SMTP accounts#5649

Merged
o3LL merged 1 commit into
odysseus-dev:devfrom
RaresKeY:fix/oauth-reminder-smtp-capability
Jul 22, 2026
Merged

fix(reminders): support OAuth SMTP accounts#5649
o3LL merged 1 commit into
odysseus-dev:devfrom
RaresKeY:fix/oauth-reminder-smtp-capability

Conversation

@RaresKeY

@RaresKeY RaresKeY commented Jul 20, 2026

Copy link
Copy Markdown
Member

Summary

Allow email reminders to use a saved Google OAuth SMTP account without a stored SMTP password. Backend account selection now uses the shared SMTP-ready contract, and the Settings reminder selector treats either a saved password or Google OAuth as valid SMTP credentials.

Password accounts and same-owner fallback selection keep their existing behavior. The change is intentionally limited to reminder readiness; SMTP sending remains owned by the existing email transport helper.

Target branch

  • This PR targets dev, not main.

Linked Issue

Fixes #5642

Part of #5637

Type of Change

  • Bug fix (non-breaking — fixes a confirmed issue)
  • New feature (non-breaking — adds new behaviour)
  • Breaking change (changes or removes existing behaviour)
  • Refactor / cleanup (behaviour unchanged)
  • Documentation only
  • CI / tooling / configuration

Checklist

  • I searched open issues and open PRs — this reminder-specific OAuth readiness bug is not already owned.
  • This PR targets dev.
  • My changes are limited to reminder account readiness, Settings filtering, and focused tests.
  • I ran the app end-to-end. The Settings reminder view was exercised in the running app with synthetic local account data, and browser assertions verified the selected OAuth account. No disposable Google SMTP account was available for live delivery.

How to Test

  1. Run:

    python -m pytest -q tests/test_note_reminder_email_oauth.py tests/test_note_reminder_email.py tests/test_email_oauth.py
    node --check static/js/settings.js
  2. Save a Google OAuth account with SMTP host/user and no SMTP password.

  3. Select it for an email reminder and verify it appears as configured.

  4. Dispatch the reminder and verify the shared SMTP helper receives the selected OAuth account.

  5. Repeat with a password account and verify existing behavior is unchanged.

Current-dev isolated validation passes 38 focused/adjacent tests, JavaScript syntax, and diff checks. A running-app browser pass also verifies the reminder panel, Email channel, and selected OAuth-only SMTP account. Live SMTP remains a reviewer item.

Visual / UI changes — REQUIRED if you touched anything that renders

The existing reminder account selector can now include Google OAuth SMTP accounts. No layout, style, spacing, or component pattern changed.

  • Screenshot or short clip — running-app capture attached below.
  • Style match — existing controls and styling are unchanged.
  • No new component patterns.
  • I am not an LLM agent submitting a bulk PR. Contributor attestation remains for the human author.

Screenshots / clips

Running-app capture using a synthetic local Google OAuth account; no credentials or live provider traffic:

Reminder selector showing an OAuth account without an SMTP password

@github-actions github-actions Bot added the ready for review Description complete — ready for maintainer review label Jul 20, 2026
@RaresKeY
RaresKeY marked this pull request as ready for review July 21, 2026 12:20
@RaresKeY RaresKeY added the bug Something isn't working label Jul 21, 2026

@o3LL o3LL left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved!
I just want to mention that the How-to-Test command lists tests/test_note_reminder_email.py, which doesn't exist pytest aborts on the missing path, so the command fails as written (the real adjacent suites are test_note_reminder_fire_scope.py etc.).

@o3LL
o3LL merged commit 791bed7 into odysseus-dev:dev Jul 22, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working ready for review Description complete — ready for maintainer review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

reminders: accept OAuth-only SMTP accounts for email delivery

2 participants