8.4 KiB
待确认事项清单
Effort:crm-lead / crm-rule / crm-preference 三模块 spec chart 日期:本次 grill 结束时 目的:所有可自行决策的问题已定;此清单为必须由产品/UX 输入才能推进的外部依赖。
一、待产品输入(阻塞 spec 收尾)
【产品-A】线索作废(ticket 03 [C])
问题:线索"作废"这一态的触发/入口/可逆性完全未定,原型只在"我的线索"里显示了这个状态标签,但未说明业务规则。
需产品拍板:
- A1 触发方式:作废是自动(如反馈=无效自动作废)还是手动(销售/管理员点按钮)?
- A2 触发入口:从哪些状态可进入作废?只有"跟进中/已领取"可作废,还是任何非终态皆可?
- A3 可逆性:作废后能否恢复?若可恢复,恢复到哪个状态?(对齐"激活 F2"机制?)
- A4 归属处理:作废后领取人是否保留?是否回流公海?
旁证:原型"我的线索"里反馈=无效/空号的行显示状态为"线索作废",暗示"反馈=无效"可能自动作废,但未明说。
当前影响:
- 03 ticket 状态机主体已定(7 态、双计时器、转商机终态、激活 F2),仅作废相关的 4 个边/矩阵格用
⚠C标出待补。 - 不阻塞 04/06/08,因为作废仅是状态枚举一值,本身不影响字段模型/公海池实体/转商机契约。
- 仅阻塞 03 收尾(resolved)。
【产品-B】权限与数据可见性 PRD(ticket 05,5 项)
问题:grill 05 时发现"团队成员/线索池协作人"这类行级授权必须能越过部门天花板,纯 AND 模型无法表达。已升级为三机制模型(功能权限 + 数据可见范围 + 行级授权通行证),配套 PRD 文件 .scratch/clue-module/权限与数据可见性-PRD.md。5 项待产品拍板:
| 编号 | 事项 | 影响 |
|---|---|---|
| PRD-1 | 行级授权触发动作清单是否完整(见 PRD "机制三"表格);是否有需补充或删除的触发动作 | 决定 grant_source 枚举 |
| PRD-2 | 被行级授权者的权限边界:仅可查看 vs 可执行操作(编辑/分配/删除);查看与操作是否分级(例如团队成员只读、协作人可管理) | 决定 grant_level 是否需要分档,以及授权表结构 |
| PRD-3 | 移除行级授权(移出团队成员/协作人)后立即失效的行为是否符合预期 | 决定授权撤销的实现(硬删 vs 软删+失效标记) |
| PRD-D | 线索是否存在跨部门逐条指派场景 | 决定要不要 resource_type=lead 直接授权通道;若无此场景,行级授权对线索仅走"池维度"翻译 |
| PRD-E | 池负责人/协作人的授权范围:仅池内线索,还是含"兼池"配置管理权? | 决定"授权对象→可见数据"翻译规则,直接影响拦截器 SQL |
当前影响:
- 05 整个 ticket blocked(阻塞项已明确列在 Blocked by)。
- 04 的行级授权部分随 05 挂起;04 实体字段建模部分不受影响(已 resolved)。
- 不阻塞 06/07/08(这三张已 resolved)。
- 是全项目最关键的外部依赖——决定权限模型、决定 crm-auth 是否需要增强
sys_row_grant通用表。
建议产品同步阅读:.scratch/clue-module/权限与数据可见性-PRD.md
二、待 UX 修订原型文案(不阻塞 spec,但上线前必改)
grill 过程中,产品口径多处推翻了原型;原型文案与 spec 不一致会误导前端/UX 后续迭代。建议 UX 逐条修订:
【UX-1】列表字段配置:原型说"共用一套",产品改为"每菜单独立"(ticket 07)
文案作废共 7 处:
| # | 文件 | 行号 | 原文关键片段 |
|---|---|---|---|
| 1 | a2-1-1线索公海(列表视图).txt |
364 | "字段显隐配置:支持自定义勾选…【我的线索】页面共用同一套字段配置方案,配置互通" |
| 2 | a2-1-2____.txt |
1796 | "字段拖拽排序、字段显隐配置,与线索公海共用一套字段配置规则" |
| 3 | a2-1-2____.txt |
1814 | "与【线索公海】页面共用同一套字段配置,修改后两边同步生效" |
| 4 | a2-1-2____.txt |
1961 | "线索公海、我的线索共用同一套字段配置,一处修改保存后两边表格同步生效" |
| 5 | a2-1-3____.txt |
333 | "与线索公海、我的线索共用一套字段配置规则" |
| 6 | a2-1-3____.txt |
351 | "与【线索公海】【我的线索】页面共用同一套字段配置,修改后三处页面同步生效" |
| 7 | a2-1-4____.txt |
406 | "与线索公海、我的线索、我的关注共用一套字段配置,一处修改全模块同步生效" ⚠️与同文件 line 436 "该套字段配置独立隔离…互不干扰、不互通"自相矛盾 |
统一修订口径:
字段显隐 / 拖拽排序配置仅当前页面生效,与其他线索列表页(公海 / 我的线索 / 我的关注 / 线索管理)配置互不同步。
【UX-2】列表设置:原型说"拖拽实时保存",产品改为"点保存才落库"(ticket 07)
文案作废共 2 处:
| # | 文件 | 行号 | 原文关键片段 |
|---|---|---|---|
| 1 | a2-1-2____.txt |
1813 | "字段拖拽排序:鼠标拖动列表表头…配置缓存至当前账号"(暗示实时保存) |
| 2 | a2-1-2____.txt |
1843 | "字段配置:拖拽表头、列表设置修改后实时保存" |
统一修订口径:
表头拖拽的临时顺序仅前端本地保留(关页面/刷新即丢),用户在【列表设置】弹窗内点【保存】才把显隐+顺序一起落库;【取消】或未保存关页面则本轮变更全部作废。
【UX-3】公海池"一部门一池",原型江苏 1/2/3 是错误示例(ticket 04)
待改数据:a7-3-1_线索规则.txt 列表数据行:
- "江苏全域公海池1"(江苏队,盐城市,7天/180天/100)
- "江苏全域公海池2"(江苏队,淮安市/淮安,15天/90天/200)
- "江苏全域公海池3"(江苏队,泰州市/泰州,15天/…)
修订:三池合并为 1 池,负责市场取并集(盐城+淮安+泰州);同时清理"淮安市,淮安""泰州市,泰州"等重复脏数据。
【UX-4】转商机触发条件:原型"跟进中/已联系/有效",产品改为"已领取+跟进中"(ticket 08)
文案作废共 3 处(4 行):
| # | 文件 | 行号 | 原文 | 改为 |
|---|---|---|---|---|
| 1 | a2-1-2____.txt |
1826 | "转商机:仅有效 / 跟进中 / 已联系线索可见" | "仅已领取 / 跟进中线索可见" |
| 2 | a2-1-2____.txt |
1898 | "状态为跟进中 / 已联系 / 有效的线索可点击【转商机】按钮" | "状态为已领取 / 跟进中的线索可点击【转商机】按钮" |
| 3a | a2-1-2____.txt |
1929 | "可打开弹窗的线索状态:跟进中、已联系、有效" | "可打开弹窗的线索状态:已领取、跟进中" |
| 3b | a2-1-2____.txt |
1930 | "禁止转商机场景:已转商机、过期失效、无效、未反馈状态" | "禁止转商机场景:待领取、未分发、过期失效、线索作废、已转商机(反馈情况不参与判定)" |
三、当前已可交付的 spec
除上述外部依赖,以下 spec 已定稿可交付开发:
| 模块 / 主题 | ticket | 状态 |
|---|---|---|
| 商机模块现状(不存在) | 01 | ✅ resolved |
| sys_region 表(国标 code 前缀) | 02 + Amendment | ✅ resolved |
| 线索状态机主体(7 态 + 双计时器 + 转商机终态 + 激活 F2) | 03 | 🔩 claimed(仅作废悬置) |
| 公海池 lead_pool 实体(主表+3 关联表)+ 归属 | 04 | ✅ resolved(行级授权部分等 PRD) |
| 线索 lead 实体全字段(含快照策略、时效字段、字典绑定) | 06 + Amendment | ✅ resolved |
| crm-preference 列偏好契约(1 表 2 方法) | 07 | ✅ resolved |
| crm-lead → 商机 outbound port 契约 | 08 | ✅ resolved |
四、优先级建议
按对交付的阻塞程度:
- P0 - 产品-B(PRD 5 项):阻塞 05 与 04 权限部分;影响整个 crm-auth 是否要加通用
sys_row_grant表。最先拿。 - P1 - 产品-A(线索作废):阻塞 03 完整定稿,但业务规则轻,可快速拍板。次先拿。
- P2 - UX 修订清单:不阻塞后端 spec,但影响前端/UX 迭代。并行推进即可。