You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
2.0 KiB
23 lines
2.0 KiB
|
3 weeks ago
|
# 02 — Regression verification
|
||
|
|
|
||
|
|
**What to build:** 票 01 合入后的回归核对——确认收拢只动了结构、没动行为。机械核对项打勾即可,不需要写新代码;发现任何偏差回票 01 修,不在本票内打补丁。
|
||
|
|
|
||
|
|
**Blocked by:** 01
|
||
|
|
|
||
|
|
**Status:** resolved
|
||
|
|
|
||
|
|
- [x] `createLead` 编排 ≤ 20 行(validateLeadFields → plan → save → followOnCreate → record 五步;实际编排体 19 行)
|
||
|
|
- [x] 重复计数核对:ADMIN_ONLY 判定 3→2 处(planner `requireSelfClaimable` 1 + `claimLead` 1)、归池仪式 3→1 处(`applyPoolBinding`)、领取仪式实体版 3→1 处(`applyClaim`);状态机 CAS 版仪式 2 处(applyClaim / applyAssignToUser)原样保留——那是锁不是规则
|
||
|
|
- [x] `mvn test` 全模块 BUILD SUCCESS(crm-base / crm-file / crm-auth / crm-dict / crm-rule / crm-preference / crm-lead / crm-app 全绿;crm-lead 106/106)
|
||
|
|
- [x] BOM 扫描:全部 `*.java` 无 `EF BB BF` 前缀(全库八个 src 树扫描干净)
|
||
|
|
- [x] wire 契约未动:Bruno 集合无需同步(git 变更清单不含 `LeadController` / `ILeadService`,错误码零变化)
|
||
|
|
- [x] 三件套齐:`crm-lead/CONTEXT.md` 含「创建规划」条目、`docs/adr/0026-lead-creation-planner-deep-module.md` 存在、本目录票据 01-02 落位
|
||
|
|
|
||
|
|
## Comments
|
||
|
|
|
||
|
|
**2026-08-20 核对记录:**
|
||
|
|
|
||
|
|
- 计数核对方式:全库 grep `setPoolNameSnapshot(pool.getPoolName())` = 1 处(planner)、`setOwnerNameSnapshot(owner.name())` = 1 处(planner)、`CLAIM_RULE_ADMIN_ONLY` 判定 = 2 处(planner + claimLead);`LeadTransitionImpl` 的 LambdaUpdateWrapper 版仪式(`Lead::getOwnerNameSnapshot` 等 7 处 `.set()`)原样保留
|
||
|
|
- 测试数目对账:crm-lead 97 → 106 = 97 − 5(迁移的旧 create 用例)+ 13(planner)+ 1(service 委派验证)
|
||
|
|
- git 变更中 `.scratch/lead-defect-a2-a7-3-1/*`、`.scratch/opportunity-module/*`、`crm-opportunity/CONTEXT.md` 为其他会话遗留的工作区变更,与本票无关
|