搜索文档

浏览 Awaken Workforce 文档
Docs/Awaken Workforcev0.1.0/参考/参考Workflow 作者契约
提示·你正在阅读发布前文档(v0.1.0)。接口与行为在稳定发布前仍可能变化。

参考 · 参考

Workflow 作者契约

本页内容

当前 WorkflowAuthorDeclaration 请求格式,以及它如何降级为内部 ProcessSpec。

保存 Project 本地 revision:

POST /api/projects/{project}/workflows/{definition}/revision

请求必须包含 expected_override_versionidempotency_keydeclaration;未知字段拒绝。

{
  "expected_override_version": 0,
  "idempotency_key": "save-review-flow-1",
  "declaration": {
    "name": "Review flow",
    "description": "Accept one reviewed result",
    "icon": "lucide:badge-check",
    "start": "done",
    "states": {
      "done": {
        "name": "Done",
        "description": "The declared result is accepted",
        "icon": "lucide:circle-check",
        "state_group": "done",
        "completion": "completed",
        "transitions": []
      }
    }
  }
}

静态格式

范围必需可选
declarationnamedescriptioniconstartstatesinputsrequiresoutputsmax_iterations
statenamedescriptioniconstate_groupcompletiontransitionsinstructionspec_deliveryagent_sessionenvironmentagent_tool_profileslotsinputsoutputswip_limit
transitionkeynamedescriptionicontowhen

state_group 可为 backlogtodoin_progressreviewwaitingdonecanceledcompletion 可为 opencompletedcanceled

State slot 或为 { "responsibility": "executor", "agent": "workflow.requires.ROLE" },或为 responsibility 加 Actor/Team selector。最多允许一个 Executor。动态并行使用子 Issue 分解;join_policy 不是字段。

State input 引用 workflow.inputs.*workflow.requires.*states.*.outputs.*。output 声明类型化值或 Resource realization;Workflow output 投影 states.*.outputs.* 并形成终态验收契约。符号化 AuthorRef 在 Pack/Project 上下文解析, 保存后的运行 revision 使用精确引用。

Environment requirement 与选择

Environment requirement 包含 description 和 Environment AuthorRef

{
  "requires": {
    "build_environment": {
      "description": "Network- and package-constrained build execution",
      "environment": "build-linux"
    }
  },
  "states": {
    "build": {
      "environment": "build_environment"
    }
  }
}

保存 Workflow revision 时,该引用会解析为一个精确 Environment revision。Issue binding 时,同一 requirement key 选择 { "kind": "environment", "activation_id": "build-linux-active" }。activation 缺失、 disabled、漂移或指向不同 revision 时,dispatch 会 fail closed。参见 Environment

响应返回不可变 revision 与 Project override 结果;已有 Issue 保留固定 revision。仅清除 Project 默认值时,调用 POST /api/projects/{project}/workflows/{definition}/override/clear 并提交 expected_override_version