Skip to content

Workflow Engine: JSON DAG 工作流引擎 #16

@DankerMu

Description

@DankerMu

Part of #8

Dependencies: #10 (MVP-β 完成)

Description

自建轻量 JSON DAG 工作流引擎(~500 行),支持拓扑排序、异步并行执行、节点级重试/恢复、SSE 进度报告。预注册 5 个默认 handler。

OpenSpec Spec: `workflow-engine`

Tasks

  • 1.1 Implement JSON DAG parser + topological sort
  • 1.2 Implement async parallel executor (asyncio.gather per layer)
  • 1.3 Implement @engine.register decorator for handler registration
  • 1.4 Create workflow_node_runs table
  • 1.5 Implement node-level progress reporting via SSE
  • 1.6 Implement single-node retry + checkpoint resume
  • 1.7 Register 5 default handlers: chapter_summary, kg_extraction, lore_suggestion, consistency_check, export_chapter
  • 1.8 Wire chapter_mark_done event → chapter_complete_pipeline workflow
  • 1.9 Build workflow progress UI (DAG visualization + node status)
  • 1.10 Write tests for DAG parsing, parallel execution, retry, resume

Acceptance Criteria

  • JSON DAG 支持定义节点依赖和并行执行
  • 节点失败可单独重试,不影响已完成节点
  • chapter_mark_done 自动触发完整 pipeline
  • 前端可视化 DAG 执行进度

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions