From 8bf920edba8a80256f7824b69917f64fa4685f03 Mon Sep 17 00:00:00 2001 From: Rayhan Noufal Arayilakath Date: Tue, 1 Sep 2026 01:19:49 -0400 Subject: [PATCH] fix: address the blast copy to team@, which Email Routing delivers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both blast paths bcc the real recipients and put events@purduehackers.com in the To, so that address is only ever the copy we keep. It has no Email Routing rule on the zone — team@purduehackers.com is the one that does — so the copy was addressed to somewhere nothing delivers. Same reasoning as the reply-to, applied to the other half of the envelope. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01AHAyCUvMbU4jG9bg5EuC3C --- src/collections/Emails.ts | 5 ++++- src/collections/Events.ts | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/collections/Emails.ts b/src/collections/Emails.ts index 85e9867..c290a6a 100644 --- a/src/collections/Emails.ts +++ b/src/collections/Emails.ts @@ -117,7 +117,10 @@ export const Emails: CollectionConfig = { // Send email blast if (recipients.length > 0) { await req.payload.sendEmail({ - to: 'events@purduehackers.com', + // Real recipients are bcc'd, so the To is only the copy we keep. It + // has to be an address Email Routing delivers, or that copy goes + // nowhere. + to: 'team@purduehackers.com', bcc: recipients, subject, text, diff --git a/src/collections/Events.ts b/src/collections/Events.ts index b2e37b5..d4213ac 100644 --- a/src/collections/Events.ts +++ b/src/collections/Events.ts @@ -139,7 +139,9 @@ async function sendEventBlast(req: PayloadRequest, doc: Event): Promise const emailInfo = await getEmailData(doc) if (recipients.length > 0 && emailInfo) { await req.payload.sendEmail({ - to: 'events@purduehackers.com', + // Real recipients are bcc'd, so the To is only the copy we keep. It has to + // be an address Email Routing delivers, or that copy goes nowhere. + to: 'team@purduehackers.com', bcc: recipients, subject: emailInfo.subject, text: emailInfo.text,