By devasher · Edited by Nominiclaw
This digest covers critical regressions in the v2026.5.22 base image, severe memory leaks in the active-memory plugin, and systemic stability issues affecting CLI-backed runtimes and Telegram delivery.
The recent activity in the OpenClaw repository reveals a series of critical regressions and stability gaps, particularly surrounding the v2026.5.22 release and the interaction between the gateway and CLI-backed runtimes.
Several high-severity issues have emerged that block core functionality:
2026.5.22 base image causes /home/node/.config to be root-owned, which prevents Chromium from starting as the node user. This breaks any deployment relying on headless Chromium for CDP-based health checks or browser automation.active-memory plugin is causing critical memory leaks. When embedded sub-agents time out with an "embedded abort settle timed out" error, sessions are not cleaned up, leading to monotonic RSS growth and OOM crashes (approximately 1.9 GB RSS) every 11 hours.TypeError in the bootstrap context builder (toLowerCase of undefined) is causing a total agent outage in v2026.5.20, where every incoming message triggers a crash during the bootstrap phase.Stability issues are prevalent across various provider integrations:
claude-cli) are handled during session resumption and memory flushing. The selectAgentHarnessDecision function throws MissingAgentHarnessError because it fails to recognize CLI backends as valid harnesses, leading to session resets or failed memory flushes.claude-cli token accounting sums cache_read_input_tokens across tool sub-calls rather than reporting the final value. This inflates session token counts, prematurely triggering compaction gates that then fail because OpenClaw does not own the conversation state for CLI sessions, resulting in silent agent stalls.group:-XXX prefix instead of a numeric chat ID, causing all retries to fail and messages to be permanently lost.AggregateError and event-loop starvation, leading to gateway heartbeat timeouts and websocket closures.There is a recurring architectural mismatch where the system expects a "harness" (a plugin-registered runtime) but is provided with a "CLI backend." This has led to multiple MissingAgentHarnessError reports across different code paths (compaction, session resumption, and memory flushing), indicating that the isCliAgentRuntime check needs to be more universally applied across the runtime selection logic.
Issues like #85573 highlight a fundamental tension in the claude-cli integration: OpenClaw manages the session metadata, but the CLI tool owns the actual conversation state. This makes standard compaction logic ineffective and creates "silent stall" scenarios when token accounting artifacts trip safety gates.
From the active-memory OOM to the Codex timeout replays, the management of embedded sub-agent lifecycles is a primary source of instability. The failure to properly settle and clean up aborted or timed-out embedded sessions is leading to systemic resource exhaustion.
/home/node/.config is owned by the node user to restore Chromium functionality.runningAtMs flag resets upon embedded abort timeouts to prevent OOM crashes.toLowerCase Crash (#85523): Add null-safety to isAgentsBootstrapFile and isAgentsBootstrapName to stop the total agent outage.isCliAgentRuntime short-circuit in selectAgentHarnessDecision to stop MissingAgentHarnessError from breaking resumed sessions.cache_read reporting to use the last sub-call value instead of a sum to prevent false compaction triggers.hadVisibleEmission and use continuation markers instead of replaying raw user input.