Files
Agent-System/.doc/test-reports/2026-09-16-wave2c-same-image-digest-test-report.md
weichenandCursor da15eb91b6 feat(infra): Wave 2C same-image digest pin for test/main promote
Build/apply candidate images once, require digests on promote, and keep
pinned env-service from rebuilding divergent images.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 14:44:26 +00:00

2.6 KiB
Raw Permalink Blame History

Wave 2C:同 digest 镜像晋升测试报告

一、 测试背景 (Background)

Wave 2B 已交付 nightly + promotion receipt,但 test/main 仍可能 docker compose up --build 另造镜像。本轮收口 PU5B:候选 commit 一次构建(或等价 retag)、receipt 携带 digests、晋升 apply + pinned --no-build。

二、 测试目标 (Test Objectives)

  • PASS receipt 含非空 image_digests(app/events/pi-agent)
  • candidate-images-apply test 后三服务 ImageID 与 receipt 一致
  • --require-digests 在缺 digest 时拒绝晋升
  • pinned 模式下 env-service 使用 --no-build

三、 测试方案与环境 (Test Plan & Environment)

项 值
分支 feature/wave2c-same-image-digest
基线 commit 7c808bdcfced…(fixture 源)
脚本 candidate-images-{build,apply}.sh、promotion-receipt-{write,check}.sh、env-service.sh
Compose docker-compose.test.yml / main.yml 支持 APP_IMAGE 等

四、 预期结果 (Expected Results)

  • app/events 共用同一 candidate ID;pi-agent 独立 ID
  • apply 后 shuimu-*-:test ID 与 receipt 一致
  • 空 digests 的 PASS → check BLOCKED

五、 实际测试结果与判定 (Actual Results & Evaluation)

C1 — require-digests PASS

  • Input:images.json + promotion-receipt-write --verdict pass + check --require-digests
  • Actual:OK — PASS receipt for 7c808bdcfced
  • Verdict:PASS

C2 — apply test ID 一致

  • Input:./scripts/candidate-images-apply.sh test --commit 7c808bd…
  • Actual:
tagged shuimu-agent-app:test -> sha256:44c114af…
tagged shuimu-agent-events:test -> sha256:44c114af…  (same as app)
tagged shuimu-pi-agent:test -> sha256:b8f9b525…
app PASS / events PASS / pi-agent PASS
  • Verdict:PASS

C3 — 缺 digests 负例

  • Input:fixture ffff… PASS 且 digests 全 null + --require-digests
  • Actual:BLOCKED — PASS receipt missing image_digests … app, events, pi-agent
  • Verdict:PASS

六、 自动化测试套件汇总 (Test Suite Execution)

合入冒烟(洁净环境):go vet ./...;go test -short ./...。

七、 测试结论与后续优化建议 (Conclusion & Next Steps)

  • 结论:单机 same-image digest pin + 晋升钩子已交付;FEATURE-MATRIX Artifact 可标 done(注明无远程 registry)。
  • 后续:Phase 2 Wave3 go/no-go;Phase 3 N7 U8 / Playwright 等遗留。

证据

  • .doc/test-reports/assets/promotion-receipts/7c808bd….json + .images.json
  • configs/.env.test.images(本地 pin,gitignore)