外观
maodo-task
定位与判断
AI 执行任务内核。目前不是覆盖所有后台任务的通用调度平台。
当前实现
- 创建 pending 任务、冻结执行计划,显式激活后提交。
- 幂等、Attempt、租约、提交不确定状态恢复、轮询与结果持久化。
- 父子任务与步骤快照编排、后台查询。
- 直接依赖 Gateway、Log、Prisma。
问题与差距
maodo-task.module.ts导出MaodoTaskRepository,外部可绕过应用服务操作状态。- Project 人工处置直接调用仓储,任务不变量跨模块维护。
- Pipeline 直接操作任务表;应核对父任务状态更新与普通任务状态机是否一致,不能仅因在同一目录就视为统一。
目标能力(建议)
保留任务模块。补充人工关闭、绑定上游并恢复等任务命令,把状态合法性收回 Task。公开命令、查询、快照契约;仓储最终仅供内部使用。业务计费和项目节点不迁入 Task。
迁移与验收
先迁移 Project 人工处置调用,再停止导出仓储。验收覆盖重复命令、非法状态、并发恢复、提交超时及结果转存失败。保持既有恢复语义,不能把未知提交结果直接当失败重试。
源码依据
backend/src/maodo-task/maodo-task.module.tsbackend/src/maodo-task/services/maodo-task.service.tsbackend/src/maodo-task/persistence/maodo-task.repository.tsbackend/src/maodo-task/pipeline/maodo-task-pipeline.service.tsbackend/src/maodo-project/generation/project-attention-disposition.service.ts