Commit Graph

40 Commits

Author SHA1 Message Date
浅念 2587e4dd08 docs(management): 批次D员工页计划——总览+详情+环比+预设补全(Task D0-D4)
评审3真问题全修:排序白名单四列(余列不排序)/服务页签图改P50P90双线
(员工级无每日率序列)/CSV扩csvExport注释行+rows适配;advisory全采:
异常卡补employee_name(一行后端)/showEmployee复用开关/formula_note归位/
伪卡片下钻衔接/compare仅显示态
2026-09-10 11:02:27 +08:00
浅念 2b10c07fb7 docs(management): 批次C前端计划——驾驶舱+导航(Task C0-C6)
评审4真问题全修:drilldown行补channel字段(C0后端契约补全)/DimSummary
补name+weight/端口3000→8000;advisory全采:服务图双轴/共享格式化提升
format.ts/去硬编码41/client契约字段补全
2026-09-10 09:44:39 +08:00
浅念 9fbd572bb7 docs(management): 批次B终评收尾——validate_config补源名唯一性+遗留观察项归档
批次B终评Approve后两处闭环:
- validate_config补源指标名跨维度唯一校验(comparisons按源名建键的
  静默覆盖防线)+测试
- 观察项归档:call_band样本基数(批次F)/源名唯一(已修)/性能与winsorize(批次F)
2026-09-09 19:28:48 +08:00
浅念 23ac95f2e4 docs(management): 批次B真机冒烟——六端点耗时/回测员工抽查/记录
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-09 19:17:56 +08:00
浅念 57ace98792 docs(management): 批次B计划同步band basis决议——active_friends周期distinct(与B2/B3实现一致) 2026-09-09 18:12:26 +08:00
浅念 d523813435 docs(management): 批次B实施计划——评分/异常/六只读API端点(Task B0-B5)
评审两minor+五advisory全采纳:active_share期末行口径/异常严重度加权排序/
窗口函数列表达式/affected_count定义/channel=all翻译/错误风格偏差注明
2026-09-09 16:46:39 +08:00
浅念 639edf56a6 docs(management): 批次A回填实测+对账记录+DEPLOY部署注记
- 核实文档追加Task8小节:回填实测汇总(fact 68,476行/72s,宽表12,371+
  通话1,163/71s,幂等,同源68,476≡68,476,孤儿0,通话314天)
- 对账抽查:王云青+田瑞志×3日期×三组,①②组12/12逐日全一致,③组宽表
  ≤日切(差值=跨夜串归属效应,全期12,055 vs 20,981折叠57.4%验证串未丢)
- 批次A验收清单11项全过(653测试本机复跑绿,写钩子零改动逐commit核查)
- DEPLOY.md §7 新增批次A附加步骤:b7c8d9e0f1a2手动alembic+两条回填
  命令及顺序依赖(employee-metrics必须在first-reply-facts之后)

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-09 16:20:33 +08:00
浅念 e725c7032a docs(management): 批次A计划Task6代码块同步评审修正——hist时点语义/防御性flush
与 ad3beb7 实际实现对齐:day_msgs+cum 累积数组(hist=≤as_of,历史日沉睡门槛
不被未来消息虚增)、每日循环末 flush、accumulate import
2026-09-09 14:45:58 +08:00
浅念 399ecc680f docs(management): Task0核实修正——微信peer主体为无后缀裸ID(96.3%)+未命中全为群通话
偏差#5 原三后缀列表会误导 Task3 peer 建模:实测 customer 微信侧 6,779/7,040
为裸 ID(96.3%),@openim 仅 261;message.talker_id 行数口径裸 ID 844,287。
⑤ 未命中成因精确化:voice_call 126 条未命中恰为 126 条 @chatroom 群通话,
剔除后 1:1 命中率 100%;wa 未命中 5 条全部为 @g.us 群通话。

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-09 11:55:52 +08:00
浅念 b8c2bef6df docs(management): 批次A Task0核实记录——phone_call/customer/staff/群占比/回测名单
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-09 11:42:53 +08:00
浅念 5f6bfe1ff6 docs(management): 批次A计划评审修正——通话幽灵过滤+alembic head对齐
评审发现2真问题+5条cosmetic全修:
- recompute_call_days 补 known_user_ids 幽灵过滤(否则自家测试就挂)
- down_revision e6f7a8b9c0d1→f7a8b9c0d1e2(d428953 customer_account_link
  已推head,照抄会双head报错)
- 测试计数9/文件数4/新增30/import声明/删占位SQL
2026-09-09 10:42:19 +08:00
浅念 27f91e560d docs(management): 批次A数据底座实施计划——Task0-8全码级拆解
五项核实→六表模型/migration→跨日精确fact算法→生命周期纯函数→
通话小表→宽表(1:1口径/同源/幽灵过滤/纯生命周期日出行)→两条回填CLI→
本地全量实测对账。判别测试覆盖v2 §9全部防线(跨夜串/friend口径/
同源/超集/幂等)。批次B-F待批次A合入后另出计划
2026-09-09 10:34:32 +08:00
浅念 a866ea8abd docs(management): v2补通话小表决议——phone_call.channel是通话类型非消息渠道,渠道维宽表会双计
计划阶段发现:PhoneCall.channel ∈ {phone_call,voice_call}(models.py docstring
自证 calls are not tied to a messaging channel),v2把通话四列放进
(day,channel,user)宽表在channel=all聚合时双计。拆出employee_call_daily
(day,user_id)独立小表;§1.2补#9,P3重排#10-#14,§3改6张表,§4链路更新
2026-09-09 10:34:32 +08:00
浅念 4ad239597e docs(management): v2计划复核收尾——评审确认后修4处文档级问题
评审代理逐案例推演确认P1#5同源修正算法成立(Approval维持),遗留修正:
- §1.1#2修正列更新(串类三列由fact同源输出,不再说全量自算)
- §1.1#5去掉'>100%'夸大表述(单向低估,不可达)
- §9对账点限定消息计数列(串类列禁止相等断言)
- Task0口径只记录文档,配置落库归Task3种子CLI
- P2/P3行号全局重排(#6-#13),交叉引用同步
- §3.2负载列补数据源标注;时效说明措辞精确化

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-08 16:46:40 +08:00
浅念 8257086921 docs(management): v2计划第五轮复查——回复率分子分母同源修正(P1#5)+配置种子等补充
- P1#5:宽表串类三列改由fact计算模块同源输出(串末条归属日),
  不再取msg_daily_stats日切聚合——混口径会使多日未回串膨胀分母,
  回复率低估甚至>100%;msg计数/负载列与串算法无关仍取msg_daily_stats
- P2/P3:Task3补默认配置v1.0种子落库;时效说明;metric_version默认v1;
  call_followup多账号语义进Task0核实;继承索引补v1 §12.1/12.2;
  测试补分子分母同源判据(reply_rate<=1/threads_answered≡fact行数)

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-08 16:40:35 +08:00
浅念 7a7eba766d docs(management): v2计划评审修正——引用定位/删减清单补全/口径表补活跃员工行
评审结论 Approved + 4 条 advisory 全部采纳:
- 降温频次定义/异常裁剪原则的引用从 v1 修正为上游整合计划
- 删减清单补 effective_sessions/activated_customer_count/cust_threads 更名说明
- 口径决议表补活跃员工(幽灵过滤)差异行

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-08 16:35:55 +08:00
浅念 c7b7df5011 docs(management): 经营管理后台v2实施计划——查漏补缺修订版
对 v1 逐项对照现有代码重新设计技术底座:
- P1修正:fact表跨日精确算法独立计算(跨夜串丢失/写钩子零改动);
  宽表1:1口径全量自算(stat_daily_staff混合口径不可拷贝);
  生命周期统一距今天数口径;对账判据预写死
- P2修正:分位数SQL窗口函数;full_sync 12→14步
- P3:核实清单/幽灵员工过滤/功能开关降级/五维图3+2占位

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-08 16:30:36 +08:00
浅念 81af615738 docs(plan): 复核残留修订——exportListToCsv真实签名落地代码块/调度测试改相对日期
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-04 14:48:45 +08:00
浅念 0bc1250476 docs(plan): 评审修订——修5处seed/签名矛盾+起步词库补种+四页角标
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-04 14:42:56 +08:00
浅念 aecb556efd docs(plan): 数据分析板块 v1 实施计划——17 任务 TDD 全链(模型/指标/C1/调度/四页)
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-04 14:25:20 +08:00
浅念 c21758dfb2 docs(plan): 填写Task4判别记录(双编码发现+逐码证据+回填终态+前端兜底注意)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-25 15:32:07 +08:00
浅念 2f73d79a6d docs(plan): 吸收评审4条(groups路由实为model_validate免改/客户搜索需加q参数/moments调度+图片本地化补step/行号校正)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-25 12:35:41 +08:00
浅念 05a31022db docs(plan): 员工聊天窗口五视图实施计划(15任务:后端7+前端8,TDD+真机判别spike)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-25 12:31:53 +08:00
浅念 123c23242c chore: start_backend.sh启动脚本+plan4a/4b历史计划文档
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-19 16:48:22 +08:00
浅念 82f7505298 docs(spec+plan): 删除 AccountList 页(/accounts→/staff 重定向,总 spec 收尾)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-08 17:15:04 +08:00
浅念 e487556253 docs(plan): 导出会话HTML(③)实现计划(ChatTimeline 按钮 + downloadBlob 文件名修复)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-08 17:04:53 +08:00
浅念 4d18a0e755 docs(plan): ④ 移除未用 chatChannel(避免 noUnusedLocals,WA 时再加)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-08 16:17:53 +08:00
浅念 18919f3401 docs(plan): CallList ④ 微信语音 单元格可点 实现计划
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-08 16:15:50 +08:00
浅念 4cb6cf50c4 docs(plan): step5 plan 评审修复(删 getMessages import + Task4 显式替换说明)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-08 14:53:39 +08:00
浅念 c6dbda3bec docs(plan): ChatTimeline 会话列表 step5 实现计划(后端 /api/sessions + 双栏 + 选择器)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-08 14:47:49 +08:00
浅念 abe86489b9 docs(plan): stat modal Phase B 实现计划(列对齐 + 客户微信带窗跳聊天)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-08 13:41:53 +08:00
浅念 f6c45e983a docs(plan): 微信员工 5 数字 modal Phase A 实现计划(全本地 message 聚合)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-07 18:20:42 +08:00
浅念 90e614e2d7 docs(plan): 录音本地化 plan 修订——修复下载死循环 + 测试 session + WA v-if
plan review 反馈:while 循环加 tried 集合排除已试 call_id(持续失败行不死循环);
_make_engine 只返回 engine 需自建 sessionmaker;WA 录音按钮 v-if 用 ossFileName。

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-07 16:06:56 +08:00
浅念 a2f6b023fa docs(plan): 录音批量本地化实现计划(6 task,TDD,复用 media 管道)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-07 15:59:46 +08:00
浅念 a66c3be00a chore: final Minor polish — export filename/test断言, downloadBlob 类型/清理, plan docs
address review Minors: drop redundant filename replace, assert 暂无消息,
tighten downloadBlob return type + try/finally, fix plan group time-picker wording.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-06 18:06:17 +08:00
浅念 de08bd09c7 docs: Plan 3 — GroupList 对齐云客(采集 + TDD plan)
phase0 采集云客「沟通」板块群列表(微信 wechatdetail/2 + WA friendlist 群列表 tab),
写 Plan 3(分 channel tab 各自列 + viewChat),经 plan-reviewer 评审 Approved。
已知 gap:smoke.db 0 群(空表验证)+ WA 群抓取缺失(字段推断)。

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-06 11:11:37 +08:00
浅念 c31d79f1e2 docs: Plan 2 — CustomerList 对齐云客(采集 + TDD plan)
phase0 采集云客「沟通」板块客户列表(wechat wechatdetail/1 + waBusiness/friendlist),
dump raw_json 字段覆盖,产出列+交互+字段映射;写 Plan 2(分 channel tab 各 7 列 +
查看聊天记录→ChatTimeline),经 plan-reviewer 评审 Approved。

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-06 10:12:36 +08:00
浅念 9499110427 docs(plan): record wechat staff-list probe + adjust Task 8/9
WeChat interactions are navigation (not modal): 好友数/群数→customer/group list, 昵称→chat. Task 8 redone as navigation; Task 9 uses owner_account_id + row.channel.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-05 18:35:18 +08:00
浅念 1d815d84b9 docs: UI alignment spec + StaffList interaction plan
Spec: align all list/detail pages to 云客 (columns + interactions); covers interaction taxonomy, backend extensions (customer add_time/filters, /api/sessions), phase-0 capture. Plan 1: StaffList interaction closure + customer backend + YkStaffDetailModal.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-05 18:30:12 +08:00
浅念 cd8d36fd00 docs: initial design spec, data dictionary, implementation plan
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-01 10:53:28 +08:00