此为预览文档,正式版本尚未发布。
创建并校验流程
以下示例使用 Bash、curl 和 jq。先按认证与空间准备 SERVICE_URL(Service 地址)、TOKEN(用户 Bearer token)、TENANT、NAMESPACE,并定义请求函数:
AGENT_ID 设为已经可执行任务的 Agent ID,APPROVER_ID 设为审批人的账号标识。下面的流程先生成报告,再等待人工审批:
key 在流程中唯一,边把前一步的状态与后一步连接。input 将输入字段映射为 CEL 表达式;这里将请求里的 request 交给 draft 节点。表达式可读取 run、issue、trigger 和前序 nodes,不能作为任意脚本执行器。服务端校验检查节点类型、引用、表达式及环路;目标运行时是否可用仍要在实际执行前确认。
发布版本并开始执行
校验通过后发布当前定义,保存返回的 revision ID。后续修改使用PATCH /api/v1/orchestration-definitions/{definitionId},传入 draftSpec 和 expectedVersion,然后再次发布。
跟进节点、输出与审批
/actions 提交实际的 request_id、expected_version 和 decision。审批通过后流程继续,应用密钥不能替代指定人员的身份。
逐步增加流程能力
例如增加等待
report.ready 的 signal 节点后,外部业务通过下面的 API 推进流程:
取消任务与运维控制
应用通过 Turn 的/cancel 取消当前任务,通过 capabilities 判断是否可以 /resume;再次从头执行时提交一个新的 Turn。以下 Run 接口供控制台运维和流程诊断使用,Run ID 从关联执行记录获取,不是 Turn ID。
POST /api/v1/orchestration-runs/{runId}/pause 阻止新节点调度,已运行步骤仍可能返回;/resume 恢复调度;/cancel 请求取消节点、任务和子运行,不会删除或验收 Issue。请求体可使用 {}。
终态后向 /rerun 提交 {"idempotencyKey":"weekly-report-retry-001"} 创建新的 Run,保留与原运行的关联;可加 input 替换输入。节点支持 timeoutSeconds、retry 和 failurePolicy,其中失败策略可选 fail_fast、continue、partial_success。重试不保证撤销已经发生的外部副作用。
应用创建 Session 时,使用 target:{"type":"workflow","id":"WORKFLOW_ID","revisionId":"REVISION_ID"}。省略 revisionId 时,Service 在创建会话时选择最新的已发布版本;已有会话不会自动切换到新版本。控制台设计器与运行图见控制台。