Skip to content

docs: align dag workflow guides with schema and auto-resume behavior #508

Description

@LeXwDeX

Why

DAG 文档/提示词与工具实现的全面校验(2026-09-02)发现四处不符,其中一处会直接诱导调用失败:

  1. resume 指引过时(会诱导调用失败)workflow.md:343:552orchestration-policy.md:335-336 教模型在 control(replan) 后手动 control(resume);实现中 replan/extend 成功后自动 resume 暂停中的 workflow(packages/opencode/src/tool/workflow.ts:672-689,727-748,输出注记 "has been resumed"),且状态机 RUNNING 无自环(packages/opencode/src/dag/core/types.ts:201-202)——按文档操作必炸 InvalidTransitionError
  2. Node Fields 表不穷尽workflow.md:556-572 自称 "The listed node and default fields are exhaustive" 却遗漏 review 字段(validation.ts:225-234 实有 phase∈design|diffimplementation_node_id?verification_node_id?
  3. Tool Reference 漏 actionworkflow.md:510-577 仅列 9 个 action,缺 draft(schema :115-125 自称 "Preferred over hand-writing YAML",且 Orchestration Router 主推)与 guide(:108-114);validate 有提
  4. name 定义不完整workflow.md:67-68 说"无路径分隔符且无 .yaml/.yml 扩展名即 name";实现 isName 还排除前导 . 与控制字符(workflows.ts:68-78),.foo 实际走路径分支报错

Scope

  • packages/core/src/plugin/command/workflow.md
  • packages/core/src/plugin/command/orchestration-policy.md

Approach

逐处修正,无行为改动:

  1. resume 段改为"replan/extend 成功后自动 resume;仅当自动 resume 与并发操作竞态失败时才手动 control(resume)",同步修 workflow.md:343 流程描述与 policy 恢复序列
  2. Node Fields 表补 review 行:(deep review workers) phase: design|diff;implementation_node_id? / verification_node_id?(diff review 必填两者)
  3. Tool Reference 补 draft {title?, config}(含 "Preferred over hand-writing YAML" 定位与 spec_path 返回)与 guide {topic?} 两行,字段与 schema :108-125 一致
  4. name 定义补"前导 . 与控制字符除外(它们走路径分支)"

Acceptance

  • 以 2026-09-02 校验报告的差异清单为基线,四项逐条关闭;修正后的声明与 schema/实现逐字核对一致
  • 纯文档改动:bun run lint 无新增告警,无代码行为变化

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions