CodeIssuesPull RequestsActionsSecurityInsights
✨ AI
More
Settings

feat(email): the estate rail — EMAIL_PROVIDER=http delivers via owned infrastructure #5539

Merged⚡ AI-generatedXSccantynz wants to mergefeat/email-estate-railmainopened 6d ago
ccantynzcommented 6d ago

The whole platform's notifications on owned rails

Owner directive: everything the platform sends — ops paging and every customer email (mentions, digests, status confirmations — all currently degrading to log lines, since no provider is configured in prod) — travels the estate's own infrastructure.

New EMAIL_PROVIDER=http: POSTs {from, to, subject, text, html} to EMAIL_HTTP_URL with EMAIL_HTTP_TOKEN bearer. Vapron's MTA exposes the production endpoint (relay briefed — one comms rail for the estate, dogfooding a sellable capability), but the contract is host-agnostic. Same never-throw + 15s-timeout discipline as the existing providers; DI-seamed and tested (skip-honestly, contract shape + auth, non-2xx and network failure paths).

Activation when Vapron's endpoint lands: three env values, one deploy. 15/15 tests incl. env-drift; typecheck clean.

🤖 Generated with Claude Code

gluecron[bot]🤖 botAI Reviewcommented 6d ago

AI review unavailable

The platform's AI balance is exhausted, so AI generation is temporarily unavailable. Nothing was lost. You can queue this as a repair for the internal agent from the repository's Health page, or try again once the balance is restored. The PR is otherwise unchanged.

ccantynzAI Reviewcommented 6d ago

AI Triage

(no summary)

Priority: medium Risk area: mixed

Suggested labels: (no label suggestions) Suggested reviewers: (no reviewer suggestions)

Suggestions only — nothing has been applied. The PR author stays in control.

Cross-repo impact

See what breaks downstream if this PR merges.

Analyze →
⮌ Merged

This pull request was merged into main.

c comment · e edit title · m merge · a approve · r request changes · ? shortcuts