revert(ack): restore three-role collaboration scope

This reverts commit a0f1c15b85.
This commit is contained in:
2026-08-01 17:48:33 +08:00
parent a0f1c15b85
commit f02a34e751
21 changed files with 58 additions and 871 deletions
+3 -28
View File
@@ -13,11 +13,6 @@ ACK 是一个显式调用的 Agent Skill,用三种独立角色运行工程协
构建 DEB 或镜像、发布产物、创建 PR,并在授权范围内部署。交付配置默认关闭,
稳定发布与生产部署始终保留人工批准点。
显式调用 `$ack` 也可以直接处理一次性交付:ACK 根据请求把源码发布/发布 PR、DEB、
Docker 镜像分别路由给 `manage-release``deb-publisher`
`publish-docker-image`。实际操作由独立 Operator 执行;它使用与 Test 相同的低成本
模型和 reasoning effort,但不复用 Test terminal,也不进入 Developer → Test 闭环。
## 安装
全局安装:
@@ -142,23 +137,6 @@ PR、产物摘要、部署目标、健康检查和日志引用写入 `tasks.yaml
profile 只能停在 `review_ready`;稳定发布或生产部署必须经过对应 approval 步骤。
具体契约见 `references/delivery.md`
## 一次性交付路由
直接发布时可以说:
```text
$ack 为 v1.4.0 创建 release PR,合并后打 tag。
$ack 把 1.4.0 的 amd64 DEB 发布到 testing 仓库。
$ack 把当前提交发布成 registry.example.com/team/app:1.4.0。
```
源码版本生命周期和一次性 PR/MR 路由到 `manage-release`DEB/APT 路由到
`deb-publisher`Docker/OCI 镜像路由到 `publish-docker-image`。普通 PR/MR 只执行
`manage-release``PR-only` 流程,不会被误当成完整版本发布;功能任务 verified 后
按 profile 自动开 PR 时仍使用 ACK 原有的 `pull-request` 动作。一次性交付要求任务板配置
`defaults.operator`;当前模板已经提供,并强制其 CLI、standard 模型和 reasoning
effort 与 Test default 相同。详见 `references/delivery-routing.md`
## 启动 Worker
worker 的机器配置位于 `tasks.yaml.project.orchestration`:项目显式维护模型
@@ -195,8 +173,7 @@ argv,忽略调用者 PATH、使用环境 allowlist,并验证真实 Git workt
通过仓库外的单次启动记录、terminal-bound nonce/proof 和受限 bootstrap 调用 Orca。
返回的 receipt 含 `runtimeId`、handle、incarnation、profile hash、slot 和 worktree
identity。Coordinator 将 receipt 追加到顶层 `workerReceipts`,再把 receipt ID
写入任务的 `dispatch.developer``dispatch.test``dispatch.operator`,并同步写入
本轮 `attemptId`
写入任务的 `dispatch.developer``dispatch.test`,并同步写入本轮 `attemptId`
校验器要求 receipt 与当前 ACK task、角色、profile 和 attempt 完全一致;历史 receipt
不能跨任务或跨轮次改挂。
@@ -246,7 +223,5 @@ ACK 会自动读取 `delivery.yaml`,无需再逐步提醒它构建、上传、
当前 Skill 版本见 `VERSION`。新项目在 `tasks.yaml` 中以合法 SemVer 记录
`ackVersion`。从 `0.10.0` 起,`project.orchestration` 与顶层 `workerReceipts` 必须
同时存在;从 `0.11.0` 起,新项目还会生成默认关闭的 `delivery.yaml`,并在任务板声明
`project.deliveryFile``deliveryRuns`;从 `0.12.0` 起,新模板包含与 Test 同档模型
Operator,用于一次性交付路由。旧项目可以不迁移而继续使用原闭环,但补齐 Operator
前不能使用一次性交付。旧项目的 `kitVersion` 可以继续读取,但建议迁移为
`ackVersion`
`project.deliveryFile``deliveryRuns`。旧项目可以不迁移而继续使用原闭环。旧项目
`kitVersion` 可以继续读取,但建议迁移为 `ackVersion`