docs(P22PROD1-6): 生产化加固矩阵收口

这个提交包含在:
2026-03-12 21:48:47 +08:00
父节点 956f77f8d4
当前提交 1577aa41ed
共修改 2 个文件,包含 12 行新增和 3 行删除
+11 -3
查看文件
@@ -1,8 +1,8 @@
# hyb-oa 实现状态矩阵(P5-P19+IM-1+ERP-3+R10+MCP-1+AI-1+TRAVEL-1+TRAVEL-2+TRAVEL-3+PWA-1+PWA-2)
# hyb-oa 实现状态矩阵(P5-P19+IM-1+ERP-3+R10+MCP-1+AI-1+TRAVEL-1+TRAVEL-2+TRAVEL-3+PWA-1+PWA-2+PROD-1)
**快照日期**:2026-03-12
**范围**:`F1-F42`(含 `F19b/F19c/F19d`)+ `R1-S2` + `P9A1-P9D1` + `P10E1-P10G1` + `G0-G6` + `H1` + `M1-M4` + `P13-0-P13-8` + `P14-0-P14-8` + `P15A-0-P15A-5` + `P15B-0-P15B-6` + `P16A-0-P16A-6` + `P16B-0-P16B-6` + `P16C-0-P16C-6` + `R9-0-R9-3` + `G2-0-G2-6` + `P17A-0-P17A-6` + `P17B-0-P17B-6` + `P18A-0-P18A-6` + `P18B-0-P18B-6` + `P19-0-P19-6` + `P19IM1-0-P19IM1-6` + `P19ERP1-0-P19ERP1-6` + `P19ERP2-0-P19ERP2-6` + `P19ERP3-0-P19ERP3-6` + `R10-0-R10-4` + `P19MCP1-0-P19MCP1-4` + `P19AI1-0-P19AI1-5` + `P20TRAVEL1-0-P20TRAVEL1-5` + `P20TRAVEL2-0-P20TRAVEL2-5` + `P20TRAVEL3-0-P20TRAVEL3-5` + `P21PWA1-0-P21PWA1-5` + `P21PWA2-0-P21PWA2-5`,共 266 项。
**事实源**:`issues/2026-02-09_13-39-02-p5-blueprint-v3.csv` + `issues/2026-02-09_23-30-00-p6-p8-remaining-work-master.csv` + `issues/2026-02-10_09-42-31-p9-maintenance-performance-matrix.csv` + `issues/2026-02-10_10-35-30-p10-production-hardening.csv` + `issues/2026-02-11-p11-p12-governance-mobile.csv` + `issues/2026-02-12_01-09-41-p13-l5-governance.csv` + `issues/2026-02-13_00-11-56-p14-l5-operationalization.csv` + `issues/2026-03-06_14-30-00-p15a-l5-permission-decouple.csv` + `issues/2026-03-06_14-30-00-p15b-l5-leave-v1.csv` + `issues/2026-03-07_13-47-05-p16a-l5-master-data-core.csv` + `issues/2026-03-07_16-22-07-p16b-l5-holiday-calendar.csv` + `issues/2026-03-07_17-14-39-p16c-l5-suppliers.csv` + `issues/2026-03-07_18-15-03-r9-g2-p19-roadmap-refresh.csv` + `issues/2026-03-07_18-16-00-g2-l5-cross-domain-bridge.csv` + `issues/2026-03-07_19-33-09-p17a-l5-procurement-core.csv` + `issues/2026-03-07_21-00-37-p17b-l5-procurement-budget-archive.csv` + `issues/2026-03-07_22-02-09-p18a-l5-asset-registry-core.csv` + `issues/2026-03-07_22-34-03-p18b-l5-asset-movements-inventory.csv` + `issues/2026-03-07_23-22-00-p19-l4-integration-readiness.csv` + `issues/2026-03-08_12-18-10-p19-im-1-l5-collaboration-adapter.csv` + `issues/2026-03-08_14-10-53-p19-erp-1-l5-masterdata-journal-bridge.csv` + `issues/2026-03-08_22-46-51-p19-erp-2-l5-procurement-commitment-archive.csv` + `issues/2026-03-09_00-10-00-p19-erp-3-l5-asset-ledger-summary.csv` + `issues/2026-03-09_10-15-00-r10-post-erp3-roadmap-refresh.csv` + `issues/2026-03-09_10-25-00-p19-mcp-1-l4-readonly-tools-baseline.csv` + `issues/2026-03-10_12-54-30-p19-ai-1-l5-suggestion-workbench-refresh.csv` + `issues/2026-03-10_17-32-21-p20-travel-1-l5-request-intake-refresh.csv` + `issues/2026-03-10_21-05-59-p20-travel-2-l5-corporate-payments-refresh.csv` + `issues/2026-03-11_09-57-28-p20-travel-3-l5-reconciliation-erp-bridge-refresh.csv` + `issues/2026-03-11_17-50-39-p21-pwa-1-l5-asset-scan-refresh.csv` + `issues/2026-03-12_04-32-13-p21-pwa-2-l5-offline-deeplink-refresh.csv`(执行合同)
**范围**:`F1-F42`(含 `F19b/F19c/F19d`) + `R1-S2` + `P9A1-P9D1` + `P10E1-P10G1` + `G0-G6` + `H1` + `M1-M4` + `P13-0-P13-8` + `P14-0-P14-8` + `P15A-0-P15A-5` + `P15B-0-P15B-6` + `P16A-0-P16A-6` + `P16B-0-P16B-6` + `P16C-0-P16C-6` + `R9-0-R9-3` + `G2-0-G2-6` + `P17A-0-P17A-6` + `P17B-0-P17B-6` + `P18A-0-P18A-6` + `P18B-0-P18B-6` + `P19-0-P19-6` + `P19IM1-0-P19IM1-6` + `P19ERP1-0-P19ERP1-6` + `P19ERP2-0-P19ERP2-6` + `P19ERP3-0-P19ERP3-6` + `R10-0-R10-4` + `P19MCP1-0-P19MCP1-4` + `P19AI1-0-P19AI1-5` + `P20TRAVEL1-0-P20TRAVEL1-5` + `P20TRAVEL2-0-P20TRAVEL2-5` + `P20TRAVEL3-0-P20TRAVEL3-5` + `P21PWA1-0-P21PWA1-5` + `P21PWA2-0-P21PWA2-5` + `P22PROD1-0-P22PROD1-5`,共 272 项。
**事实源**:`issues/2026-02-09_13-39-02-p5-blueprint-v3.csv` + `issues/2026-02-09_23-30-00-p6-p8-remaining-work-master.csv` + `issues/2026-02-10_09-42-31-p9-maintenance-performance-matrix.csv` + `issues/2026-02-10_10-35-30-p10-production-hardening.csv` + `issues/2026-02-11-p11-p12-governance-mobile.csv` + `issues/2026-02-12_01-09-41-p13-l5-governance.csv` + `issues/2026-02-13_00-11-56-p14-l5-operationalization.csv` + `issues/2026-03-06_14-30-00-p15a-l5-permission-decouple.csv` + `issues/2026-03-06_14-30-00-p15b-l5-leave-v1.csv` + `issues/2026-03-07_13-47-05-p16a-l5-master-data-core.csv` + `issues/2026-03-07_16-22-07-p16b-l5-holiday-calendar.csv` + `issues/2026-03-07_17-14-39-p16c-l5-suppliers.csv` + `issues/2026-03-07_18-15-03-r9-g2-p19-roadmap-refresh.csv` + `issues/2026-03-07_18-16-00-g2-l5-cross-domain-bridge.csv` + `issues/2026-03-07_19-33-09-p17a-l5-procurement-core.csv` + `issues/2026-03-07_21-00-37-p17b-l5-procurement-budget-archive.csv` + `issues/2026-03-07_22-02-09-p18a-l5-asset-registry-core.csv` + `issues/2026-03-07_22-34-03-p18b-l5-asset-movements-inventory.csv` + `issues/2026-03-07_23-22-00-p19-l4-integration-readiness.csv` + `issues/2026-03-08_12-18-10-p19-im-1-l5-collaboration-adapter.csv` + `issues/2026-03-08_14-10-53-p19-erp-1-l5-masterdata-journal-bridge.csv` + `issues/2026-03-08_22-46-51-p19-erp-2-l5-procurement-commitment-archive.csv` + `issues/2026-03-09_00-10-00-p19-erp-3-l5-asset-ledger-summary.csv` + `issues/2026-03-09_10-15-00-r10-post-erp3-roadmap-refresh.csv` + `issues/2026-03-09_10-25-00-p19-mcp-1-l4-readonly-tools-baseline.csv` + `issues/2026-03-10_12-54-30-p19-ai-1-l5-suggestion-workbench-refresh.csv` + `issues/2026-03-10_17-32-21-p20-travel-1-l5-request-intake-refresh.csv` + `issues/2026-03-10_21-05-59-p20-travel-2-l5-corporate-payments-refresh.csv` + `issues/2026-03-11_09-57-28-p20-travel-3-l5-reconciliation-erp-bridge-refresh.csv` + `issues/2026-03-11_17-50-39-p21-pwa-1-l5-asset-scan-refresh.csv` + `issues/2026-03-12_04-32-13-p21-pwa-2-l5-offline-deeplink-refresh.csv` + `issues/2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv`(执行合同)
**说明**:
- 本矩阵用于全局读图(审计/交接/回归覆盖追踪),不替代 `issues/*.csv` 的执行合同职责。
@@ -309,3 +309,11 @@
| P21PWA2-3 | PWA缓存策略升级与IndexedDB helper收口 | N/A | 2026-03-09_11-25-00-p21-pwa-2-l5-offline-deeplink.csv | 2026-03-12_04-32-13-p21-pwa-2-l5-offline-deeplink-refresh.csv | 2026-03-12 | DONE | client:typecheck/build | `vite-plugin-pwa` runtime cache 升级为静态资源 `StaleWhileRevalidate` + 审批 GET `NetworkFirst`,并新增共享 IndexedDB helper 供上传 / 盘点 / 审批队列复用 |
| P21PWA2-4 | PWA二期文档矩阵与主线闭环同步 | N/A | 2026-03-09_11-25-00-p21-pwa-2-l5-offline-deeplink.csv | 2026-03-12_04-32-13-p21-pwa-2-l5-offline-deeplink-refresh.csv | 2026-03-12 | DONE | validate-feature-matrix | 集成边界、PWA 回归清单、Feature Matrix 与事实源校验器同步到 `...+PWA-2`,矩阵总数推进到 266 并明确 R10 主线闭环 |
| P21PWA2-5 | P21PWA2回归与R10主线最终验收 | N/A | 2026-03-09_11-25-00-p21-pwa-2-l5-offline-deeplink.csv | 2026-03-12_04-32-13-p21-pwa-2-l5-offline-deeplink-refresh.csv | 2026-03-12 | DONE | server:test + regression-all + client:typecheck/build + validate-feature-matrix | 移动 deep link、离线审批草稿、联网重放、权限拒绝、缓存回退与既有 PWA-1 / workflow 主流程回归全部通过,R10 主线正式闭环 |
| P22PROD1-0 | P22PROD1执行合同建档与生产化边界冻结 | N/A | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12 | DONE | CSV 校验 | 冻结 `P22+PROD-1` 为路由级分包、高风险主链路 E2E 与证据化性能审计的单一生产化迭代,不混入新业务域或依赖大升级 |
| P22PROD1-1 | 路由懒加载与构建分包治理 | N/A | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12 | DONE | client:typecheck/build | 顶层业务页切换为 `React.lazy + Suspense`,并在 Vite 中固定 `vendor-*` / `page-*` manual chunks,构建不再出现大包 warning |
| P22PROD1-2 | 差旅三部曲Playwright补齐 | N/A | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12 | DONE | client:test:e2e(travel) | 新增差旅支付与对账 Playwright 规格,覆盖申请→审批→支付→绑票以及 reconciliation batch 创建、异常确认与 finalize 主链路 |
| P22PROD1-3 | 移动审批deep link与离线草稿E2E补齐 | N/A | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12 | DONE | client:test:e2e(mobile approvals) | 以移动 viewport 自动化覆盖 canonical workflow deep link 分流、离线 `approve/reject` 草稿入队、联网重放与冲突态展示 |
| P22PROD1-4 | 高频查询性能审计与小步修复 | N/A | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12 | DONE | server:test + benchmark scripts | 为 workflow tasks、`/api/assets?q` 与 travel reconciliation batches 新增 benchmark 脚本,并将资产搜索重写为 exact-first / fuzzy-second;未证实收益前不新增索引或 PG 扩展 |
| P22PROD1-5 | P22PROD1矩阵回归与验收收口 | N/A | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | 2026-03-12 | DONE | server:test + client:typecheck/build/test:e2e + validate-feature-matrix | Feature Matrix、事实源校验器、差旅与移动审批 E2E、后端单测与 benchmark 一并收口,主线推进到 `...+PROD-1` / 272 项 |
+1
查看文件
@@ -50,6 +50,7 @@ CSV_FACT_SOURCES = [
ROOT / "issues" / "2026-03-11_09-57-28-p20-travel-3-l5-reconciliation-erp-bridge-refresh.csv",
ROOT / "issues" / "2026-03-11_17-50-39-p21-pwa-1-l5-asset-scan-refresh.csv",
ROOT / "issues" / "2026-03-12_04-32-13-p21-pwa-2-l5-offline-deeplink-refresh.csv",
ROOT / "issues" / "2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv",
]
ID_PATTERN = re.compile(r"^[A-Z][0-9][0-9A-Za-z-]*$")