export default { async email(message, env, ctx) { const from = message.from.toLowerCase(); const subject = (message.headers.get("subject") || "").toLowerCase(); // Allow important Amazon hold/restriction emails const allowAmazonHold = from.includes("amazon") && ( subject.includes("account is temporarily on hold") || subject.includes("sign in to resolve") ); if (allowAmazonHold) { await message.forward("YOUR MASTERMAIL"); return; } // Rule 1: Amazon + invitation request received const blockAmazonInvitation = from.includes("amazon") && subject.includes("invitation request received"); // Rule 2: Subject contains any blocked phrase const blockedSubjectPhrases = [ "sign in", "sign-in", "signin", "revision to", "invitation request received" ]; const blockBySubject = blockedSubjectPhrases.some((phrase) => subject.includes(phrase) ); if (blockAmazonInvitation || blockBySubject) { console.log(`Blocked email from: ${from}, subject: ${subject}`); return; // silently drop } await message.forward("YOUR MASTERMAIL"); }, };