实施基线
系统设计文档站 / 实施基线

生成任务状态机与审计日志协议

本文档用于定义生成任务的状态机、阶段口径和审计日志协议。

20 静态 HTML 版本 2026年5月26日 15:03

1. 文档目的

本文档用于定义生成任务的状态机、阶段口径和审计日志协议。

2. 状态机目标

生成任务必须支持:

  1. 多阶段执行
  2. 进度可观测
  3. 单阶段失败可定位
  4. 有限重试
  5. 可取消

3. 顶层状态

  • pending
  • running
  • succeeded
  • failed
  • cancelled

4. P0 阶段定义

当前 P0 推荐阶段:

  1. initializing
  2. understanding_input
  3. routing_entry
  4. planning_stage
  5. planning_units
  6. planning_scenes
  7. planning_practice
  8. assembling_stage_artifact
  9. persisting
  10. completed

5. 状态流

Mermaid 流程图
flowchart LR A["pending"] --> B["running"] B --> C["succeeded"] B --> D["failed"] B --> E["cancelled"] D --> B
查看结构源码
flowchart LR
    A["pending"] --> B["running"]
    B --> C["succeeded"]
    B --> D["failed"]
    B --> E["cancelled"]
    D --> B

说明:

  • failed 回到 running 表示阶段级重试
  • 当前不建议无上限重试

6. 重试规则

  1. 默认只允许有限次重试
  2. 优先按阶段重试,不整链路重跑
  3. 输入非法类错误默认不重试
  4. 外部 provider 波动类错误允许重试

7. 取消规则

任务取消后应:

  1. 标记 cancelled
  2. 停止后续阶段
  3. 保留已完成日志

8. 超时规则

建议至少为以下维度保留超时配置:

  • 任务总超时
  • 单阶段超时
  • 单 provider 调用超时

9. 审计日志协议

9.1 顶层字段

字段说明
logId日志 ID
jobId任务 ID
step当前阶段
eventType事件类型
timestamp时间戳
payload结构化内容
requestId请求关联

9.2 常见事件

  • job.created
  • step.started
  • step.completed
  • step.failed
  • job.cancelled
  • job.completed

10. 生成事件与运行事件的边界

10.1 生成事件

关注:

  • 任务生命周期
  • 阶段计划
  • 装配结果

10.2 运行事件

关注:

  • 播放
  • 切换
  • 作答
  • 检查点

二者不得混用同一事件语义层。

11. 结论

当前任务协议的重点不是做复杂工作流平台,而是先让:

  • P0 正向主链可追踪
  • 阶段失败可定位
  • 结果可审计

这样后续进入实现阶段时,课程生成才真正可工程化。