2.7 KiB
2.7 KiB
执行计划
1. 实施前
- 读取
.trellis/workflow.md、本 task PRD/design、前端 spec 与测试规约。 - 记录
git status --short,保护其他任务变更。 - 用户批准最新规划摘要后运行
task.py start 08-07-e2e-fixture-repair。 - 启动 loopback Vite;只使用合成 mock,不访问公网或真实账号。
2. 测试修复
- 在 R6 fixture 的
employee.roleCodes增加hr;不修改产品角色映射或添加伪权限字段。 - 保留
/mobile/leave?view=form与mobile-leave-form断言。 - 将 R111 PC、移动两处附件上传后断言改为语义化“查看补充附件”按钮定位。
- 搜索确认不存在本任务遗漏的同类
getByText("付款截图.png")。
3. 归档勘误
- 修正归档
implement.md中三处 R6 原因描述,保留临时 runner 历史事实。 - 修正归档
openclaw-test-prompt.md中两处错误诊断。 - 搜索确认归档目录不再把该失败描述为错误的产品/断言诊断。
- 更新父任务 PRD/design/implement:登记两个质量支撑子任务,并固定 fixture 修复先于采购/资产路由化。
4. 验证
- committed R6 spec 聚焦运行:7 passed,退出码 0。
- committed R111 spec 完整运行:2 passed,退出码 0。
cd client && npm run typecheck && npm run build。- task validate、process contract、Trellis governance、
git diff --check。 git diff --name-only -- client/src server为空。
5. 收尾
- 只读复核确认没有降低测试口径、删除断言或扩大真实权限。
- 使用中文 commit message 并引用
08-07-e2e-fixture-repair。 - 归档任务;不宣称部署、公网或企业微信真机已验证。
验证记录
- R6:7 个视口全部通过;
mobile-leave-form断言在 committed spec 中执行并通过。 - R111:PC 与企业微信 UA 用例均通过;两处附件断言均使用唯一语义按钮定位。
- 静态门禁:typecheck、build、task validate、process contract、Trellis governance、
git diff --check均通过;docs audit 0 errors,保留既有 22 个 warning。 - 边界:本地 Chromium/UA 模拟和合成 mock;未执行部署、公网、真实账号、企业微信真机或生产数据验证。
只读复核
- 未改产品运行时代码;没有删除或跳过
mobile-leave-form,没有使用.first()掩盖 R111 的重复定位。 - 当前 task 与父任务规划仍保留,提交和归档在最终门禁后执行。
回滚点
- 测试文件改动均为单行/小范围 fixture 与定位器调整,可独立回退。
- 归档勘误属于事实修正;除非新证据推翻权限链,不应回退为“表单已取消”的错误诊断。