Commit graph

1 commit

Author SHA1 Message Date
justin
3725374ade ct campaign + fix filings routing durability
- create_ct_annual_report_campaign.py: personalized CT annual-report overdue
  email (company/due_date/days_overdue attribs), from filings.* subdomain, soft
  free-compliance-check CTA. HTML+plaintext, List-Unsubscribe, @TrackLink.
- pw-mta-warmup.sh: when the rotation pool is a single IP, write plain
  transport_maps (no catch-all randmap) + default_transport, so the filings
  sender_dependent map (-> outfilings/.90) survives the daily warmup run.
  Previously randmap:{out05:} clobbered filings routing every day at 07:17 UTC.

Verified end-to-end: Listmonk CT test egresses .90 (outfilings), DKIM
d=filings.performancewest.net s=filings, multipart HTML+plaintext, attribs
render (Riverside Landscaping LLC / due 2026-06-15 / 16 days ago), 0 stray
tokens, real per-subscriber unsubscribe link.
2026-07-01 08:14:12 -05:00