4.0 KiB
4.0 KiB
| 1 | ID | Title | Description | Acceptance | Test_Method | Tools | Dev_Status | Review1_Status | Regression_Status | Files | Dependencies | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | C1 | 最新 RC 基线与部署前提确认 | 固定当前业务/组织 release candidate 基线为 930dbce,并确认 O2 已完成、远端备份/回滚路径可用、默认 SYNC_ENV=0;本步骤不部署。 | 1) 工作区除本合同外无业务代码变更;2) 业务/组织目标基线为 930dbce;3) O2 DONE/DONE/DONE;4) 部署前备份和回滚路径引用既有 D2/E1-E3 证据;5) R5 仍未宣称完成。 | 流程级验证:git status --short;git log --oneline -3;python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-10_18-25-33-formal-approval-org-config.csv;只读确认 deploy/trialrun/backups 存在新近备份;确认 SYNC_ENV 未设为 1。 | git|python3|ssh|manual | DONE | DONE | DONE | issues/2026-05-10_20-05-31-current-rc-deploy-r4-r5-closeout.csv | [] | C1 completed:业务/组织基线 930dbce,包含 8da16f5 移动/自审收口、ccef809 正式规约、465cd14 O1、930dbce O2;远端存在部署前备份 hyb-oa-db-20260510_134340.dump 与 hyb-oa-storage-20260510_134341.tar.gz;当前进程 SYNC_ENV!=1;不修改 .env,不手工修远端。 |
| 3 | C2 | 受控部署最新 RC | 使用既有 deploy/trialrun/deploy.sh 同步最新 RC 到 /opt/hyb-oa-trialrun,执行脚本内置构建、init、/ready 和 smoke;默认不覆盖远端 .env。 | 1) deploy 脚本成功;2) SYNC_ENV=0;3) /ready 200;4) Prisma migrate deploy/status 成功;5) 失败时停止并记录,不进入 C3/C4。 | 流程级验证:bash deploy/trialrun/deploy.sh;检查脚本输出 env contract、rsync、容器构建/重建、init、Prisma migrate status、/ready、external deps smoke、runtime smoke、公网 bundle 扫描。 | bash|ssh|node|manual | TODO | TODO | TODO | deploy/trialrun/deploy.sh|deploy/trialrun/docker-compose.yml|deploy/trialrun/runbook.md | ["C1"] | 部署属于受控发布写操作;不得同步本地 .env;不得打印 secret。 |
| 4 | C3 | 部署后 R4 只读复检 | 部署成功后重新执行 R4 只读复检,确认远端关键运行时文件、服务状态、Prisma、Caddy、企业微信 config 和公网 bundle 均可核对。 | 1) 关键文件哈希与本地目标版本一致;2) server/db 容器健康;3) Prisma migrate status up to date;4) /ready 200;5) Caddy active 且反代正常;6) 企业微信 config ready 且不含 secret;7) 公网 bundle 扫描 findings=0。 | 流程级验证:远端 sha256sum 对比 workspaceSettings.js/NavLinks.tsx/workflow.js;node scripts/qa/check-public-bundle-copy.mjs https://oa.hyinda.com;node scripts/qa/check-live-smoke-env.mjs --strict;只读检查 Caddy 与 Prisma migrate status。 | ssh|node|manual | TODO | TODO | TODO | docs/trialrun/deployment-preflight-2026-05-10.md|scripts/qa/check-public-bundle-copy.mjs|scripts/qa/check-live-smoke-env.mjs | ["C2"] | C3 通过前不得让用户去企业微信验收当前改动。 |
| 5 | C4 | O3 与 R5 自动化/真机门禁 | 在最新 RC 部署并 R4 复检通过后,执行可自动化的公网 live smoke、真实 OCR 和正式审批链分配检查;企业微信真机与负责人审批动作为人工门禁。 | 1) run-live-smoke-readiness.sh 通过;2) SMOKE002 提交测试单据后低/中额待办分配给 majianyong;3) 高额/例外链路可验证进入 majianyong -> wangshunli 或记录阻断;4) 真机未验收时 O3/R5 不得标 DONE;5) 所有失败项有证据。 | 流程级验证:set -a; source ~/.hyb-oa/live-smoke.env; set +a; LIVE_SMOKE_BASE_URL=https://oa.hyinda.com bash scripts/qa/run-live-smoke-readiness.sh;按 docs/trialrun/real-device-public-checklist.md 人工记录企业微信工作台、移动报销、审批 deeplink、正式审批矩阵。 | bash|playwright|manual | TODO | TODO | TODO | scripts/qa/*|docs/trialrun/real-device-public-checklist.md|issues/2026-05-10_12-39-37-release-readiness-live-smoke.csv|issues/2026-05-10_18-25-33-formal-approval-org-config.csv | ["C3"] | 如果缺 majianyong/wangshunli 人工操作或真机截图,只能记录 BLOCKED/SKIP,不能把 O3 或主 R5 标为完成。 |