文件
hyb-oa/issues/2026-05-10_20-05-31-current-rc-deploy-r4-r5-closeout.csv
T

4.0 KiB

1IDTitleDescriptionAcceptanceTest_MethodToolsDev_StatusReview1_StatusRegression_StatusFilesDependenciesNotes
2C1最新 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|manualDONEDONEDONEissues/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,不手工修远端。
3C2受控部署最新 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|manualTODOTODOTODOdeploy/trialrun/deploy.sh|deploy/trialrun/docker-compose.yml|deploy/trialrun/runbook.md["C1"]部署属于受控发布写操作;不得同步本地 .env;不得打印 secret。
4C3部署后 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|manualTODOTODOTODOdocs/trialrun/deployment-preflight-2026-05-10.md|scripts/qa/check-public-bundle-copy.mjs|scripts/qa/check-live-smoke-env.mjs["C2"]C3 通过前不得让用户去企业微信验收当前改动。
5C4O3 与 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|manualTODOTODOTODOscripts/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 标为完成。