Files
wmailhub/docs/01_ARCHITECTURE.md
T
BigCode d4c1334143 feat: WmailHub v1.0.0 —— Cloudflare Email Workers 邮件接收与转发平台(本地可用版本)
- Console:React 19 + antd 6.6.5 前端(登录 admin/admin)+ Hono 管理 API
  (Nodes/Domains/Mailboxes/Emails/Webhooks/Keys/OAuth/Admin)
- Node:Bun 转发节点(HMAC 签名、有限重试、心跳、结构化日志、优雅退出)
- Email Worker:Cloudflare email handler + 本地联调入口
- shared:HMAC 协议(docs/04)、wmh_ Key(32 位)、AES-GCM 加密、SSRF 防护
- 邮件管线:postal-mime 解析、附件、catch-all、限额、malformed 降级、TTL 1 天
- Webhook:签名投递、指数退避重试、SSRF 校验、投递日志
- API v1 + MCP(JSON-RPC,六工具,凭据 kind 隔离)
- Cloudflare OAuth:真实 + 本地 sim 模式,自动安装管线(幂等,无需手工命令)
- 测试:bun test 41 例(协议安全/管线/TTL/Webhook/SSRF/MCP/OAuth/鉴权)+ Playwright UI 冒烟
- LOGO/favicon 由 codex CLI 生成
2026-09-30 03:34:37 +08:00

47 lines
1.0 KiB
Markdown

# WmailHub 系统架构
## Console
Console = Frontend + Management Node,是系统控制中心。
负责 Cloudflare OAuth、Node、Domain、Mailbox、Email、Webhook、API、MCP 以及数据存储。
## Node
Node 是纯后端、无前端的邮件转发节点。
唯一核心流程:Cloudflare Email Worker -> Node -> Console。
Node 不负责 Domain、Mailbox、Webhook、MCP、API、用户权限或业务路由。
## Cloudflare Worker
Email Worker 是邮件入口,只负责接收 Cloudflare Email Event 并安全转发给 Node。
## 控制平面
```text
Cloudflare Account
+-- Node
+-- Domain
+-- Mailbox
+-- Email Worker
```
这些资源关系由 Console 管理。
## 数据平面
```text
Email Worker -> Node -> Console
```
Node 不参与业务决策。
## Node Scope
第一版一个 Node 绑定一个 Cloudflare Account。Node A 不允许处理 Account B 的资源。
## 扩展
未来可以有多个 Node,例如 Node JP、Node US、Node EU。每个 Node 默认仍绑定一个 Cloudflare Account。