Skip to content

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.ts
  • backend/src/maodo-task/services/maodo-task.service.ts
  • backend/src/maodo-task/persistence/maodo-task.repository.ts
  • backend/src/maodo-task/pipeline/maodo-task-pipeline.service.ts
  • backend/src/maodo-project/generation/project-attention-disposition.service.ts