Skip to content
This repository was archived by the owner on Jun 25, 2026. It is now read-only.

feat: Hey-style email screening; unify Blocked/Junk into Screened Email Address (backport #600 to v0)#615

Merged
s-aga-r merged 2 commits into
frappe:v0from
s-aga-r:backport/screened-email-address-v0
Jun 25, 2026
Merged

feat: Hey-style email screening; unify Blocked/Junk into Screened Email Address (backport #600 to v0)#615
s-aga-r merged 2 commits into
frappe:v0from
s-aga-r:backport/screened-email-address-v0

Conversation

@s-aga-r

@s-aga-r s-aga-r commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

Backport of #600 to v0.

Merges the legacy Blocked Email Address and Junk Email Address doctypes into a single account-scoped Screened Email Address doctype (Reject / Spam / Accepted), adds the Hey-style screening flow (Screener view + screening endpoints), and generates the frappe_mail_automation sieve through the unified build_automation_sieve layer (create-if-missing, build all four sections — Reject → Mailbox → Spam → Screening — and optionally activate). A migration converts existing Blocked → Reject and Junk → Spam rules and drops the old doctypes.

v0 adaptations during the backport

Verification

  • ruff clean; all changed Python parses.
  • Migration migrate_to_screened_email_address ordered after backfill_blocked_email_account_id.
  • All frontend-referenced screening endpoints exist; schema fields (Mailbox Settings automation fields, enable_screening, Screened Email Address) present; ScreenerView route wired.
  • No dangling references to the removed Blocked/Junk doctypes.

🤖 Generated with Claude Code

@s-aga-r s-aga-r requested a review from krantheman as a code owner June 25, 2026 03:52
…il Address (backport frappe#600 to v0)

Backport of PR frappe#600 (frappe/mail, merged into develop) onto v0.

Merges the legacy "Blocked Email Address" and "Junk Email Address" doctypes
into a single account-scoped "Screened Email Address" doctype (Reject / Spam /
Accepted actions), adds the Hey-style screening flow (Screener view +
screening endpoints), and generates the frappe_mail_automation sieve through
the unified build_automation_sieve layer (create-if-missing, build all four
sections — Reject -> Mailbox -> Spam -> Screening — and optionally activate).
A migration converts existing Blocked -> Reject and Junk -> Spam rules and
drops the old doctypes.

v0 adaptations during the backport:
- mail/api/mail.py: kept v0's get_mail_config (develop renamed it to
  get_config) and v0's import layout while adding the screening imports.
- mail/hooks.py: applied only frappe#600's change (drop Blocked/Junk permission and
  ignore-links entries, add Screened Email Address); did not pull in the
  unrelated develop-only Calendar Exchange permission entry that v0 doesn't
  register.
- frontend/src/types/doctypes.ts: kept v0's generated types; frappe#600's only diff
  here was unrelated MailSettings log-field regeneration.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@s-aga-r s-aga-r force-pushed the backport/screened-email-address-v0 branch from 21f6bdc to c64fd84 Compare June 25, 2026 03:56
@s-aga-r s-aga-r merged commit 57a46df into frappe:v0 Jun 25, 2026
1 of 3 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant