4.6 KiB
4.6 KiB
| 1 | ID | Title | Description | Acceptance | Test_Method | Tools | Dev_Status | Review1_Status | Regression_Status | Files | Dependencies | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | P22PROD1-0 | P22PROD1执行合同建档与生产化边界冻结 | 新建执行合同 CSV 并冻结路由分包、差旅与移动审批 E2E、性能审计与小步修复的实现边界,不混入 IM-2/规格书补齐/依赖升级。 | refresh CSV 校验通过并明确 P22+PROD-1 为单一聚焦的生产化准备迭代。 | python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv | manual | DONE | DONE | DONE | issues/2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv|docs/feature-matrix.md|scripts/validate-feature-matrix.py | [] | freezes PROD-1 as route splitting plus E2E plus evidence-based performance hardening only |
| 3 | P22PROD1-1 | 路由懒加载与构建分包治理 | 将顶层业务页面切换为 React.lazy + Suspense 并在 Vite 中固定 vendor/manualChunks 分包策略,保持现有 URL 与权限语义不变。 | client build 不再出现大包 warning,页面路由切换、刷新与权限守卫行为不回归。 | cd client && npm run typecheck && npm run build | manual | DONE | DONE | DONE | client/src/router/index.tsx|client/src/router/lazy/*|client/src/components/common/RoutePageFallback.tsx|client/vite.config.ts | ["P22PROD1-0"] | keep page modules as named exports and use lightweight lazy wrappers instead of mass default-export refactor |
| 4 | P22PROD1-2 | 差旅三部曲Playwright补齐 | 新增差旅支付与差旅对账 Playwright 规格,覆盖申请审批后支付轨道、mark-paid、发票绑定、reconciliation batch 创建与 finalize 主链路。 | travel payment 与 reconciliation 两条主链路可自动化回归,不直接写数据库且页面关键状态可见。 | cd client && npm run test:e2e -- tests/e2e/travel-payment-flow.spec.ts && npm run test:e2e -- tests/e2e/travel-reconciliation-flow.spec.ts | manual | DONE | DONE | DONE | client/tests/e2e/travel-payment-flow.spec.ts|client/tests/e2e/travel-reconciliation-flow.spec.ts|client/tests/e2e/helpers/* | ["P22PROD1-1"] | deterministic seed must go through controlled HTTP APIs or test helpers instead of raw DB writes |
| 5 | P22PROD1-3 | 移动审批deep link与离线草稿E2E补齐 | 新增移动审批 Playwright 规格,覆盖 canonical deep link 移动分流、离线 approve/reject 草稿入队、联网重放与冲突态展示。 | 移动模式下 workflow canonical link 正确落到 /mobile/approvals,离线草稿入队/重放/冲突均可验证。 | cd client && npm run test:e2e -- tests/e2e/mobile-approvals-offline.spec.ts | manual | DONE | DONE | DONE | client/tests/e2e/mobile-approvals-offline.spec.ts|client/tests/e2e/helpers/*|client/playwright.config.ts | ["P22PROD1-1"] | limit automation to browser offline toggling and do not require real IM container or standalone install mode |
| 6 | P22PROD1-4 | 高频查询性能审计与小步修复 | 针对 workflow tasks、assets q 与 travel reconciliation batches 增加 benchmark 脚本、EXPLAIN ANALYZE 证据链,并仅在收益充分时落地查询重写或常规索引。 | 三条关键路径都有 before/after 证据且仅保留证据充分的常规索引或查询修复,不引入 PG extension。 | cd server && npm run test && ./scripts/benchmark-workflow.sh && ./scripts/benchmark-assets.sh && ./scripts/benchmark-travel-reconciliation.sh | manual | DONE | DONE | DONE | server/src/routes/assets.js|server/src/routes/workflow.js|server/src/services/travelReconciliation.js|server/scripts/benchmark-workflow.sh|server/scripts/benchmark-assets.sh|server/scripts/benchmark-travel-reconciliation.sh|server/prisma/schema.prisma|server/prisma/migrations/*_p22_prod_1_performance_hardening/* | ["P22PROD1-0"] | assets search stays exact-first then fuzzy-second and any schema change must be justified by >=30 percent measured improvement |
| 7 | P22PROD1-5 | P22PROD1矩阵回归与验收收口 | 同步 Feature Matrix 与事实源校验器并执行前后端回归,形成 P22+PROD-1 的生产化验收结论。 | 矩阵推进到 272,新增合同三状态全 DONE,前后端回归与 diff 检查全部通过。 | cd client && npm run typecheck && npm run build && npm run test:e2e && cd ../server && npm run test && ./scripts/regression-workflow-actions.sh && ./scripts/regression-all.sh && cd .. && python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv && python3 scripts/validate-feature-matrix.py && git diff --check | manual | DONE | DONE | DONE | issues/2026-03-12_16-58-44-p22-prod-1-l5-production-hardening.csv|docs/feature-matrix.md|scripts/validate-feature-matrix.py | ["P22PROD1-2","P22PROD1-3","P22PROD1-4"] | requirements-specification remains out of scope for this iteration |