开始后续运行 flow.continue-as-new
续段节点关闭当前历史段,并用新输入创建同一工作流的后续运行。它适合长期轮询、分页处理、周期维护和需要限制单段历史长度的过程。旧运行会提交续段终态,新的运行继承工作流定义、运行时构建和补丁标记,然后从开始节点重新执行。
后续输入
input 表达式构造新运行的启动数据。需要继续分页时,应携带稳定游标、累计结果引用和已经确认的业务状态。不要只依赖进程内计数或当前页面位置。输入应保持小而完整,让新历史段可以独立恢复,也能从审计记录解释它从哪里接续。
successor 端口表达作者图中的后继关系,旧运行提交终态后不会沿该端口继续执行普通节点。未消费信号存在时,引擎会拒绝续段,避免悄悄丢失已经到达的业务消息。取消清理期间也不能创建后续运行。需要并行独立过程时应使用子工作流,避免把续段误当成分叉工具。
历史与发布检查
测试应覆盖游标边界、空页、最后一页、重复续段请求、进程在创建后继前退出以及新旧运行关联。监控需要把各历史段串成一条业务链,并分别显示段 ID 与原始业务身份。发布新版本时确认后继仍被路由到兼容 worker,保留旧段重放所需代码,避免长运行在续段边界失去执行入口。
用它结束当前历史段,并以新输入创建后续运行。适合长期轮询、分页处理和需要控制单段历史长度的流程。
运行方式
后续运行继承工作流定义、运行时构建和补丁标记。successor 端口用于编辑器表达关系,不会让旧运行继续执行。
节点契约
- 类型
flow.continue-as-new- 角色
- 持久运行命令
- 运行绑定
continue_as_new- 持久身份
- 由图结构决定
配置属性
| 属性 | 类型与控件 | 默认值 | 规则 |
|---|---|---|---|
input后续运行输入 | dictA3SFlowExpressionInput | {"apiVersion":"a3s.dev/flow-expression/v1","expression":{"op":"field","path":"input"}} | 选择新运行启动时收到的数据。必填 |
端口
| 方向 | 端口 ID | 种类 | 数据类型 |
|---|---|---|---|
| 输入 | in进入 | control | FlowControl |
| 输出 | successor后续运行 | control | FlowControl |
节点 JSON 示例
CLI 会用 manifest 默认值生成同样的节点结构。画布位置、标题和选中状态属于展示数据。
workflow.json
CLI 用法
先查看当前安装版本的 manifest,再创建节点并验证完整工作流。所有命令输出 JSON。
Terminal
Skill 用法
安装包内附带 a3s-flow Skill。它会先查询 CLI 的节点清单,再创建、校验、编译并计算语义摘要。
Prompt
使用注意
- 新输入应带上确定性的游标和累计状态。
- 未消费信号存在时不能续段。
- 取消清理过程中不能创建后续运行。
