Audit · 2026-10-13

稿「发布后群里没动静」
审计报告与修复

罗田侧:链路断点定位 · 三条根因 · 已修复 · 已补推一张群卡片
智游侧:同口径核查 · 结论「链路是通的,卡在还没发布」

结论:不是微信的问题,也不是老板操作的问题。 是我们这边「谁在建稿、谁负责发布后推群」这条链断了两处 —— ①出稿器建完稿没有登记,系统压根不知道有这些稿; ②已经登记的稿,登记时指向的批次文件已经不存在,程序读不到就静默跳过。 两处叠加 = 发布得再对,群里也不会响。现已修复并补推成功。

一、现场(都是拉接口实测)

时间发生了什么
11:41–11:52罗田旅游在后台发布 10 篇(含 7 篇甜柿预售系列),该号草稿箱清空
11:41–11:52企微群【智游大别山晨报群】0 条群卡片
11:46 / 11:56巡检程序照常每 10 分钟跑一轮:先报「草稿仍在箱」,拿到「草稿已消失」后立刻报
读批次文件失败 → 打一行就跳过,没有任何告警

二、三条根因

主因建稿不登记 = 系统不知道有这条稿

7 篇甜柿预售 + 每日一工具 + 本周任务,由我们的出稿器直接建进草稿箱,从来没有写进「待推群」清单。

而「发布后自动推群」的巡检只认那份清单 —— 清单里没有它,就永远不会推。当时的闭环只覆盖了另一条出稿路径(网页版日刊)。

取证:清单里只有当天 08:40 的两条日刊记录;三个出稿器里搜「登记」相关代码 = 0 处命中。

次因登记的批次文件已失效,程序静默跳过

清单里那两条(08:40 日刊)登记的批次文件名,在盘上已经不存在(文件已改名)。程序读到「草稿已发布」,去取内容时抛错 → 老代码只打印一行警告就continue,既不可见也不告警。

取证:日志里 10-11 那两批也是同样的死法 —— 说明这不是今天才断的,是一直静默失败。

结构缺口没有第二条通道

「发布后推群」只有一个执行入口,且只服务日刊链路;甜柿预售 / 每日一工具 / 本周任务没有对应通道。

三、修复(已上线,全部实测)

部位做了什么
出稿器
func_daily
建稿(新建)与原地更新(刷新)两条路都登记进待推群清单;同一稿只登记一条,写失败不影响建稿。
⇒ 以后任何稿一建好,就在系统的监视之下。
巡检程序
auto_group2
新增一段「出稿器稿」专用逻辑:草稿消失 → 按 标题回查公众号真实已发布文章 → 同号当日聚合成一张卡片(企微卡片上限 8 篇)→ 推群。
带运行锁(防两实例各推一份)、审计行(谁发的、发了什么一眼可查)、 过夜未发布自动失效(省接口配额)、已推过的当天不重复。
批次缺失 不再静默:先退当日统一批次 → 再按标题回查 → 都不行写 告警 + 审计,重试 3 轮后停止轮询。
守卫固定 源码级断言:出稿器必须登记(≥2 处调用)、巡检必须读清单且仍会调推群; 副本守卫纳入该巡检程序(关键分裂 0);服务器文件上不可改锁。改坏了当场报错。

四、结果:已补推一张群卡片

✅ 已送达 企微群「智游大别山晨报群」 · 8 篇 · 发送返回 errcode = 0
这是我们罗田的秋天,进山先看这一篇天堂寨、薄刀峰都是石阶步道,鞋要防滑,水要自带。本地人给你列一份进山清单。
这些盛开,代表着秋意九月下旬,罗田的金桂银桂开了。巷子里的香、簸箕里晒着的花、月饼里那点甜,都是给回家的人留的。
甜柿怎么发货:按下单先后下树,顺丰冷链直发按下单先后下树、顺丰冷链 48~72 小时直达、坏果包赔。
甜柿三档怎么选:39 / 59 / 99蜜糖柿 39 / 中果 59 / 秋焰礼盒 99,都是 5 斤装。看个头、看甜度、看用途,一句话就会选。
柿柿如意:一盒甜柿,把好彩头寄出去柿谐音「事」,中国人叫它吉祥果。墨绿烫金礼盒 +「柿柿如意」祝福卡。
柿子不用泡就能吃?罗田甜柿就是这样世界唯一自然脱涩的甜柿,可溶性单宁 ≤0.20%,摘下即食、一点不涩。
关于罗田甜柿预售,常被问到的几件事什么时候发、孕妇小孩能吃吗、坏了怎么办、能发哪些地区。
甜柿开预售了:錾字石的红果,按订单先后下树当季预售、树上现摘现发。蜜糖柿 39 / 中果 59 / 秋焰礼盒 99,都是 5 斤装。

卡片里的每一篇都是公众号真实已发布文章的标题 + 摘要 + 封面(不是站外链接、不是重复内容)。

五、验收口径

六、智游大别山侧:同口径核查(2026-10-13 傍晚)

结论:智游这条链是通的,卡在「稿还没发布」,不是坏了。 今天智游大别山一篇都没「发布」(已发表 0 篇),11 条稿全躺在草稿箱里; 而推群卡片的扳机是「草稿从草稿箱消失(= 你在后台按了发布)」。 草稿没发出去,巡检每 10 分钟就只能记一条「草稿仍在箱,未发布,等待…」—— 这正是它在正常等你的发布动作。
实测项结果
智游 · 今日已发表0 篇(已发表总数 63,最近一篇停在 10-12 21:32)
智游 · 草稿箱11 条(清单见下)
罗田 · 今日已发表12 篇(最近 17:51)· 卡都出了:12:00 一张 8 篇、17:56 一张 1 篇
差异罗田你发了 → 有卡;智游你没发 → 没卡。链路同一个,差在「发没发」。

在监视中智游草稿箱这 11 条,一发布就自动出卡

取证:这 9 条(除 08:40 与 17:09)已在新链路的监视清单里 —— 其中 16:54 那条就是修复后新代码自动登记的, 证明智游侧的监视是「活的」。你在后台点任意一篇「发布」,10 分钟内群里就会出现卡片。

旁证智游今天确实往群里推过一张卡

17:02:08 推了一张【新行程】卡到「智游大别山晨报群」—— 走的是「行程页部署后自动推群」那条通道(你 9-10 令「做好链接自动生成海报自动推送」的那条), 不是「公众号帖发布后推群」这条。两条通道并存,别混淆。

七、交代一句

发布动作我们一概没碰 —— 罗田那 10 篇是老板自己在后台发的;系统只做了「发现已发布 → 补推群」。

另外查了:这条链的「静默失败」不是今天才有的,历史日志里 10-11 那两批也是这样死掉的(只是当时没被发现)。现在失败一定会留下告警 + 审计行,不会再无声无息。

智游大别山 · 罗田旅游
审计与修复 · 2026-10-13