11# Roadmap
22
33The roadmap is ordered by user risk, not by feature count.
4+ The evidence gates, adapter contract, and current draft disposition are in the
5+ [ production semantics and Cloudflare proof] ( docs/execution-plan.md ) plan.
46
5- ## v0.1 — Transactional foundation
7+ ## Release gate — AWS beta
68
79- [x] Resend-compatible single and batch send endpoints
810- [x] official Resend Node SDK contract test
@@ -15,42 +17,57 @@ The roadmap is ordered by user risk, not by feature count.
1517- [x] EventBridge Scheduler for long schedules
1618- [x] presigned S3 attachment uploads beyond the API Gateway payload limit
1719- [ ] first successful deployment integration run in a dedicated AWS test
18- account (OIDC deploy/test/delete workflow is ready)
20+ account (OIDC deploy/test/delete workflow is ready)
1921- [x] bootstrap-key storage in Secrets Manager
22+ - [ ] protected-main merge, exact-main CodeQL, signed release, provenance, and
23+ live project site
2024
21- ## v0.2 — Receive and forward
22-
23- - [x] SES Mail Manager ingress endpoint and traffic policies
24- - [x] encrypted S3 raw-message storage with configurable expiry
25- - [x] ` email.received ` webhook and temporary attachment URLs
26- - [x] deterministic receipt duplicate suppression
27- - [x] explicit received-message forwarding through the official Node SDK
28- - [ ] alias routing and catch-all rules
29- - [ ] automatic forwarding that rewrites sender headers safely
30- - [ ] loop detection and ARC preservation
31-
32- ## v0.3 — Developer workflow
33-
34- - [x] hardened local container quickstart
35- - [x] signed, multi-platform container and SBOM release automation
36- - [ ] first signed public release
37- - [x] local preview inbox
38- - template versions using React Email
39- - [x] ` hayasend init ` , ` doctor ` , and end-to-end ` test `
40- - ` hayasend deploy ` and migration commands
41- - OpenTelemetry exports and operational dashboard
42- - Python, Go, and direct HTTP contract tests
43-
44- ## v1 — Supported operations
45-
46- - stable compatibility contract and upgrade policy
47- - multi-account and multi-region management
48- - SSO, audit exports, and configurable retention
49- - backup, restore, disaster-recovery, and load-test evidence
50- - published community and commercial support levels
51-
52- ## Later
53-
54- Contacts, broadcasts, journeys, and marketing automation are intentionally
55- deferred. They require consent, unsubscribe, suppression, abuse, and regional
56- compliance controls that should not be rushed.
25+ No post-v0.1 draft merges into the frozen release candidate.
26+
27+ ## Now — Production semantics
28+
29+ - versioned provider capability and compatibility contract
30+ - transactional outbox with automatic reconciliation
31+ - immutable recipient, attempt, and provider-event ledger
32+ - deterministic aggregates under duplicate and out-of-order events
33+ - permanent/retryable provider failure classification
34+ - fault-injection and per-adapter conformance reports
35+ - safe deploy, doctor, upgrade, rollback, and recovery evidence
36+ - scoped credentials, cost/rate controls, and content-private operations
37+
38+ ## Next — Cloudflare and FolioMCP proof
39+
40+ - Workers runtime using the same public API
41+ - D1 metadata/outbox, R2 payloads, and Queues/DLQ
42+ - Cloudflare Email Sending transport and recipient event normalization
43+ - capability-aware 50-recipient and 5 MiB validation
44+ - plan-first deploy, doctor, upgrade, rollback, and cost evidence
45+ - identical shared conformance and fault-injection suite
46+ - provider switch without application-code changes
47+ - controlled non-critical FolioMCP dogfood
48+
49+ Cloudflare Email Sending is currently Beta. HayaSend will keep that status
50+ visible until both Cloudflare's service status and HayaSend's evidence justify
51+ changing it.
52+
53+ ## Then — Agent-safe policy
54+
55+ - actor, application, agent, and intent identity
56+ - draft, send, and external-send permission separation
57+ - recipient/domain allowlists and deny rules
58+ - hourly/daily send and cost budgets
59+ - approval gates for sensitive, external, attachment, and high-volume sends
60+ - sandbox sink, preview, kill switch, and immutable audit
61+ - MCP only as an interface over enforced policy
62+
63+ ## Parked until the proof is complete
64+
65+ - inbound alias routing, automatic forwarding, and ARC preservation
66+ - more language SDK gates beyond the shared provider conformance work
67+ - visual template-product expansion
68+ - contacts, broadcasts, journeys, and marketing automation
69+ - managed multi-tenant content data plane
70+ - SMS, push, chat, or a general notification workflow builder
71+
72+ The existing AWS receiving implementation remains supported, but it does not
73+ set the order of new work.
0 commit comments