## Parent #1 ## What to build 让邮件任务在失败和 worker 重启后保持可解释,并通过 Resend 签名 webhook 处理 delivery、bounce 和 complaint,停止向失效或投诉地址继续投递。 ## Acceptance criteria - [ ] 邮件任务持久化且幂等,失败按 1、5、15、60 分钟退避,最多尝试 5 次。 - [ ] 最终失败显示在 `org:admin` 运维界面并可手动重试;数据库不长期保存完整邮件正文。 - [ ] Resend webhook 验证官方签名、时间戳和防重放信息,事件 ID 重复时不重复处理。 - [ ] 永久 bounce 或 complaint 立即全局抑制地址,临时失败累计三次后抑制。 - [ ] `org:admin` 可查看原因,并在重新读取 Clerk 已验证主邮箱后恢复投递。 - [ ] 退订与 Suppressed Recipient 是独立状态;普通日志不记录收件邮箱或完整 webhook 载荷。 ## Blocked by - #16 — Submission Digest 与个人通知偏好
Parent
#1
What to build
让邮件任务在失败和 worker 重启后保持可解释,并通过 Resend 签名 webhook 处理 delivery、bounce 和 complaint,停止向失效或投诉地址继续投递。
Acceptance criteria
org:admin运维界面并可手动重试;数据库不长期保存完整邮件正文。org:admin可查看原因,并在重新读取 Clerk 已验证主邮箱后恢复投递。Blocked by