文件
hyb-oa/docs/trialrun/人工试运行报告.md
T

116 行
11 KiB
Markdown
原始文件 Blame 文件历史

此文件含有模棱两可的 Unicode 字符
此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。
# 人工试运行报告
**文档状态**:当前试运行证据摘要。
**适用时间**:DCL7 之后。
DCL7 已删除本文件中 R70-R91 的长流水历史,避免旧环境、旧开关和旧公网状态误导当前工作。历史全文可通过 git 恢复:`git show 5da05eb:docs/trialrun/人工试运行报告.md`。
## 当前结论
- R6 首轮小范围试运行已通过;范围是报销、请假、采购、审批、企业微信入口/通知、财务付款/导出。
- PC6、PA6、FL6、AP6、RI6、LP6、ME6 自动化、QG6、DG7/MRF7、MIA7 已完成相应收口。
- 2026-05-13 用户完成 iPhone 12、iPhone 14、Redmi K60 企业微信代表性真机主流程复测,`ME6-3` 已按主流程门禁关闭;iPhone 12 图文上下间距偏紧按非阻断观察项记录。
- MIF7-1..7 与 MIF7T 已完成本地整改、公网部署、公网匿名复检和带凭据 live smoke/OCR 复检;2026-05-13 已将包含 `cf2bba0` 的 MIF7T 代码部署到 `https://oa.hyinda.com`。
- MIF7TD 收口报告为 `artifacts/qa-flow/live-smoke-readiness-20260513-115455/`:公网 live smoke `3 passed`,真实 OCR `1 passed`,样票为重复发票可解释终态;`pending OCR` 因本地未注入 `DATABASE_URL` 记录 `SKIP`,不作为 MIF7-7 硬阻断。
- R7/OPS7/DOC7 是准备材料;真实 R7 未启动,需用户确认人员、窗口、回滚联系人、问题登记负责人和每日收口节奏,并先完成 R7E 自动门禁。
## 关键证据索引
| 批次 | 当前状态 | 证据入口 |
| --- | --- | --- |
| R6 | 已通过 | `issues/2026-05-11_10-23-41-r6-small-trialrun-prep.csv` |
| PS6 | 采购提交阻断已修复 | `issues/2026-05-12_01-12-20-r6-purchase-submit-budget-precheck-hotfix.csv` |
| PC6 | PC 工作台与审批信息架构已完成 | `issues/2026-05-12_01-40-00-r6-pc-workbench-ia-polish.csv` |
| PA6 | 权限与审计回归已完成 | `issues/2026-05-12_01-46-00-r6-permission-audit-regression.csv` |
| FL6 | 财务台账/导出增强已完成 | `issues/2026-05-12_01-43-00-r6-finance-ledger-export-v1.csv` |
| AP6 | 审批催办、超时提醒和效率摘要已完成 | `issues/2026-05-12_01-42-00-r6-approval-productivity-v1.csv` |
| RI6 | 报销票据体验已完成 | `issues/2026-05-12_01-44-00-r6-reimbursement-invoice-polish-v1.csv` |
| LP6 | 请假采购体验已完成 | `issues/2026-05-12_01-45-00-r6-leave-procurement-polish-v1.csv` |
| ME6 | 自动化、公网视觉和代表性企业微信真机门禁已完成 | `issues/2026-05-12_01-41-00-r6-mobile-experience-second-pass.csv` |
| QG6 | QA 治理已完成 | `issues/2026-05-12_01-47-00-r6-qa-governance-upgrade.csv` |
| MIA7 | 移动信息架构审查已完成 | `issues/2026-05-12_21-48-39-mobile-ia-visual-flow-review.csv` |
| MIF7 | 已收口;本地整改、返回语义、部署、公网匿名、真机门禁、带凭据 live smoke/OCR 均已通过 | `issues/2026-05-12_21-48-40-mobile-ia-flow-remediation.csv`、`issues/2026-05-13_00-38-05-mif7-follow-up-return-and-release.csv`、`issues/2026-05-13_11-37-02-mif7t-deploy-live-closeout.csv`、`artifacts/qa-flow/live-smoke-readiness-20260513-115455/summary.json` |
| MIF7T | 真机反馈移动体验统一整改已部署并完成公网复检 | `issues/2026-05-13_09-18-05-mif7-real-device-feedback-mobile-unification.csv`、`issues/2026-05-13_11-37-02-mif7t-deploy-live-closeout.csv` |
## 当前门禁
| 门禁 | 状态 | 说明 |
| --- | --- | --- |
| 公网地址 | 可用 | `https://oa.hyinda.com` |
| `/ready` | 通过 | 2026-05-13 `curl -fsS https://oa.hyinda.com/ready` 返回 `ok=true` |
| 企业微信个人应用消息 | 正式通知通道 | 企业微信只做入口、身份、消息和 deeplink |
| `ME6-3` 真机抽查 | 已关闭 | 2026-05-13 用户确认 iPhone 12、iPhone 14、Redmi K60 企业微信主流程通过;iPhone 12 间距偏紧为非阻断观察项 |
| MIF7-7 | 已关闭 | MIF7T 已部署;公网 `/ready`、public bundle、公网 MIF7 移动矩阵、带凭据 live smoke/OCR 均通过 |
| R7 真实执行 | 未启动 | 草案不等于启动 |
## MIF7-7 非人工自动化补验
执行时间:2026-05-13 01:35 前后。
| 检查项 | 结果 | 证据 |
| --- | --- | --- |
| MIF7 CSV 校验 | 通过 | `python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-12_21-48-40-mobile-ia-flow-remediation.csv` |
| MIF7F follow-up CSV 校验 | 通过 | `python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-13_00-38-05-mif7-follow-up-return-and-release.csv` |
| 前端类型与构建 | 通过 | `cd client && npm run typecheck`、`cd client && npm run build` |
| UI 设计规则 strict | 通过 | `node scripts/qa/check-ui-design-rules.mjs --strict`,扫描 126 个文件,0 findings |
| MIF7 移动专项 Playwright | 通过 | `cd client && npx playwright test tests/e2e/dg7-mobile-information-dedupe.spec.ts --workers=1 --reporter=list`,5 passed;截图目录 `output/playwright/mobile-ia-flow-remediation/` |
| R124 移动入口矩阵 | 通过 | `cd client && npx playwright test tests/e2e/r124-mobile-entry-matrix.spec.ts --workers=1 --reporter=list`,1 passed;截图目录 `output/playwright/r124-mobile-entry-matrix/` |
| 公网 `/ready` | 通过 | `curl -fsS https://oa.hyinda.com/ready` 返回 `ok=true` |
| 公网前端资源文案扫描 | 通过 | `PUBLIC_BASE_URL=https://oa.hyinda.com node scripts/qa/check-public-bundle-copy.mjs`,scanned=56,focused=4,findings=0 |
| 公网 live readiness | 通过,含 SKIP | `LIVE_SMOKE_BASE_URL=https://oa.hyinda.com QA_ISSUE_ID=MIF7-7 bash scripts/qa/run-live-smoke-readiness.sh`;报告目录 `artifacts/qa-flow/live-smoke-readiness-20260513-013545/`;live smoke、真实 OCR 因缺少凭据或样票按脚本规则 SKIP |
| 旧 R6 响应式专项 | MIF7T 后通过 | `tests/e2e/r6-mobile-responsive-system-hotfix.spec.ts` 7 个视口通过,截图目录 `output/playwright/r6-mobile-responsive-system-hotfix/` |
| 旧 MUD6 统一设计专项 | MIF7T 后通过 | `tests/e2e/r6-mobile-unified-design-rollout.spec.ts` 7 个视口通过,截图目录 `output/playwright/r6-mobile-unified-design-rollout/` |
| 旧 WCM6 企业微信渲染专项 | MIF7T 后通过 | `tests/e2e/r6-wecom-mobile-rendering-hardening.spec.ts` 8 项通过,截图目录 `output/playwright/r6-wecom-mobile-rendering-hardening/` |
| R108/R109 移动专项 | 明确跳过 | 两个专项仍因测试初始化 API 不可用按测试内规则 SKIP,未将 SKIP 伪造成视觉通过 |
历史结论:该轮非人工补验已证明 MIF7 当前专项、本地构建和公网匿名基础门禁通过;代表性企业微信真机主流程随后补充并关闭 `ME6-3`。当时 `MIF7-7` 因 live smoke 和真实 OCR 缺凭据/样票保持未完成;后续 MIF7TD 已补齐带凭据复检并关闭 `MIF7-7`。
## MIF7T 真机反馈与移动体验统一
执行时间:2026-05-13。
用户真机反馈已记录:三台设备主流程没问题;首页常用入口没有重复底部 Tab;财务首页已和普通/审批首页区分;审批人“已处理”详情返回仍停留在已处理;通知可直达详情并返回来源页;请假详情、采购详情和财务首页主流程通过。iPhone 12 图文上下间距相比其他设备偏紧,但未出现重叠或压字,按非阻断观察项处理。
新增问题已进入 MIF7T 并完成本地整改:普通角色首页降低资产扫码曝光,采购权限用户新增移动采购列表入口;请假页默认先展示记录,并保留“新建请假 / 请假记录”分段;报销、请假、采购列表卡片统一为整卡可点和右侧状态;删除草稿进入“更多”后再二次确认;在线无草稿时审批页不显示空“离线草稿”;报销、请假、采购、审批详情进入时滚动到顶部,返回按钮和 label-value 字段排布统一。
本批本地验证结果:
| 检查项 | 结果 | 证据 |
| --- | --- | --- |
| MIF7 / MIF7F / MIF7T CSV 校验 | 通过 | `validate_issues_csv.py` 三个合同均通过 |
| 前端类型与构建 | 通过 | `cd client && npm run typecheck`、`cd client && npm run build` |
| UI 设计规则 strict | 通过 | `node scripts/qa/check-ui-design-rules.mjs --strict`,扫描 127 个文件,0 findings |
| MIF7 移动专项 | 通过 | `tests/e2e/dg7-mobile-information-dedupe.spec.ts`,5 passed;截图目录 `output/playwright/mobile-ia-flow-remediation/` |
| R6 响应式矩阵 | 通过 | `tests/e2e/r6-mobile-responsive-system-hotfix.spec.ts`,7 passed;覆盖 320/360/375/390/393/414/430 |
| MUD6 统一设计矩阵 | 通过 | `tests/e2e/r6-mobile-unified-design-rollout.spec.ts`,7 passed;覆盖 320/360/375/390/393/414/430 |
| WCM6 企业微信渲染矩阵 | 通过 | `tests/e2e/r6-wecom-mobile-rendering-hardening.spec.ts`,8 passed;含 390 iPhone12 字体失败模拟 |
| R101 / R124 移动入口回归 | 通过 | `tests/e2e/r101-mobile-wip-closeout.spec.ts` 3 passed;`tests/e2e/r124-mobile-entry-matrix.spec.ts` 1 passed |
| R108 / R109 视觉专项 | SKIP | 初始化 API 不可用,按测试内规则跳过;不作为视觉通过证据 |
部署状态:MIF7T 已在 MIF7TD 中部署到 `https://oa.hyinda.com`,公网复检和带凭据 live smoke/OCR 已通过。
## MIF7TD 部署与带凭据收口
执行时间:2026-05-13。
| 检查项 | 结果 | 证据 |
| --- | --- | --- |
| MIF7TD / MIF7 / MIF7F / MIF7T / ME6 CSV 校验 | 通过 | `validate_issues_csv.py` 均通过 |
| 部署前本地门禁 | 通过 | `client typecheck`、`client build`、设计规则 strict、MIF7 专项 5 passed、R6/MUD6/WCM6 组合 22 passed、`git diff --check` 通过 |
| 受控部署 | 通过 | `bash deploy/trialrun/deploy.sh`;默认 `SYNC_ENV=0`,未覆盖远端 `.env`;部署包含 `cf2bba0` 的 MIF7T 代码 |
| 公网匿名复检 | 通过 | `curl -fsS https://oa.hyinda.com/ready` 返回 `ok=true`;public bundle `scanned=57 focused=4 findings=0` |
| 公网移动重点矩阵 | 通过 | `E2E_BASE_URL=https://oa.hyinda.com npx playwright test tests/e2e/dg7-mobile-information-dedupe.spec.ts --workers=1 --reporter=list`,5 passed;截图目录 `output/playwright/mobile-ia-flow-remediation/` |
| 带凭据 live smoke | 通过 | 报告 `artifacts/qa-flow/live-smoke-readiness-20260513-115455/`;`live-smoke.txt` 不含 `SKIP`,公网 live smoke `3 passed` |
| 真实 OCR | 通过 | 同一报告目录;`live-ocr.txt` 不含 `SKIP`,用例 `1 passed`;样票命中“该发票已用于报销,不能重复添加”,为重复发票可解释终态 |
| pending OCR 辅助扫描 | 非阻断跳过 | `pending-ocr.txt` 因本地未注入 `DATABASE_URL` 记录 `SKIP`,不作为 MIF7-7 硬阻断 |
结论:`MIF7-7` 已完成 `DONE/DONE/DONE`。公网当前可用于企业微信和浏览器复测 MIF7T 移动体验;R7 仍未启动,必须另建 R7E 执行合同后再进入真实扩大试运行。
## 历史恢复
需要追溯 R70-R91 的详细流水时,使用:
```bash
git show 5da05eb:docs/trialrun/人工试运行报告.md
```