Mail outbox and SMTP delivery service #12
Labels
No Label
area:auth
area:docs
area:export
area:ops
area:storage
area:supply-chain
auth
backend
blocked
collab
deployment
docs
effort:L
effort:M
effort:S
frontend
plugins
qa
vs-nfd
vs-nfd:blocker
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: stwaidele/dorfteich#12
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
Verification and reset mails (and later notifications) are sent reliably via an outbox table with retry (ADR 0002/0007).
Scope
Implement
MailModule:mail_outboxPrisma model,enqueue(to, templateKey, params, locale)API, a worker loop (interval job) sending via SMTP (nodemailer, config from env), exponential backoff (max 5 attempts, thenfailed), and layout-light HTML+text templates rendered with the API i18n instance (de/en). Provide dev-mode delivery to console + a MailHog service in the dev Compose overlay.Acceptance criteria
APP_BASE_URLfailedstatusTechnical notes
mail_outbox), ADR 0012 for template texts.verify-email,reset-password(used by #13/#15).Dependencies
Depends on #3, #5.
Size: ~1.5 days
Conventions: English code/comments, clear human-readable code, no hard-coded UI strings (ADR 0012, add
deanden), permission checks only via the shared guard (docs/architecture/permissions.md). Read the referenced ADRs before starting.