═ 埋点 ═ plan_event_logs 新增事件 script_copy,reason 列存渠道(wecom / phone,都登记进 PlanEventReason —— 那一列的注释写死了"不要在调用处随手写字符串")。 为什么值得记:企微稿的正常用法就是复制出去发给患者,复制那一下之后客服就离开 PAC 了 —— 这是我们能观测到的**最接近"真的用了"**的信号。生成完没人复制 = 生成了但没人用,那是产品问题不是模型问题,而这件事此前完全看不见。 口径(回归里锁着,这两条改错不会有任何编译错误): · byHuman=false —— 复制 ≠ 联系了患者(复制完可能没发)。算进 HUMAN_TOUCH_EVENTS 的话「处理过的患者」会静默膨胀成"复制一下也算",与 view 同一类错误。 · holdsPatient=false —— 可能发生在未认领的单上,不参与归属区间。 端点不加认领闸(同 :id/view):主管浏览时也能复制,加闸统计直接偏。 ═ 顺带修掉两个真 bug ═ 1)🔴 路由遮蔽 —— **已有的话术👍 👎 反馈按钮从来没生效过**。 Express 把 ':id/script:regenerate' 里的 :regenerate 当路径参数,模式实际是 「字面量 script + 参数」,于是 /script-feedback 和 /script-copy 全部命中它 (参数 = '-feedback' / '-copy')。点一次反馈 = 真的重新生成一次话术: 花 AI 钱 + 覆盖已有稿,而前端拿到 200、界面一切正常,**不报任何错**。 治标:字面量路由挪到冒号路由之前(Express 按声明顺序匹配)。 治本是把 :verb 改成 /verb,会动前端与文档契约,没在这一刀做。 新增 route-shadowing.spec 用文本扫描锁住顺序 —— 这个 bug 恰恰不会在类型 或运行时暴露,只能这么防。已验证:把 script-copy 挪回去,测试立刻红。 2) 复制按钮在 http / 宿主 iframe 下**点了毫无反应**。 navigator.clipboard.writeText 在非 https 或 iframe 里直接 NotAllowedError, 而原写法把 setCopied 放在它后面 → 不报错、不变文案,客服会以为按钮坏了。 加 execCommand 回落路径。⭐ 埋点挪到最前面,与剪贴板成败**解耦** —— 记的是"点了复制"这个意图。 剪贴板被拒时客服往往改成手动选中复制(真的用了),埋点不该跟着一起丢。 实测:点复制 → script_copy | wecom | 操作人 832 | 带批次号 t 落库。 1024 tests,两个 tsc + next build 干净。
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| enums | Loading commit data... | |
| schemas | Loading commit data... | |
| utils | Loading commit data... | |
| canonical-codes.ts | Loading commit data... | |
| clinical-signals.ts | Loading commit data... | |
| host-action-message.ts | Loading commit data... | |
| index.ts | Loading commit data... | |
| kin-relationship.ts | Loading commit data... | |
| labels.ts | Loading commit data... | |
| persona-feature-specs.ts | Loading commit data... | |
| persona-tag-filters.ts | Loading commit data... | |
| temperature.ts | Loading commit data... | |
| visit-recency.ts | Loading commit data... |