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.
6.5 KiB
6.5 KiB
票 08 — 商机规则三族 V-CONFIG 实测报告(report-rules.md)
- 运行时间:2026-08-28 15:27:57 自建规则前缀:e2e-152748
- 汇总:✅ 39 / ⚠ 5 / ❌ 3 · 缺陷 5 条 · SKIP 0 项
明细
- [✅] R01 · page 列表(按版本维度) —— total=7 绑定数字段=无(符合注释契约)
- [✅] R01 · 种子模板节点结构(末位固定节点 isFixed=1) —— 节点 5 个 末位=OPP_STAGE_05
- [✅] R01 · save-draft 缺模板名 —— 被拒: code=64013 msg=模板名称不能为空
- [✅] R01 · applyScope=2 无部门 —— 被拒: code=64013 msg=指定部门模板须选择至少一个适用部门
- [✅] R01 · 部门专用设默认 —— 被拒: code=64013 msg=仅所有商机范围的模板可设为默认
- [✅] R01 · 固定节点手工配置(OPP_STAGE_05) —— 被拒: code=64013 msg=「已转项目」为系统固定节点,不可在阶段列表中手工配置
- [✅] R01 · 无节点草稿可暂存
- [✅] R01 · 空模板 publish(除固定节点外至少一个) —— 被拒: code=64017 msg=除固定节点外至少创建一个阶段节点
- [✅] R01 · 新建草稿 V1.0 + 节点规范化(末位系统补固定节点) —— code=OPP_STAGE_TPL_08 v=V1.0 节点=3
- [✅] R01 · 草稿原位编辑(版本编码不变、versions 仍 1 行) —— v=V1.0 versions=1
- [✅] R01 · publish → 发布中 —— status=2
- [✅] R01 · copy → 独立新编码 V1.0 草稿(节点随复制) —— newCode=OPP_STAGE_TPL_09 节点=4
- [✅] R01 · disable 草稿(仅发布中可停用) —— 被拒: code=64013 msg=仅发布中的模板可停用
- [✅] R01 · delete 草稿(级联删节点/部门)
- [⚠] R01 · versions 出参(实体直出检查 ADR-0017) —— 内部字段泄露=['creatorId', 'deleted', 'updaterId'] keys=['applyScope', 'createTime', 'creatorId', 'deleted', 'id', 'isDefault', 'status', 'templateCode', 'templateDesc', 'templateName', 'updateTime', 'updaterId']
- [❌] R01 · 编辑发布中 → 生新草稿 V1.1 —— code=50001 msg=系统内部错误,请稍后重试
- [⚠] R01 · publish V1.1 自我顶替(V1.0 转停用) —— 被上条 P1 阻断(新草稿无法生成);顶替语义旁证:票07 U02 发布禁领版时 seed 规则被顶替取消默认
- [✅] R01 · 绑定锁版本:A1 商机阶段节点集不受新模板发布影响 —— A1 progress 5 节点(种子 5)
- [✅] R01 · disable 种子模板(D-01 系统预设保护) —— 被拒: code=64018 msg=系统预设商机阶段模板受保护,不可停用
- [✅] R02 · field-defs 系统字段库 —— 16 项 keys=['autofillSource', 'createTime', 'defaultValue', 'fieldKey', 'fieldName', 'fieldType', 'id', 'isDeletable', 'optionSource', 'refTarget', 'updateTime']
- [✅] R02 · page 列表 —— total=10
- [✅] R02 · save-draft 缺模板名 —— 被拒: code=64018 msg=模板名称不能为空
- [✅] R02 · applyScope=2 无部门 —— 被拒: code=64018 msg=部门专用模板须选择至少一个适用部门
- [✅] R02 · 伪造 fieldKey(快照防伪造) —— 被拒: code=64022 msg=字段须引用系统字段定义:e2e_fake_field_no_exist
- [✅] R02 · 空模板 publish(至少一个字段项) —— 被拒: code=64022 msg=方案卡模板发布前至少配置一个字段
- [✅] R02 · 字段项快照回显(fieldName/fieldType 服务层写入) —— fields=[('customer_name', 1, 1), ('customer_type', 1, 0), ('customer_contact', 0, 0)]
- [✅] R02 · 关显示同步清必填(isVisible=0 → isRequired=0) —— hidden.isRequired=0
- [✅] R02 · publish → 发布中
- [✅] R02 · copy → 独立新编码 V1.0 草稿(字段随复制)
- [✅] R02 · disable 草稿 —— 被拒: code=64018 msg=仅发布中的模板可停用
- [❌] R02 · 编辑发布中 → 生新草稿 V1.1 —— code=50001 msg=系统内部错误,请稍后重试
- [⚠] R02 · publish V1.1 自我顶替(V1.0 转停用) —— 被 P1 阻断;旁证=票07 U02 顶替副作用
- [✅] R03 · page 列表(seed 规则在场) —— total=16 seed=发布中
- [✅] R03 · save-draft 缺规则名 —— 被拒: code=64008 msg=规则名称不能为空
- [✅] R03 · 开回收缺 recycleDays —— 被拒: code=64008 msg=自动回收天数须 ≥ 1
- [✅] R03 · recycleDays=0 —— 被拒: code=64008 msg=自动回收天数须 ≥ 1
- [✅] R03 · remindDays ≥ recycleDays —— 被拒: code=64008 msg=提前提醒天数须小于自动回收天数
- [✅] R03 · 未开回收先开提醒 —— 被拒: code=64008 msg=未启用自动回收时不可开启回收提醒
- [✅] R03 · publish → 发布中(五配置项落库) —— 回收=30天 提醒=7天 手动抛池=1 自由领取=1
- [✅] R03 · U03 配置层:部门专用规则发布 + deptIds 绑定回显 —— deptIds=['744841292348915712'] deptNames=['广东保伦电子股份有限公司']
- [⚠] R03 · U03 生效层:部门专用禁手动未拦截 release-pool(按缺陷预期放行) —— owner_dept_id 空不命中部门索引 → 放行;根因已被缺陷覆盖
- [❌] R03 · 编辑发布中 → 生新草稿 V1.1 —— code=50001 msg=系统内部错误,请稍后重试
- [⚠] R03 · publish V1.1 自我顶替(V1.0 转停用) —— 被 P1 阻断;旁证=票07 U02 顶替副作用
- [✅] R01 · 清理后无发布中自建规则 —— 残留发布中=无
- [✅] R02 · 清理后无发布中自建规则 —— 残留发布中=无
- [✅] R03 · 清理后无发布中自建规则 —— 残留发布中=无
- [✅] R03 · seed 公海规则仍发布中(F14 前置未破坏)
缺陷清单(只记录不修复)
- [P2] R01 · versions 返回实体:出参泄露内部字段(违 ADR-0017 Entity 禁令/deleted 泄露) —— ['creatorId', 'deleted', 'updaterId']
- [P1] R01 · 编辑发布中生成新草稿 50001 主键冲突(resolveDraft 新草稿 insert 携带源版本 id,版本推进 API 不可用) —— 日志: Duplicate entry for opportunity_stage_template.PRIMARY;三族同构(R02/R03 同现象)
- [P1] R02 · 编辑发布中生成新草稿 50001 主键冲突(同 R01 同构缺陷) —— 同 R01 根因
- [P1] R03 · 商机 owner_dept_id 恒空:创建/领取/分配/移交均不写部门快照 → 部门专用公海规则(applyScope=2)对任何商机永不命中,DataScope 部门天花板同源失效 —— DB 直查: opportunity 全表 13 行 owner_dept_id 非空仅 0 行(含 seed 与 F01 新建,历经 claim/assign/handover 仍空)
- [P1] R03 · 编辑发布中生成新草稿 50001 主键冲突(同 R01 同构缺陷) —— 同 R01 根因