#3728·nanoclaw

Telegram 入站可能会在数天内默默关闭: pollingLoop 永远不会放弃尝试,在成功时也不会记录任何日志

作者: ergut创建于 2026年9月6日更新于 2026年9月6日
  • 受影响的纳克劳版本或实施

v2.3.0(在v2.1.54上观察,与用v2.3.0装运的适配器进行再验证).

主机平台

链接

发生了什么事?

入境的Telegram默默地去世了~4天. 东道主保持“活跃”状态,外出交货继续工作,代理商的预定任务仍然运行和交付——因此,每个表面操作员都检查身体健康。 只有进城了

主机日志显示11,178连续的"GetUpdates"故障,适配器的"相接故障"计数器永不重设.

根源在QQChat-adapter/telegram中(4.29.0),dist/index.js'-polingLoop':

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么? aync 投票Loop( 配置) { 允许连续失败=0; Const MAQBACKOFF MS = 3e4; (中文(简体) ). (这个. polingAactive) { 尝试{ cont 更新 = 等待 this. telegramFetch ("Get Updates", {...}); 连续失败=0; . . . . . . . . 捕捉(反射){ 连续失败++; const backoffems = Math.min(配置. retry Delayms * 2 ** (连续失败-1), MAX -BACKOFF MS); this.logger.warn (“ 电子邮件投票请求失败 ” ), {错误, 重试Delayms: backoff 女士,连续失败 ? 等待这个. sleep( backoff Ms) ; {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢? {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢? {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?


它永远用30s后退的天花板来重复:**不放弃,不自愈,在任何失败计数时不升级**. 上面没发现什么

** 难以发现的细节:** 成功投票的循环记录 * 无 * ——`连续失败=0'是沉默的。 因此"健康而安静"和"loop已死"在日志中是同字节. 任何仅建立在故障流上的健康检查,在循环停止出气时就是盲目的。

也没有缝接可以挂起健康检查。 `Channel-Adapter ' 宣布`Is Connected ()',但东道主从未称它为`Is Connected ()',而Chat SDK桥则将其称为`返回真实'。

你想怎样?

或是适配器将一个已经故障了几分钟的投票循环升级(因此系统化的‘Restart=Allways'可以恢复),或是NanoClaw通知道入道已死并浮出水面. 向东道方报告`主动 ' 的4天的无声出入境不应达到。

我们怎么复制它?

1. 电报频道并让它正常运行。
2. 从主机(防火墙规则,或DNS黑洞)中突破出行的网络可达性到 " api.telegram.org " ,因此在程序持续运行时, " Get Updates " 失败了。
3. 观察: " 更新 " 失败在日志中累积,30分后退,永远。 东道主保持 " 活动 " ,外出运送仍然有效,预定任务仍然火力。 `连续失败'永不退缩,永不放弃。
4. 柜台高度后恢复可达性。 循环恢复,但从来没有人报告过停电——如果循环停止*,第3步完全不会产生日志行.

OS 版本和 CPU 架构

Ubuntu 24.04.4 LTS, x86 64 (WSL2, 内核 6.18.33.1-微软-标准-WSL2)

Docker 版本

Docker 29.5.3 (英语).

频道或接口
. . . . . . .

内容来源: nanocoai/nanoclaw