diff --git a/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/design.md b/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/design.md index 57f7be30..3cdfa187 100644 --- a/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/design.md +++ b/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/design.md @@ -98,6 +98,7 @@ PC 和移动卡片在未归属时显示明细下拉框和“确认关联”。 - 公网使用合成草稿覆盖:未归属恢复、缺票、金额识别失败、超票面、off/未 OCR 人工核对和正常提交;不得改真人单据做 smoke。 - 部署后核 `/ready`、bundle marker、B2 仍为 `force_on + global`,并确认四张真人单据状态未被部署改变。 - 应用异常时回滚到本轮部署前生产候选;本轮无 schema/数据迁移,已存在票据关系无需补偿。 +- 2026-08-31 首次发布在 init、应用切换、`/ready` 和 runtime smoke 通过后,被公网文案扫描拦截:4 处用户文案含内部术语 `OCR`。应用已按合同回滚至 `0f3ecfa`。根因不是公网扫描器,而是本地 `check-ui-design-rules.mjs --strict` 未进入本 task Test Plan;热修后把它提升为所有用户可见前端文案变更的提交前标准门禁,并以四词 E2E 断言防止同类回归。 ## 风险控制 diff --git a/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/implement.md b/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/implement.md index ac388dcf..e088b61a 100644 --- a/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/implement.md +++ b/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/implement.md @@ -45,6 +45,7 @@ - [x] 运行 `cd server && npm run prisma:validate`、聚焦 Vitest,必要时全量相关路由回归。 - [x] 运行 `cd client && npm run typecheck && npm run build` 及聚焦 Playwright。 - [x] 运行 `node scripts/qa/check-process-contract.mjs --baseline --json`、`node scripts/qa/audit-docs.mjs --check-registry`、`node scripts/qa/check-trellis-governance.mjs` 和 `git diff --check`。 +- [x] 部署失败热修:运行 `node scripts/qa/check-ui-design-rules.mjs --strict`,确保四个普通用户禁用术语(`绑定整单`、`不绑定明细`、`发票池`、`OCR`)在报销 PC/移动错误态均无命中;strict 扫描 148 个文件为 0 findings,self-test PASS,该门禁已在重新提交和部署前通过。 ## 7. 只读复核、提交与部署门 diff --git a/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/prd.md b/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/prd.md index 2957d405..17fb02eb 100644 --- a/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/prd.md +++ b/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/prd.md @@ -79,7 +79,7 @@ - 后端聚焦测试覆盖未归属、无关联 PDF、金额识别失败、完整金额超额、off/未执行 OCR 人工核对、混合金额证据、免票补助、flag off 兼容和 0014 类正常通过。 - 原子关联接口覆盖成功、权限、状态、跨单、已有归属与并发零写入。 - 前端单元/组件及 PC/移动 E2E 覆盖安全中文映射、就近定位、原子恢复、人工核对提示、可访问告警和内部 ID 不泄露。 -- 运行 Prisma validate、相关 Vitest、前端 typecheck/build、聚焦 Playwright、流程/文档/Trellis governance 与 `git diff --check`;部署后只用合成草稿做公网验收。 +- 运行 Prisma validate、相关 Vitest、前端 typecheck/build、聚焦 Playwright、`node scripts/qa/check-ui-design-rules.mjs --strict`、流程/文档/Trellis governance 与 `git diff --check`;凡修改用户可见前端文案,strict UI 文案门禁必须在提交和部署前运行,不能只依赖公网 bundle 扫描兜底。部署后只用合成草稿做公网验收。 ## Out of Scope diff --git a/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/task.json b/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/task.json index b13f2d83..1c4ac033 100644 --- a/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/task.json +++ b/.trellis/tasks/08-30-b2-submit-error-ocr-fallback/task.json @@ -15,7 +15,7 @@ "branch": null, "base_branch": "main", "worktree_path": null, - "commit": "8aed72d", + "commit": "fddf3a3", "pr_url": null, "subtasks": [], "children": [],