## 1. Main 分支隔离与基线 - [x] 1.1 确认变更仅面向 `main` 的纯 Asynq 套餐接续链路,并保持 Outbox 与新任务基础设施为非目标。 - [x] 1.2 检索套餐激活方法的全部调用点及现有错误码、Redis 键和任务重试配置,锁定最小修改边界。 ## 2. 过期接续与孤儿恢复 - [x] 2.1 将孤儿恢复改为数据库先按载体选择队首并排除 `status IN (1,2)` 占位套餐,最后限制 100 个真实孤儿,删除逐条占位查询。 - [x] 2.2 将旧主套餐过期后的下一套餐投递移到事务提交后,保留现有停机检查和周期孤儿补偿。 ## 3. 激活结果与重试语义 - [x] 3.1 让指定套餐激活显式返回是否实际激活,并在 Redis 激活锁冲突时返回现有套餐激活冲突错误。 - [x] 3.2 调整 Asynq Handler 日志,仅在实际激活时记录成功,未激活时记录明确的跳过信息。 ## 4. 文档、验证与提交 - [x] 4.1 更新功能总结和 README,说明 `main` 纯 Asynq 热修边界、部署观察项及回滚方式。 - [x] 4.2 执行 `gofmt`、`git diff --check`、`go build ./...` 和 OpenSpec 严格校验;按用户要求不新增、修改或运行自动化测试。 - [x] 4.3 仅暂存本热修代码、文档和独立 OpenSpec,创建符合 Lore 协议的中文提交。