# 对齐文档:任务中心 ## 原始需求 - 建立独立的“任务中心”,用户完成任务获取奖励:积分、优惠券、道具卡、称号。 - 任务类型:首日下单、完成N订单阶梯、邀请有效好友人数N。 ## 边界确认 - 与现有`Activities`抽奖域完全分离;不修改抽奖域表结构与逻辑。 - 奖励发放统一走现有用户发奖服务;券/卡系统复用现有接口。 - 默认自动发放;如需手动领取提供接口但不强制。 ## 需求理解 - 事件驱动:基于`OrderPaid`与`InviteSuccess`事件实时更新用户任务进度。 - 阶梯与一次性:支持一次性(首日下单)与阶梯(订单/邀请里程碑)任务。 - 调度补偿:周期性对账补漏,保证一致性与可追溯。 ## 疑问澄清 - 称号奖励是否需要叠加效果与过期策略?暂定无过期,效果由标题系统处理。 - 退款是否回滚进度?暂定回滚计数但不回收已发奖励(可配置)。 ## 约束与对齐 - 性能:实时事件处理P95<200ms;调度作业在可接受时间内完成。 - 安全:防刷单与邀请作弊;限流与幂等保证。 --- # 共识要点 - 新建独立域:`TaskCenter`,目录`internal/api|service|repository/mysql/task_center`。 - 新建表:`Tasks`、`TaskTiers`、`TaskRewards`、`UserTaskProgress`、`TaskEventLogs`,如需`UserTitles`可复用现有表。