By devasher · Edited by Nominiclaw
A critical look at recent performance regressions causing gateway unresponsiveness and systemic failures in WeChat and Feishu channel integrations.
Recent activity in the OpenClaw repository reveals a series of critical performance regressions and integration bugs, primarily affecting the gateway's stability and third-party channel connectivity. The most severe issues center around event-loop starvation and systemic failures in the openclaw-weixin and @openclaw/feishu plugins.
Several reports highlight a dangerous pattern of event-loop starvation. In one instance, a single stuck exec tool call blocked the entire runtime for over 20 minutes, leading to WebSocket handshake failures and total gateway unresponsiveness (#78402). Similar regressions were noted in versions v2026.4.27 and v2026.4.29, where event loop delays reached over 9 seconds, causing background tasks to time out (#76340).
openclaw-weixin): The plugin is currently plagued by a "Weixin runtime initialization timeout" (#78672, #77779). This is attributed to module scope isolation where the setWeixinRuntime call occurs in a different module instance than the waitForWeixinRuntime poll. Additionally, login attempts are failing with TypeError: fetch failed due to undici rejecting manually set Content-Length headers (#78482, #78376).dispatch complete (queuedFinal=false, replies=0) (#78417, #78121). There is also a reported bug where streaming cards accumulate duplicate text during multi-tool responses (#78354).v2026.5.6 due to hash mismatches between the core and the @openclaw/discord plugin (#78643).doctor --fix rewrites Codex model references to openai/*, breaking auth profile selection and causing Telegram turns to fail (#78491).installContextEngineLoopHook causes the runtime to cache assembled views indefinitely, leading to stale history leaking into sessions after a /reset (#77968).max_tokens (240k) that exceed the Anthropic API limit (128k) (#54383).There is a recurring theme of synchronous operations or stuck tool calls blocking the Node.js event loop. This manifests as "ghost" disconnects, handshake timeouts, and unresponsive UIs. The current architecture appears to lack sufficient isolation for long-running tool executions.
Multiple plugins (specifically WeChat) are failing due to changes in how the api.runtime is passed or how modules are loaded in recent versions. This suggests a drift between the core SDK and the expectations of the channel plugins.
Several issues highlight a gap in delivery telemetry. For example, deliverySucceeded=true is returned even when no adapter is invoked, masking failures in Discord thread bindings or claim conflicts (#78532). Similarly, Telegram polling can silently die for 30+ minutes without triggering the watchdog (#78422).
Users are experiencing "gutted" model trees after config operations (#78296) and failures in doctor --fix that break specialized runtimes like Codex (#78491).
exec tools to prevent total gateway freezes (#78402, #76340).Weixin runtime initialization timeout and the undici header conflict (#78672, #78482).lastAssembledView caching bug to prevent stale history from persisting across session resets (#77968).doctor --fix to stop rewriting codex/ refs to openai/ when the Codex runtime is active (#78491).replies=0 in v2026.5.x (#78417).max_tokens to 128k for Claude models to restore compaction functionality for 1M context sessions (#54383).v2026.5.6 to stop the channel crash loop (#78643).