add delivery workflow skills

This commit is contained in:
2026-10-12 20:34:20 +08:00
parent c9faedc39d
commit ab29598a9a
13 changed files with 339 additions and 0 deletions
@@ -0,0 +1,49 @@
# Delivery Loop 状态机
## 状态
```text
change_ready -> verified -> pr_opened -> merged -> regression_passed -> artifact_built -> published -> deployed
```
入口可以从已有状态开始,但不能跳过本次变更所需的验证。内部里程碑可以更细,但项目
ACK 配置必须使用以下 canonical `stopAt`:
- `verified`:只完成代码和验证。
- `validation_ready`:不可变产物已部署到开发/测试环境并通过健康检查,可交给用户验证。
- `review_ready`:PR/MR、预览产物和非生产验证证据已齐备,等待审核。
- `released`:经过本次 approval 后完成稳定发布或生产部署。
入口 skill 的自然语言停止点映射如下:
| 用户目标 | ACK stopAt | 必要内部里程碑 |
| --- | --- | --- |
| 只验证 | `verified` | `verified` |
| 发 PR | `review_ready` | `pr_opened`,必要时预览构建/测试 |
| 部署测试环境 | `validation_ready` | `artifact_built`、`deployed`、健康检查 |
| 合并后回归但不发布 | `review_ready` 或任务级中间状态 | `merged`、`regression_passed` |
| 完整正式部署 | `released` | `merged`、`regression_passed`、`artifact_built`、`published`、`deployed` |
## 每个阶段的要求
- `change_ready`:记录基线 commit、工作树、目标分支、任务范围和风险。
- `verified`:根因或需求验收明确;自动测试和必要的黑盒/真机验证通过。
- `pr_opened`:提交说明、测试证据、风险和回滚信息已写入 PR;不能把草稿 PR 当 `review_ready`。
- `merged`:目标分支的合并 commit 已确认,不能只确认源分支 commit。
- `regression_passed`:以合并 commit 执行项目规定的完整回归;失败则回到修复或停止。
- `artifact_built`:产物由合并后的 commit 构建,记录版本、文件和 SHA256。
- `published`:镜像/APK 等外部分发位置可复核,记录 digest 或文件校验和。
- `deployed`:目标服务运行在预期版本,健康检查和关键路径验证通过;生产部署还必须进入 `released`。
## 配置和授权
读取项目自己的 delivery 配置,不把命令、主机、秘密复制到通用 skill。优先使用 ACK
的 `delivery.yaml`、builder/deployer/tester 契约和项目版本策略;缺失时停止在最近的安全状态。
生产部署必须同时满足:项目 profile 允许、目标明确、构建来源已固定、回归证据完整、当前
请求覆盖生产部署。没有这些条件时只能报告,而不能用“用户之前说过发布”替代当前授权。
## 证据账本
至少记录:基线和最终 commit、工作树状态、测试命令及结果、黑盒/真机证据、PR/MR URL、
合并 commit、tag、产物路径与摘要、部署节点/服务、健康检查、失败项和回滚指针。