|
@@ -4,6 +4,89 @@
|
|
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
|
|
|
|
+## v1.0.2190 (2026-11-07)
|
|
|
|
|
+
|
|
|
|
|
+### 测试
|
|
|
|
|
+- R78 登记 B-61 P0 健康方案鉴权缺口 + O-14 langgraph 签名变更协调单
|
|
|
|
|
+- R78 闭环汇报 - /admin 5/5 全绿打通(登录+滑块+核心菜单) + /frontend 6/6 复跑确认 + HP-U01~03 鉴权契约(P0 延续) + langgraph test_memory 用例滞后发现
|
|
|
|
|
+- R77 闭环汇报 - 后端首次全量实测 95.07% + B-58 口径重定性 + 新增6例签名用例
|
|
|
|
|
+- S-cfc-48 RED 契约级单测 team.profit.pipeline 收入管道化触发源扩展 (T9 §4.7杠杆1)
|
|
|
|
|
+- S-cfc-38 family.invite.joinRequestCardInfo RED contract tests (WI-4 审批卡片三项信息) + vue SFC jest transform
|
|
|
|
|
+- team.profit.settle 契约级单测(RED,实现未落地 32 例全红)
|
|
|
|
|
+- S-cfc-42 RED 契约单测 team.profit.hook — 6 订单服务同点位并行调用 ProfitPoolService.settle()(§12-T3+§2.2),反射结构契约,6/7 红
|
|
|
|
|
+- S-cfc-40 能力键 team.invitation.create RED 契约级单测
|
|
|
|
|
+- RED 契约级单测 team.star.multiplier 星级倍率权重(T10 杠杆2/3/4,13 用例红)
|
|
|
|
|
+- family.invite.joinRequiredInfoFrontend RED 契约级单测(join-form 出生日期/性别必填)
|
|
|
|
|
+- S-cfc-45 team.user.portal TDD-RED 契约级单测(场景A推荐人绑定缺失 referrerId=null + 邀请校验缺团队业绩预览 2 RED/4)
|
|
|
|
|
+- 家庭加入准入校验门禁契约级测试(TDD-RED) - family.invite.joinRequiredInfoTest
|
|
|
|
|
+- S-cfc-37 RED 契约级单测 FamilyJoinValidationRulesContractTest(AC-R3/WI-3 准入校验门禁未落地,9 用例红)
|
|
|
|
|
+- RED 契约级单测 family.invite.joinValidationGate 准入门禁
|
|
|
|
|
+
|
|
|
|
|
+### 其他
|
|
|
|
|
+- - B-53 第4次量化:13文件 170例/48红 → 187例/6红,42例转绿+17例新增,预测96.83%
|
|
|
|
|
+- - B-58 重定性:clean树 langgraph 43收集/26过/17红(13环境+3夹具+1数据),WIP 8文件为修复补丁非刷绿
|
|
|
|
|
+- - 新增 B-59(admin TC-A-U05 条件跳过掩盖失败)、B-60(ActivityControllerTest 412s)
|
|
|
|
|
+- - 新增 6 例 signature-bus 用例,绑定 e35ca7186 签名独立横屏页(WI-1/WI-4)
|
|
|
|
|
+-
|
|
|
|
|
+- 溯源:2026-11-07-referral-team-profit-sharing.md v0.7 §12-T2 + §2.1 分配公式
|
|
|
|
|
+- + §4.2 8份分配(#5拍板 每层min(星级,剩余) 最多6份 最少2层)+ §4.3 星级
|
|
|
|
|
+- + §4.4 团队奖(#3拍板 platform_rule)+ §7.1/7.3/7.4/7.5 建表
|
|
|
|
|
+- 新增契约级单测(仅测试代码,src/main 零改动;反射定位契约类/方法,
|
|
|
|
|
+- 类缺失以断言失败暴露 RED 而非编译失败,GREEN 落地后自动转行为校验):
|
|
|
|
|
+- - ProfitPoolOrderContractRedTest 4 例:§2.1 总账 S=1000元/C=800元 →
|
|
|
|
|
+- P=20000/O=2000/F=1000/D=17000/R=11900/T=5100/8份池4080/团队奖1020;
|
|
|
|
|
+- 预算守恒 R+T=D、8份+团队奖=T;D≤0 不触发分润仅落单;逐项 round 不留尾差
|
|
|
|
|
+- - TeamShareRecordEightShareContractRedTest 6 例:§4.2 8份分配 6★/1★/1★ →
|
|
|
|
|
+- 3060/510/510 分;6★+2★ 最少2层分完;min(星级,剩余) 封顶;全1★剩余回流;
|
|
|
|
|
+- 无引荐人仅本人;§7.3 契约列携带
|
|
|
|
|
+- - TeamAwardRecordContractRedTest 6 例:§4.4 团队奖 TA0~TA3 分档
|
|
|
|
|
+- (0%/50%/80%/100%)门槛边界 + awardCent 取整 + #3 归属平台自有团队
|
|
|
|
|
+- - StarScoreCalculatorContractRedTest 10 例:§4.3 业绩分 50/40/10 加权、
|
|
|
|
|
+- 星级六档边界 0/8千/2.5万/7万/14万/25万、升级双门槛(业绩分达标 AND 直推≥1)
|
|
|
|
|
+- - TeamProfitSchemaContractRedTest 6 例:§7 四表实体 @TableName 与建表名一致、
|
|
|
|
|
+- Mapper 继承 BaseMapper<实体>、§7.1/7.3/7.4/7.5 业务列字段覆盖
|
|
|
|
|
+- 运行结果(RED):Tests run: 32, Failures: 32, Errors: 0 —— 全部失败:
|
|
|
|
|
+- 'RED: 契约类未实现 [§12-T2] com.etotem.cfc.service.ProfitPoolService'
|
|
|
|
|
+- (及 TeamProfitService/StarScoreCalculator/四实体/四 Mapper 同型断言)
|
|
|
|
|
+- 暴露真实缺陷:无(纯 RED,T2 实现未落地,cfclub 基线无相关类/表);
|
|
|
|
|
+- 权限流 N/A(T2 为服务层契约,无 HTTP 端点/角色)。
|
|
|
|
|
+- 构建结果:mvn test-compile 通过;测试运行 BUILD FAILURE(预期红)。
|
|
|
|
|
+- 主体为 org.mockito mock + 反射,不依赖真实微信/外部服务。
|
|
|
|
|
+-
|
|
|
|
|
+- §5.1/5.2/5.3(团队邀请生成→inviteCode+小程序码wxacode+落地页) + §7.7(复用
|
|
|
|
|
+- distribution_relations.invite_code) + §11-#11(独立落地页) + §12-T1。
|
|
|
|
|
+- 被测 DistributionInviteController#generate(POST /api/distribution/invite/generate)。
|
|
|
|
|
+- 正常流断言 data 为邀请对象(含 inviteCode/wxacode/systemId/teamName/inviterId),
|
|
|
|
|
+- 现实现仅返回 Result<String>(裸邀请码)→ 2 用例红;边界/权限流 5 用例绿。
|
|
|
|
|
+- 仅测试代码, 不改 src/main。
|
|
|
|
|
+-
|
|
|
|
|
+- §12-T10 + §4.7.2 杠杆2/3/4 + §11-#14 + §10#5。
|
|
|
|
|
+- 契约断言(宿主 TeamProfitService 未实现 → 全部 RED):
|
|
|
|
|
+- - 杠杆2 倍率表:1★=1.0/2★=1.0/3★=1.2/4★=1.5/5★=2.0/6★=3.0;权重 W=星级×倍率
|
|
|
|
|
+- - 杠杆2 数学校验:6★(W=18)+1★+1★ 总W=20 → 3672/204/204 分(Σ=4080=T×80% 只重分不增量)
|
|
|
|
|
+- - 杠杆2 边界:全6★/全1★ Σ=8份池;层无人份额回流不私发(Σ≤8份池)
|
|
|
|
|
+- - 杠杆3 星耀导师:带出1名5★→档位+1;2名→100%上限+年度星耀会候选人
|
|
|
|
|
+- - 杠杆4 实时可见:订单完成返回本单分润(pending 可见);D≤0 分润=0
|
|
|
|
|
+- - 权限流:不适用(平台服务团队归属口径,无外部引荐链鉴权分支)
|
|
|
|
|
+- 暴露真实缺陷:TeamProfitService(8份池星级权重分配/带教里程碑/实时分润)实现未落地。
|
|
|
|
|
+- 仅测试代码,src/main 一行未动。
|
|
|
|
|
+-
|
|
|
|
|
+- - 正常流:realName/birthday/gender 齐全合法 -> 请求正常创建
|
|
|
|
|
+- - 缺失流:三项任一缺失 -> 拒绝且不落库
|
|
|
|
|
+- - 非法流:生日未来/极早、姓名超20字、性别大小写混用 -> 拒绝且不落库
|
|
|
|
|
+- 仅测试代码,未改业务实现。当前 RED:9失败1通过(门禁未落地)。
|
|
|
|
|
+-
|
|
|
|
|
+- - 正常流+边界:三项齐全、姓名 1/20 字、生日=今天、生日=1900-01-01 → 创建待审批请求
|
|
|
|
|
+- - 纯 Mockito 无外部依赖;src/main 零改动
|
|
|
|
|
+-
|
|
|
|
|
+- - AC2.1/2.2/2.3: realName 空 / birthday null / gender 非 male|female → 拒绝且无 DB 记录
|
|
|
|
|
+- - AC3.1: birthday 未来 → 「出生日期不能晚于今天」;AC3.2: 早于 1900-01-01 → 「出生日期不合法」
|
|
|
|
|
+- - AC3.3: realName >20 字拒绝;AC3.4: gender 大小写混用/其他值拒绝
|
|
|
|
|
+- - AC2.4/AC-R4: 三项齐全合法 → 正常创建待审批请求
|
|
|
|
|
+- - 仅测试代码,src/main 零改动
|
|
|
|
|
+-
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
## v1.0.2189 (2026-11-07)
|
|
## v1.0.2189 (2026-11-07)
|
|
|
|
|
|
|
|
### 文档
|
|
### 文档
|