跳到主要内容
阅读约 3 分钟

任务与执行规格

一次研发执行如何被定义、什么在执行期间不可变,以及为什么不可变是产品可复现性的基础。

任务是什么

任务针对一个冻结的输入集合,执行一次研发目标。它绑定一份执行规格和一个沙箱,创建后异步进入运行状态机。

任务不等于一段对话。对话是持续交互的容器,可以跨越任意多轮;任务是一次有明确开始与结束、有冻结输入、有交付物的执行。同一个对话可以发起多个任务。

执行规格冻结了什么

执行规格在任务创建前解析完成,执行期间不可变。它冻结:

  • 创建者与工作范围;
  • 仓库引用与基线分支;
  • 初始流程快照;
  • 每个节点的精确能力版本——流程节点、模型、运行时、技能与扩展;
  • 成员凭据修订;
  • 输入引用与内容摘要。

执行规格不包含任何密钥。凭据在运行期由控制面注入运行环境,并在各组件就绪后立即删除,不进入镜像、仓库、规格、日志或事件。

为什么不可变

执行规格不可变,是为了让一次执行可以被重放和解释。

如果模型版本、技能版本或知识版本在运行中漂移,那么「这次任务为什么产出这个结果」就不再是一个可回答的问题。同样地,失败之后你也无法判断是代码问题还是依赖变化造成的。

因此重试、返工、重新开始与恢复都沿用同一份规格。任务运行中不允许以任何浮动引用刷新流程、节点或能力。

具体行为是:如果一个发布版本被后续标记为弃用,已引用它的任务不受影响;标签移动到新版本,也不改变已发布流程或在途任务。紧急安全撤销是另一套治理动作,需要显式终止受影响的沙箱。

预检:规格产生的过程

创建任务时先持久化记录并返回标识,随后进入用户可见的预检。预检是规格产生的唯一位置,也是所有授权检查的收敛点。

预检以当前用户与当前工作范围对规划结果重新授权。它不信任规划阶段给出的结论,而是用同一身份重新检查每个引用的可见性与权限,然后做确定性校验:依赖图无环、每个必需输入有且只有一个合法来源、产物类型契约兼容、预算与上限被显式冻结。

只有预检成功才创建沙箱。这是失败关闭的边界:预检失败不会创建一个半成品环境,也不会静默回退到更宽的权限。

三种流程来源

预检需要一份流程。它有三个来源:

智能编排是默认路径。平台先分析任务目标、已有需求、约束、交付物与验收条件,再按任务需求检索当前用户可见的已发布流程,对候选读取精确版本的完整契约并比较输入、输出、节点、依赖与能力。名字相似不等于适配。有满足任务的流程时优先复用精确版本;没有合适的才生成任务专属的临时流程。

使用已有流程由用户显式选择一个已发布版本。这条路径跳过模型规划,但仍必须经过预检与冻结。

创建流程进入独立创作页面,产出可发布的长期资产。

无论哪条路径,最终都经过同一套确定性编译器与摘要校验。

运行中重规划

已冻结的修订不允许原位修改。如果运行中发现计划不成立,Agent 可以提议新的流程修订,重新执行编译、权限与风险评估。初始规格保持不变,后续修订写入追加式计划日志,完整保留旧拓扑、变更原因、发起者与审批记录。

已完成节点只有在调用契约、输入、上游产物、节点模板与能力摘要全部兼容时才可复用;否则显式标记失效并重跑。重规划不能删除历史证据,也不能把尚未执行的新节点伪装成初始计划的一部分。

重建任务

从原任务重建会读取其业务输入,并以当前操作者身份创建一个新任务。它会重新冻结模型与凭据、能力锁与运行时,同时重新签发当前的知识访问策略。旧任务完整保留。

这个行为的意义是:重建不是恢复,而是用同一份意图在新条件下重新执行。