email: suppress defunct/legacy/satellite ISP domains in cold sends

Added DEAD_ISP_DOMAINS (52 domains) to BLOCKED_EMAIL_DOMAINS, so every
campaign builder that imports the shared exclusions (trucking, UCR, IFTA via
create_and_schedule_campaign, and the healthcare importer) stops cold-mailing
them. Domains were identified from our own Listmonk bounce table (top bounced
recipient domains) cross-checked against ISP status: defunct dial-up brands
(earthlink, netzero, juno, mindspring...), Qwest/Embarq legacy, satellite
(hughes, wildblue, dishmail), Altice/Suddenlink rural, WOW!/Knology, small
rural ISPs (windstream, tds, iowatelecom...) and Alaska regional.

Deliberately keeps still-active large consumer ISPs (comcast/charter/cox/
centurylink) -- their bounces were the cold-IP/no-DKIM reputation problem
(now fixed), not dead mailboxes, and they carry real prospects.

Part of the email-deliverability incident hardening.
This commit is contained in:
justin 2026-06-17 20:16:00 -05:00
parent a32a3b05a0
commit c183957939

View file

@ -70,11 +70,43 @@ DO_NOT_CONTACT_EMAILS: frozenset[str] = frozenset({
"dave@dataspindle.com",
})
# Defunct / legacy / satellite ISP mailbox domains. Cold-mailing these is pure
# reputation drag: the mailboxes are overwhelmingly dead (the brand was shut down
# or absorbed years ago and the addresses now hard-bounce) or the operator
# (satellite / small rural ISP) aggressively defers cold B2B mail with poor
# eventual delivery. Identified from our own Listmonk bounce table (top bounced
# recipient domains) cross-checked against ISP status. NOTE: still-active large
# consumer ISPs (comcast.net, charter.net, cox.net, centurylink.net) are
# deliberately NOT here -- their bounces were the cold-IP/no-DKIM reputation
# problem (now fixed), not dead mailboxes, and they carry real prospects.
DEAD_ISP_DOMAINS: frozenset[str] = frozenset({
# Defunct dial-up / early-ISP brands (mail shut down or vestigial)
"earthlink.net", "peoplepc.com", "mindspring.com", "netzero.net",
"netzero.com", "juno.com", "excite.com", "lycos.com", "wmconnect.com",
"adelphia.net", "voyager.net", "core.com", "localnet.com", "pldi.net",
"ptsi.net", "cablespeed.com",
# CenturyLink / Qwest / Embarq legacy brands (migrated/abandoned)
"qwest.net", "qwestoffice.net", "embarqmail.com", "centurytel.net",
"citlink.net", "citynet.net",
# Satellite (poor cold-mail deliverability, high defer/bounce)
"hughes.net", "wildblue.net", "dishmail.net", "wildblueinternet.net",
# Altice / Optimum / Suddenlink / Cablevision family (rural, aggressive defer)
"optonline.net", "suddenlink.net", "cebridge.net", "bresnan.net",
# WOW! / Knology, Mediacom, Insight, Atlantic Broadband/Breezeline, Cable One
"wowway.com", "knology.net", "mchsi.com", "insightbb.com", "atlanticbb.net",
"breezeline.net", "cableone.net", "cableone.com",
# Small / rural regional ISPs (aggressive defer, low cold deliverability)
"windstream.net", "tds.net", "iowatelecom.net", "netins.net", "mhtc.net",
"arvig.net", "consolidated.net", "fuse.net", "ncn.net", "new.rr.com",
# Alaska regional (satellite/long-haul, poor cold deliverability)
"gci.net", "alaska.net", "acsalaska.net", "gulftel.com",
})
# The full set of consumer domains we refuse to cold-mail. Extend here as we
# discover other reputation-sensitive providers.
BLOCKED_EMAIL_DOMAINS: frozenset[str] = (
YAHOO_FAMILY_DOMAINS | GOOGLE_CONSUMER_DOMAINS | MICROSOFT_CONSUMER_DOMAINS
| DO_NOT_CONTACT_DOMAINS
| DEAD_ISP_DOMAINS | DO_NOT_CONTACT_DOMAINS
)