feat(ship): run every project test surface in regression
This commit is contained in:
@@ -31,6 +31,12 @@ ACK 配置必须使用以下 canonical `stopAt`:
|
||||
- `pr_opened`:提交说明、测试证据、风险和回滚信息已写入 PR;不能把草稿 PR 当 `review_ready`。
|
||||
- `merged`:目标分支的合并 commit 已确认,不能只确认源分支 commit。
|
||||
- `regression_passed`:以合并 commit 执行项目规定的完整回归;失败则回到修复或停止。
|
||||
回归 worker 必须先发现项目及其子项目的 tester catalog(使用
|
||||
`catalog.py roots --root <project-root>`),逐个测试根执行并记录独立快照;父仓库
|
||||
没有 catalog 不能遮蔽有 catalog 的 `app` 子项目。任一发现的测试根未执行或无证据,
|
||||
不得把阶段标为 `regression_passed`。还必须执行项目 profile 或
|
||||
`.pouch/ack/project.md` 声明的项目原生测试套件,并为每个套件记录命令和结果;任一
|
||||
测试面缺少结果时都不能通过回归。
|
||||
- `artifact_built`:对**合并后的精确 commit SHA** 调用 builder `obtain.sh`。`BUILD_VENUE=ci` 时监听该 SHA 的流水线并 inspect 产物,不在本机重新编译。无流水线、job 失败或 digest 对不上则本阶段失败,不得进入 `published`。项目若声明默认分支不构建,合进 `main` 会 `no_pipeline`:预览推 `dev/*`,正式打 tag。
|
||||
- `published`:镜像/APK 等外部分发位置可复核,记录 digest 或文件校验和。`venue=ci` 且 CI 已经 push 到 registry 时,obtain 成功即同时满足本阶段,不要再本机 `publish_docker.sh`。
|
||||
- `deployed`:目标服务运行在预期版本,健康检查和关键路径验证通过;生产部署还必须进入 `released`。
|
||||
|
||||
Reference in New Issue
Block a user