Implement approved email sending through the self-hosted Stalwart mail server using SMTP/SMTPS and Nodemailer. The system must never send automatically before manual approval and must log recipient, subject, audit link, status, and errors in Convex.
Acceptance Criteria
#1 Nodemailer is configured for Stalwart SMTP/SMTPS using environment or Convex secrets
#2 E-Mail freigeben und senden sends only the currently approved/editable email draft to the visible recipient
#3 A final send action shows recipient, subject, sender, and audit link before sending
#4 Convex records sent timestamp, recipient, subject, audit link, SMTP result, and any error details
#5 SMTP failures keep the lead in a retryable review state and do not mark the lead as contacted
Implementation Plan
Add SMTP transport configuration from secrets.
Add server-side send function that accepts only approved outreach IDs.
Add final confirmation UI with recipient, subject, sender, and audit link.
Store SMTP success/error outcomes and update lead/outreach status.
Test success and failure paths with safe non-production recipients before real use.