docs(pl): 记录合同双页签验收及最终组合验证和数据库验证缺口。

This commit is contained in:
wuzilong committed 2026-11-01 23:40:25 +08:00
1 parent 144a3cb236
commit fa83353e4b
3 files changed
+19 -8

No files matched your search

@@ -132,11 +132,21 @@ Task 6A证据:`4cb2d88da`、`1ede95841`、上传修复`eb12c755d`、列顺序`
Files: `web-admin/src/views/crm/contract/components/ContractDetailDialog.vue`及相关行为测试。
- [ ] 合同详情在“合同证件与额度”后接入独立“运输计划合法使用证明”lazy Tab,按证明菜单权限显示并固定当前contractId;两个Tab不能合并,复用6A组件。
- [ ] 更新两个Tab的菜单权限初始化与用户上下文epoch,切租户/合同清空旧响应;不格式化无关合同详情代码。覆盖顺序、固定合同、权限和迟回保护,提交双审。
- [x] 合同详情在“合同证件与额度”后接入独立“运输计划合法使用证明”lazy Tab,按证明菜单权限显示并固定当前contractId;两个Tab不能合并,复用6A组件。
- [x] 更新两个Tab的菜单权限初始化与用户上下文epoch,切租户/合同清空旧响应;不格式化无关合同详情代码。覆盖顺序、固定合同、权限和迟回保护,提交双审。
Task 6B证据:`144a3cb23`,规格和质量审查通过;相关54项回归通过,质量独立12项通过。父详情按完整用户会话与visible隔离权限和详情响应,保护复制关闭后同步读取,切租户关闭/清理旧详情。最终构建产物实际浏览器打开CRM合同详情,确认页签顺序为运输计划→合同证件与额度→运输计划合法使用证明;c2只展示本合同段且1/1,关闭切c3为0/1,无其他合同主体,所有证明请求带contractId,unknown/pageerror为0。截图`contract-proof-task6b.png`与`contract-quota-task6b.png`已查看,日志`browser-task6b.log`。
## Task 7: 最终验证与交付
- [ ] 使用主目录venv运行受影响后端pytest;Web运行定向tsx/node:test、pnpm build与类型检查,已知历史错误单列;共享手机API测试。审查固定base/head,规格合格后质量审查;修复所有阻塞。
- [ ] 在允许的本地测试环境以合成响应验证页面/弹窗及合同切换、加载失败、保存状态;未获服务启动授权则使用不启动业务后端的组件浏览器测试,缺口如实记录。MySQL真实事务验证保留未执行,不以SQLite冒充。
- [ ] 更新OpenSpec/tasks、SQL执行指引、工单和提交证据,按已授权推送任务分支,保持工单开放至验收;不自动合并或执行SQL。
最终组合验证(业务提交`144a3cb23`):
- 后端使用主目录venv在本worktree运行quota所有模块、旧/新证明与子数据差量保存:523 passed,14条既有依赖警告,17.25秒;SQLite合成数据,日志`backend-final.log`。
- Web运行quota-*、stop-documents、attachment-upload-reactivity、contract-proof-tab、证件和移动模型、mobile-pl-record-identity:194 passed;小程序pl-child-identity:2 passed。日志`web-final.log`及`miniprogram-identity.log`。
- 最终`pnpm build`39.61秒成功,保留既有chunk/UserSelector警告;`vue-tsc --noEmit`退出2,错误归一化499→499、新增0、减少0,不能称全量类型检查通过。日志`build-final.log`、`typecheck-final.log`。
- 当前最终产物证明流程与合同两个页签再验通过,含上传状态/附件前置的截图;浏览器网络全部由合成fixture拦截,没有连接业务服务。其余视图的阶段性实际产物证据在上述任务记录中。
- OpenSpec strict通过;全范围最终独立审查进行中。真实MySQL事务/并发、迁移演练、真实业务环境集成未执行;不启动容器或切换现有服务,不执行SQL,不合并主分支。
+1 -1
View File
@@ -458,7 +458,7 @@ const viewSections = computed(() => [{
| crm/quote、crm/quote/approval(`QuoteListPage` mode) | P08 · 管理=全部/我的;审批=待审批/已审批(独立菜单 `crm:quote:approve`) |
| crm/contract、crm/contract/approval(`ContractListPage` mode) | P08 · 管理=全部/我的/执行中/已完成/已作废;审批=待审批/已审批(`crm:contract:approve`) |
| pl/contract-quota、pl/certificate-usage | P02 · 复用 `pl/quota-statistics/StatisticsPanel.vue`;参考 `pl/plan-quota/index.vue` 与 `demo/order/index.vue` 的检索、漏斗、工具栏和分页 |
| crm/contract(合同证件与额度 Tab) | P10 · 沿用 `crm/contract/components/ContractDetailDialog.vue`,嵌入固定当前合同的 `pl/contract-quota/ContractQuotaPanel.vue` |
| crm/contract(合同证件与额度 / 运输计划合法使用证明两个独立Tab) | P10 · 沿用 `crm/contract/components/ContractDetailDialog.vue`,分别嵌入固定当前合同的 `pl/contract-quota/ContractQuotaPanel.vue`、`pl/legal-use-document/StopDocuments.vue` |
| pl/quota-cert(合同产品绑定建档) | P12 · 沿用原有1200px、三列表单及附件组件,绑定与证面一次保存 |
| pl/plan-quota(段次展开)、pl/legal-use-document/StopDocuments | P02 · 复用现有列表与展开样式;附件沿用 AttachmentUploadField,展开区限于表格可视宽度 |
@@ -14,13 +14,14 @@
## 3. Web界面
- [x] 实现五Tab路由及共用合同、证件统计组件;段次明细组件随后续Task 5完成。
- [x] 建档增加合同产品绑定,保留单附件解析和人工核对。
- [ ] 合同详情增加两个独立Tab,固定当前合同并复用主模块面板。
- [ ] 安排显示逐段预检与定位异常;资料按段产品独立上传。
- [x] 合同详情增加两个独立Tab,固定当前合同并复用主模块面板。
- [x] 安排显示逐段预检与定位异常;资料按段产品独立上传。
## 4. 验证交付
- [ ] 后端专项和前端行为回归,H5/小程序共享API兼容检查。
- [ ] 合成数据浏览器交互、主要尺寸及加载/失败/保存状态视觉核对。
- [ ] 独立审查、适用数据库事务验证及迁移演练(此前用户要求暂不启MySQL容器,未完成项如实保留)。
- [x] 后端专项和前端行为回归,H5/小程序共享API兼容检查。
- [x] 合成数据浏览器交互、主要尺寸及加载/失败/保存状态视觉核对。
- [ ] 完成最终全范围独立审查,修复新增阻塞问题。
- [ ] MySQL5.7真实事务/并发及迁移演练(用户要求暂不启MySQL容器,本次未执行;不以SQLite替代)。
- [ ] 记录最终版本、实际测试与缺口,再按已有授权交付;不自动部署或关闭旧工单。
当前状态:实施阶段。Task 1分段计量`cde30287f`和Task 2段产品证明`2dd396509`/`b21618151`已通过独立规格及质量审查,SQLite专项通过,Task 3A原子绑定`71116ed69`/`5912e9d05`也已通过双审及79项回归,Task 3B统计`f9c206c91`已通过双审与78项回归;Web界面正在实现。未创建业务数据库表或执行迁移,MySQL真实并发验证未完成。