完成OA治理审查矩阵(05-27-oa-product-flow-test-policy-audit)

这个提交包含在:
2026-05-28 00:32:54 +08:00
父节点 6d8ee97b54
当前提交 4b148ccdd4
共修改 15 个文件,包含 386 行新增和 27 行删除
@@ -0,0 +1,55 @@
# 业务流程自动化测试覆盖矩阵
## Conclusion
当前测试不是空白,前端 Playwright 和后端 Vitest 覆盖已经很重。主要缺口集中在:制度签收、用印台账、发票验真真实 provider、合同/采购/付款的真实试运行样本证据,以及最终 Day 7 Go/No-Go 汇总。
## Tooling
| 层级 | 工具/命令 |
| --- | --- |
| Backend | `cd server && npm run prisma:validate && npm test` |
| Frontend static | `cd client && npm run typecheck && npm run build` |
| Frontend E2E | `cd client && npm run test:e2e` 或 focused Playwright |
| UI governance | `node scripts/qa/check-ui-design-rules.mjs` |
| Public smoke/readiness | `scripts/qa/run-oa-real-use-daily.sh`、`run-live-smoke-readiness.sh` |
| Trellis governance | `python3 ./.trellis/scripts/task.py validate <task>`、`node scripts/qa/check-trellis-governance.mjs` |
## Coverage Matrix
| 业务流 | 后端覆盖 | 前端覆盖 | 公网/真实覆盖 | 缺口等级 | 建议 |
| --- | --- | --- | --- | --- | --- |
| 登录/邮箱/找回密码 | `auth.login.test`、email service | `login-portal-ux.spec` | SMTP 已本地/部署验证 | 低 | 继续回归即可 |
| 报销创建/提交/撤回 | `reimbursements.create/detail/withdraw` | `main-flow`、`r102`、`reimbursement-workflow-progress` | OAOPS1 只读;真实写入靠人工 | 中 | Day7 前补人工真实样本 |
| PDF OCR/查重/附件 | `invoicePool.upload/patch/bindable`、`ocrJob`、`invoiceGovernance` | `invoice-ocr-flow`、`r111`、`r125` | live OCR 辅助复核 | 低/中 | 自动验真另列 |
| 发票验真 | `verification.*`、`invoicePool/verification` | 票据中心未覆盖真实 provider | 无真实 provider | 高 | POC 后补 provider 单测和 E2E |
| 审批中心/自审/转审 | `workflow.*`、`utils/workflow` | `workflow-*`、`permission-direct-access` | OAOPS1 只读 | 低/中 | 真实业务闭环继续人工 |
| 付款批次/AP/回单 | `paymentBatches`、`financeLedger`、exports | `reimbursement-payment-batch-flow`、Wave4 | 历史公网短窗口和只读巡检 | 中 | Day7 真实付款闭环证据仍需人工 |
| 采购/费用 | `purchase.*` | `procurement-flow`、移动采购页 | 只读巡检 | 中 | 真实采购样本和制度参数待补 |
| 合同/项目 | `contractsRegistry`、`projects` | `project-workbench`、合同台账页面 | 只读巡检 | 中 | 合同归档/用印样本待补 |
| 资产/盘点/移动扫码 | `assets.*`、inventory | `assets-flow`、MobileAssetScan | ASSET1 证据 | 低/中 | 账号交接证据待制度映射 |
| 员工制度签收 | 员工培训/档案有部分 route 测试 | 无专门签收页 | 无 | 高 | 先人工签收;如阻断再开发 |
| 权限/审计 | `permissions.*`、audit/export | `permission-direct-access`、`settings-governance` | OAOPS1 只读 | 低 | 继续每日巡检 |
## Focused Test Gap List
1. 发票验真 provider POC:provider adapter 单测、feature flag、费用控制、失败降级、票据中心动作 E2E。
2. 制度签收:人工证据先行;若开发,需员工签收 API、不可抵赖记录、公告区分、权限与导出测试。
3. 用印台账:如果现有合同台账字段不足,需合同/用印字段、附件审计、导出和权限测试。
4. Day 7 真实闭环:人工真实报销、采购/费用、合同台账、付款/AP、权限/审计证据应汇总到 OALAUNCH1。
5. 备份恢复:最终启用前仍需独立批准的受控恢复演练证据。
## Commands Observed This Round
- `node scripts/qa/check-ui-design-rules.mjs`:scanned 133 files, 0 findings.
- 任务治理校验在收口阶段执行。
## Testing State Capsule
Goal: 建立业务流程测试覆盖矩阵,不新增测试代码。
Repo signals: Backend Vitest, Frontend Playwright, Vite typecheck/build.
Unit commands: 待最终收口执行 Trellis/task governance;未跑全量 Vitest。
Integration commands: 未执行全量 E2E;本轮引用既有测试清单和 OAOPS1 公网证据。
Assumptions: 审查型任务不要求跑完整回归,只要求识别覆盖和缺口。
Last result: UI design static scan 0 findings.
Next action: 后续专项按缺口补 focused tests。