把周五到周日此刻(06-26 ~ 06-28 晚)的活按主题归类,每件都讲清 现象/问题 → 为什么 → 怎么解 → 现状/下一步。 源 = git 提交 + 交接文档 + memory 实锤,截至 2026-06-28 22:30。
这个周末四件主线:① 给潜在触达 route-B 补数据闭环(时区/分步状态/关注点赞全落库,且新建了「关注自动化 P1」让云电脑自己每天关人);② 按饭粒复审一轮轮打磨逐日战况页(7 个 PR);③ 根治一批 DM 自动回复老毛病(回声循环、卡单双发、首回误读);④ 抓取时延 P0 定调(瓶颈是产能不是调参)。中间夹两条客户可感故障并已处理:夏夏(零星)号搜索软封(已定位根因+已解封)和 饭粒号重复发给已触达用户(回声循环根治 #610/#612)。另:周六饭粒电脑扣上致后台停摆、route-B 发错人 5 次 —— 用三天发送实数印证,见下方「📊 三天发送实况」。
这两条不是某个功能模块的内部活,而是会被客户或账号真切感知到的事故——单独拎出来,别埋在功能条目里。
8af08f10)抖音搜索软封已解封(非主页)sunshine。sunshine 是抖音搜索结果为空时的推荐位 → 搜索返回空 = 搜索被风控降权/软封(不是坐标、不是分辨率)。根因两层:决定线 = 当天「搜人」动作的累积总量(关注 + DM + route-B 评论多通道堆在一起过线),克隆镜像共用设备指纹只是放大器(拉低阈值、不是扳机)。对照:饭粒同款克隆机、搜得少就没被封 → 否定「克隆指纹决定论」。止血 = 停所有搜人动作养 24-48h(搜索软封可逆),换机器对「搜人量过载」无效。reset-douyin-fingerprint.ps1 清抖音客户端指纹(不动部署,先试这个)→ ② 不行就重登抖音 + 冷却 24-48h + 降频 → ③ 再不行重置无影实例 / 换号 → ④ 防复发:基础镜像别预装抖音,逐台单独装登。同时已做止血:Ctrl+C 停 DM;派单暂停(accounts.dispatch_paused_until 设到 6-27 13:00 BJT,心跳告警 watch 会自动跳过这台、不误报)。reset-douyin-fingerprint.ps1 还得上 —— 下次按封的轻重判,别默认「等等就好」。dispatch_paused_until 恢复派单;之前卡着的「关注自动化 P1」也可按一筑流程部署(见 A2)。防复发(durable):基础镜像别预装抖音、逐台单独装登(克隆共指纹是软封根因,不解决会再犯)。把周五→周日两个号的 DM + 潜在触达发送量拉出来,正好用数据印证上面那几条事故(软封 / 饭粒电脑扣上后台没跑 / 发错人)。口径:DM = messages.status=sent,潜在触达 = second_touch_log,按北京时分日。「小星」= DB 里的「零星」8af08f10(夏夏那台 cloud_pc)。
| 账号 | 通道 | 06-26 五 | 06-27 六 | 06-28 日 | 小计 |
|---|---|---|---|---|---|
| 饭粒(一筑) | DM 私信 | 15 | 8 | 31 | 54 |
| 潜在触达 | 9 | 8 | 13 | 30 | |
| 小星(零星/夏夏) | DM 私信 | 14 | 0 | 0 | 14 |
| 潜在触达 | 0 | 0 | 1 | 1 |
comment_status=wrong_user)。这是 route-B 已知的「搜人进错主页」质量坑,属下一步要收的洞。ban_reason 空、last_active_at 还停在 5 月,该字段没维护)。软封是发送瞬间 status_code 7911 的运行时拒绝、不落库 → 所以软封只能靠现场观察 + 上面的发送中断来佐证,库里没有独立证据。数字源:生产库直查(CST 06-26~28 含)。2026-06-29 独立复核:6 行里 5 行与首次快照逐字一致;仅饭粒潜在触达 06-28 由 12 → 13、小计 29 → 30 —— 首次为 06-28 当日 mid-day 快照,整日完成后晚间又触 1 条(全成)。成色按完整 30 次复核:三连全成=评论1&评论2 都 sent。
关注的人发新视频 → 自动点赞 + 评论1(评视频) + 评论2(搬当初 DM)。周末主要堵「动作做了、库里却记不全」的洞,让 pt-summary 的数能信。(账号软封事故已挪到上面「客户可感事故」区。)
second_touch_log 分步状态 / 评论文字全 NULL已根治touched_video_url + e2e_minutes 有值,但点赞/评论1/评论2 的分步状态 + 评论文字全 NULL。6-12~6-17 那批旧的反而是有的——说明 going-forward 某处断了。comment_log_YYYYMMDD.csv 二次回读。文件丢 / 跨午夜日期错位 / hit[-1] 取错行 / 匹配键漂移——任一发生就回读到空 {} → 分步字段全 NULL。_aweme_id 主键还被 csv.DictWriter(extrasaction='ignore') 静默丢掉(主键自始就死、touched_video_aweme_id 永远 NULL)。--result-out=PATH:每条三连结果按 _sec_uid 落确定性 JSON sidecar(精确路径、无日期、发前清空),并把 aweme_id/create_time/detected_at 补进字段;consume 改 read_result_row(json) or read_comment_log_row()(JSON 优先、缺失回退老 CSV)。commit 3448bf7e,已合 main + 镜像 + 云电脑重启。comment1_status/评论文字有值、touched_video_aweme_id 非 NULL 全部恢复)。基线脚本 scripts/_pt-log-baseline.ts。datetime.now()(不带时区)写 like_at/comment1_at/... → 进 Supabase timestamptz 被当成 UTC 存 → 比真实早 8h。datetime.now(timezone.utc).isoformat()(4 处;文件名仍按北京日不动)。pt-summary 读侧已加临时纠偏(完成时刻比 created_at 晚 >4h 自动减 8h,所以页面当下已正确);存量 3 行历史双移已 backfill(like_at −8h)。feat/wuying-routeb-auto-sync)。无影跑的是本地脚本、不自动同步 → 需手动拉新 + 重启常驻 agent 才止住源头;不重启页面也不会错(读侧纠偏兜着),但库里原始值会继续偏,建议尽快重部署。sent_log,可追可核。本周末新分支 feat/wuying-routeb-auto-sync 即这条线的收口。route-B 的前提是「关注了对方,对方发新视频才进关注流被逮到」。周末把「关注动作」从手动闭环升级到云电脑自驱。
export-follow-pool.ts 按号导出(#571)② _follow_grounded.py 加窗口锁(#575,DM 优先、和 consume 同款锁)③ 服务端真相源(#576):migration 放开 monitored_targets.reason 收 no_owner + cron refresh-monitored-targets 算 no_owner 进库(高意向·未触达·未领·7d 窗口·djb2 ring 分配给 3 个号)+ --from-db 模式云电脑直读库 ④ follow-daily.bat + schtasks 每日 10:00 自驱。--from-db 验到 218、follow 实关 17+4、schtasks 每日 10:00 已挂、DM+watch+consume 重启自更新、consume 当天真触达 ~6 人。start-dm-routeb.bat 双击报乱码错。_realtime_touch_watch_wuying.py 在 argparse 之前没 load .env → --account 默认空 → _setup_db 返 None → db=None → 退回文件池且 log_feed_coverage RPC 永不写(follow 没踩是因为它 import dm 时顺带 load 了 .env)。.bat:中文注释 UTF-8 被 cmd 当 GBK 读 → 乱码。main() 开头加 _load_env()(2ce6b315);.bat 改纯英文(49525db5)。pt_feed_coverage 一筑开始有数。饭粒逐条复审、Claude 逐版改,把「潜在触达旅程汇总页」从能看升级到能信能讲。
6eccaa89 把「超时未发」回看窗 2→7 天,绑 PT_NO_OWNER_DAYS 对齐监控池。无影 / web DM 自动回复这周末拔了几类老毛病。
role=customer 客户来信 → cron dm-auto-reply 当真生成 chatReply → gate 自动审批 approved → 无影发出 → capture 又把这条已发气泡读成 customer → 自己跟自己聊的回声循环。6/26 上线的噪声闸没拦住,是因为云电脑发完没回调 complete_dm_reply(草稿卡 sending)→ 拟回复从没写进 messages(role=ai) → 噪声闸 rule 9 比不到 → 漏判成 customer;另外 rule 5 只匹配「X小时前在线」漏了真实文案「X小时内在线」(内≠前)。85147a77,已生产验证)三道:A 噪声闸 rule 9 除 role=ai 外再比 dm_reply_drafts.draft(近 14 天未弃);B gate.ts looksLikeOwnBubble 识别本号口吻→转人工不自动发;C rule 5 改「前|内」都吃。止血:把非终态草稿 UPDATE … SET status='needs_human'(别用 discarded,挡不住重生)。sending 状态时盲目重试 → 同一条发两遍。runBy 非 cron 的手动试跑。围绕「高意向评论从产生到我们抓到要多久」做了一轮决定性归档(2026-06-24~28)。
workflow_dispatch。GH_TOKEN。Deploy Vercel/CI run 失败,脑补成「部署全停摆、所有 PR 积压等 owner 修」,整整几轮当结论讲、还差点惊动 org owner(Gus)去查一个不存在的故障。curl 线上 commit 就翻案:prod 实际 = f655958(#629 刚部署),只落后 main 3 个 docs 提交,待上线功能早已在 prod。那几次红的 run 是零星/瞬时、部署自己恢复了,没有任何东西卡住。curl .../api/status | jq .commit 对 origin/main;某 PR 上没上用 git merge-base --is-ancestor。CI run 红只是中间信号,不是部署现实。sent_at 为准(果洛塔慕误判 48min 复盘:截图气泡时间戳 ≠ 发送时间);「deploy 绿 ≠ 效果」扩成双向;公开页加交互前先分清 iframe(srcdoc) vs innerHTML 注入;重试循环别用 | tail 判 git push 成败(吞 exit code)。
源:Akke 仓 git log(feat/wuying-routeb-auto-sync + main,06-26 00:00 → 06-28 22:30)+ docs/handoffs 交接 + docs/claude-memory 实锤。
一次性周报快照 · 生成于 2026-06-28 · 不随后续提交自动更新。