All packsTransactional Email Deliverability CoreSolve
new domain email warmup sending limits reputation
Full volume from day one gets a fresh domain flagged
Sending at full volume from a brand-new domain gets it flagged as spam before a human notices -- the pack ramps a daily cap over 45 days instead.
What goes wrong
A fresh sending domain has no reputation with mailbox providers yet, and sending at whatever volume the app naturally produces -- welcome emails, password resets, receipts, all at once for an existing user base -- reads to spam filters as exactly the pattern a spammer's new domain would produce. The domain gets flagged or throttled by receiving mail servers before anyone building the app notices anything is wrong.
Why agents get it wrong
"Send the email when the event happens" is the entire scope of what an agent is usually asked to build (add password-reset email, add welcome email), and nothing about that task description mentions domain age or sending reputation -- ramping volume over weeks is a deliverability-specific practice that has to be designed in deliberately, not something that falls out of implementing the send logic correctly.
What Transactional Email Deliverability Core pre-decides
The warmup governor is a pure function, dailyCap(dayNumber), ramping from 20/day in the first three days up to unlimited at day 45 -- checkWarmup() enforces it before every send, and a send that would exceed the day's cap is deferred (recorded, replayable) rather than dropped or blasted anyway. The ramp table itself is a documented reputation-safety policy, not a technical limit that can be safely skipped.
Source: ARCHITECTURE.md 'Warmup governor'