从评论筛选、话术生成、WDA 真机投递到自动回复、决策阶段引导转微 —— AI 链路里「被人看见」的最后一公里。
评论批量送入 Qwen3-235b-a22b:输出 intent_score 0-100 + intent_label,高意向的同步调 generateOpener 直出首条 DM 草稿,并调 worker enrichCommentCity 推断城市。
2026-04-27 cron 大修战果(4 层并发 bug 修复):
| 指标 | 修复前 → 修复后 |
|---|---|
| 积压清空 | 1822 条 / 74 min |
| 高意向总数 | 39 → 456 |
| 待审核私信 | 0 → 429 |
| 今日高意向 | 0 → 282 |
昵称含「定制 / 工厂 / 源头 / 批发 / 招商 / 加盟 / 官方号」等 7 类关键词全部排除。失败案例:「长春豪格家居有限公司官方号」intent=95,靠人工兜底剔除。
评论 created_at < NOW − 7d 全部剔除,无视 intent 多高。实测旧评论 4 条 → 0 条投递成功。
排除 message_queue 已有 sent / sending / approved 的 sec_uid。重发返 7462 永久作废 sec_uid。
单 messaging_account 24h 内已 sent < 12 才允许新批次。超过约 20 条触发 silent drop。
ORDER BY intent_score DESC, comment_time DESC —— intent 高 + 评论新鲜双指标,单一指标会把 1 周前的 100 分排在 1 天前的 95 分前面,误伤窗口期。10 个招呼词全异 · 性别由 f2 user.gender 推断 · 0/未知时按昵称特征兜底。
videos.description 命中率 60% · 降级用评论关键词挂钩 · 严禁杜撰视频内容。
f2 user.ip_location 命中率 93% · 讲业务覆盖能力,不讲气候/民俗。
区间不报具体单价(6-10w / 8-12w / 15-20w)· 反问落到客户当下决策(推翻 vs 改局部 / 新房 vs 二装)。
\n · 5 维度散度对照 · 不报具体地址 · 不报具体单价 · 不杜撰视频细节。send_keys 遇到 \n 会拆成 N 条独立 DM —— 已永久作废过 1 个 sec_uid,sender 加自动折叠安全网。WDA 投递架构:
| 配置项 | 数值 |
|---|---|
| 设备 | iPhone 13 Pro · iOS 26.3.1 |
| 签名 | Personal Team · 7d 证书边界 |
| 桥接 | pymobiledevice3 9.12+(RSD QUIC 隧道) |
| Bundle ID | com.kara.WebDriverAgentRunner |
| 状态码 | 含义 | 处置 |
|---|---|---|
| 7173 | 对方关闭陌生人私信 | 永久 mark_failed |
| 7462 | per-pair 1 条配额已用完 | 永久 mark_failed |
| 7911 | 短期 burst 限频 | 全队列暂停 12-24h |
| 22102 | 账号观察期 | 整号停发 72h |
| silent | input 清空但 bubble 不出现 | 本号 24h 软上限到了 |
三层节流:
| 层 | 限制 | 数值 |
|---|---|---|
| L1 | 每条间隔 | 90 ~ 180 s 随机 |
| L2 | 单小时 | ≤ 9 条(fast-flick 上限) |
| L3 | 单号 24h | ≤ 15 条(留 5 条余量) |
WDA 主动轮询「消息」Tab,把对方回复镜像回 Supabase,Operator 在 dashboard 看到回复后点「生成回复」走 chatReply → 审批 → sender 投递。
conversations.stage 五态状态机:
| Phase | 状态 | 说明 |
|---|---|---|
| Phase 1+2 | DELIVERED | wda_helpers + dm_ios_wda_inbox_poll.py 已 ship |
| Phase 3 | PENDING | LLM 自动回复 — 等 nickname 反查防错号 |
| Phase 4 | PENDING | decision 切换 — 同上链路依赖 Phase 3 |
每个 org 在 brand_profile 里独立持有 wechat_id + wechat_qr_url。chatReply 在 decision 阶段注入引导块:
system prompt 注入:「客户高意向时,自然地告知微信号「{wechatId}」,引导加微深聊」。
system prompt 注入:「严禁编造任何微信号,客户问加微信时只能说『请留下联系方式,设计师会主动联系您』」。这条护栏极关键 —— 没有它 LLM 在 decision 阶段大概率会自行脑补一个微信号。