7.4 KiB
7.4 KiB
| 1 | ID | Title | Description | Acceptance | Test_Method | Tools | Dev_Status | Review1_Status | Regression_Status | Files | Dependencies | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | QAOPS9-0 | QAOPS9 连续合同建档 | 建立 R7E 后上线硬化连续合同,承接 QAOPS8 收口后的公网业务流测试数据、live smoke 账号链路、恢复演练窗口和 SLO/Go-No-Go 自动化增强;本合同只规划和硬化,不改业务需求。 | 1) CSV 校验通过;2) 文档索引和事实源矩阵登记 QAOPS9;3) 不修改 server/src 或 client/src 业务代码;4) 允许仅为门禁安全补 scripts/qa 过滤能力;5) 不部署、不执行生产恢复、不重置数据库、不打印远端 env。 | 流程级验证:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-16_00-19-20-qaops9-release-hardening.csv;node scripts/qa/audit-docs.mjs --check-registry;git diff --check;人工核对 git diff 仅包含 issues/docs/scripts/qa。 | python3|node|git|manual | DONE | DONE | DONE | issues/2026-05-16_00-19-20-qaops9-release-hardening.csv|docs/文档索引.md|docs/文档事实源状态矩阵.md|docs/trialrun/人工试运行报告.md|scripts/qa/run-business-flow-gates.sh | [] | 2026-05-16 建档并二次细化;承接 QAOPS8-19/20 和 FBA 建议;回滚路径为回退本 CSV、索引登记和脚本过滤参数;不影响运行环境。 |
| 3 | QAOPS9-1 | 公网业务流测试数据稳定化 | 把 R7E 暴露的本地旧种子账号和公网真实 smoke 账号链路差异收敛为可复跑测试数据方案,覆盖报销、审批、请假、采购、财务只读确认和权限边界。 | 1) 明确公网业务流推荐账号链路;2) 旧本地种子失败项不误判为产品失败;3) 隔离本地可变更测试和公网 flag-off 证据分离;4) 失败时能区分账号、权限、数据和产品缺陷。 | 受影响流程:员工提交报销、请假、采购后由审批人处理,财务只读查看已审批报销且 payment_batch_v1 仍关闭;验证步骤:先用 LIVE_SMOKE_BASE_URL=https://oa.hyinda.com node scripts/qa/check-live-smoke-env.mjs --json 只读核对前置;再在隔离临时库执行 BUSINESS_FLOW_GROUPS=reimbursement,approval,leave,procurement,governance BUSINESS_FLOW_EXCLUDE_SPECS=tests/e2e/reimbursement-payment-batch-flow.spec.ts bash scripts/qa/run-business-flow-gates.sh local 并核对 summary;公网付款批次仍只能以 flag_force_off 或 payment_batch_v1_disabled 作为关闭证据。 | bash|node|manual | TODO | TODO | TODO | scripts/qa/run-business-flow-gates.sh|scripts/qa/check-live-smoke-env.mjs|artifacts/qa-flow|docs/trialrun/人工试运行报告.md | ["QAOPS9-0"] | 不得重置生产数据库;不得用重试替代缺陷分析;reimbursement-payment-batch-flow.spec.ts 会开启 payment_batch_v1,只能用于隔离功能回归,不能作为公网 flag-off 通过证据。 |
| 4 | QAOPS9-2 | live smoke 账号链路校准 | 校准 live smoke 账号、角色、直属主管、企业微信绑定和真实 OCR 样票前置,避免凭据缺失或账号链路漂移导致公网门禁不可解释。 | 1) live smoke 所需账号和角色矩阵清楚;2) 凭据缺失只记录 SKIP;3) 不打印 token、密码、cookie 或远端 env;4) 企业微信入口、deeplink、PDF OCR 和图片 OCR 前置条件分离。 | 受影响流程:员工、审批人、财务和管理员通过公网入口完成登录、待办、通知 deeplink 和 OCR readiness 检查;验证步骤:LIVE_SMOKE_BASE_URL=https://oa.hyinda.com node scripts/qa/check-live-smoke-env.mjs --json 生成前置摘要;如具备凭据和 PDF 样票,再执行 LIVE_SMOKE_BASE_URL=https://oa.hyinda.com QA_ISSUE_ID=QAOPS9 bash scripts/qa/run-live-smoke-readiness.sh;缺正式凭据、DATABASE_URL、授权 PDF 样票或授权图片样票时按脚本规则记录 SKIP,不回填 DONE。 | bash|node|manual | TODO | TODO | TODO | scripts/qa/run-live-smoke-readiness.sh|scripts/qa/check-live-smoke-env.mjs|docs/trialrun/公网LiveSmoke准备清单.md | ["QAOPS9-0"] | 只记录摘要和证据路径;不得泄露密钥或个人隐私;当前 live OCR 基线仍是 PDF-only,无授权图片样票时图片 OCR 不计 PASS。 |
| 5 | QAOPS9-3 | 恢复演练窗口与 dry-run 设计 | 把 QAOPS8 的恢复演练准备推进为可执行 dry-run 方案,先限定非生产或隔离环境,明确窗口、责任人、备份核验、恢复验证和停止条件。 | 1) 恢复演练范围、窗口和负责人明确;2) 演练优先非生产或隔离环境;3) 生产只做只读预检或步骤复盘;4) 未获单独批准不得执行生产恢复或服务切换。 | 受影响流程:备份清单核对、隔离库恢复、/ready、登录和核心业务只读验证;验证步骤:rg -n '备份|恢复演练|RTO|RPO|停止条件|生产恢复|migrate reset|SYNC_ENV' docs/trialrun/OPS7运维交接Runbook.md docs/ops/非功能基线.md;人工形成 dry-run checklist,若执行恢复只能在非生产或隔离环境记录命令摘要、RTO/RPO 实测和验证截图路径。 | manual|rg | TODO | TODO | TODO | docs/trialrun/OPS7运维交接Runbook.md|docs/ops/非功能基线.md|artifacts/qa-flow | ["QAOPS9-0"] | 禁止生产恢复、重置数据库、覆盖远端 env 或破坏性命令;真实恢复必须另获批准并记录回滚责任人。 |
| 6 | QAOPS9-4 | SLO 与 Go-No-Go 自动化增强 | 增强上线或扩大试运行前的 SLO、错误预算和 Go/No-Go 自动化汇总,形成可复跑、可审计的门禁结果。 | 1) /ready、public bundle、live smoke、核心业务流和移动矩阵状态能汇总;2) Go、Pause、No-Go 条件清楚;3) SKIP 不被写成 PASS;4) 输出可关联 Issue 和证据路径。 | 受影响流程:上线前门禁汇总覆盖匿名健康、带凭据业务流、移动矩阵和人工真机结论;验证步骤:curl -fsS https://oa.hyinda.com/ready;PUBLIC_BASE_URL=https://oa.hyinda.com node scripts/qa/check-public-bundle-copy.mjs;LIVE_SMOKE_BASE_URL=https://oa.hyinda.com QA_ISSUE_ID=QAOPS9 bash scripts/qa/run-live-smoke-readiness.sh;隔离业务流使用 BUSINESS_FLOW_EXCLUDE_SPECS=tests/e2e/reimbursement-payment-batch-flow.spec.ts;移动矩阵按 DG7/R124 或当前试运行手册指定用例执行;人工汇总 Go/Pause/No-Go,SKIP 不计 PASS。 | curl|node|bash|playwright|manual | TODO | TODO | TODO | scripts/qa|docs/ops/SLO错误预算.md|docs/trialrun/发布试运行准备清单.md | ["QAOPS9-1","QAOPS9-2"] | 可改脚本或文档时需另列实现方案;付款批次仍关闭时,不得把隔离打开 flag 的测试结果写成公网付款批次通过。 |
| 7 | QAOPS9-5 | 证据归档与阶段收口 | 在 QAOPS9 执行完成后回填 CSV 状态、证据路径、文档索引和事实源矩阵,形成是否可进入 P2 功能决策或上线动作的结论。 | 1) QAOPS9 各行 DONE 均有 Test_Method 证据;2) 未完成项有 owner、阻断原因和下一步;3) 文档索引与事实源矩阵一致;4) 本轮是否部署和公网状态明确。 | 受影响流程:测试、发布和运维治理闭环;验证步骤:validate_issues_csv.py 本 CSV;node scripts/qa/audit-docs.mjs --check-registry;rg -n 'QAOPS9|Go-No-Go|live smoke|恢复演练|SLO' docs issues;git diff --check。 | python3|node|rg|git|manual | TODO | TODO | TODO | issues/2026-05-16_00-19-20-qaops9-release-hardening.csv|docs/文档索引.md|docs/文档事实源状态矩阵.md|docs/trialrun/人工试运行报告.md | ["QAOPS9-1","QAOPS9-2","QAOPS9-3","QAOPS9-4"] | QAOPS9 完成前不得默认进入付款批次或图片 OCR 实现;如发现 P0/P1 阻断,优先收口硬化问题。 |