This digest covers critical bugs in backup verification on macOS, significant UX regressions in Telegram streaming and typing indicators, and a high-severity model failover loop affecting agent availability.
Open Issues
Recent activity in the OpenClaw repository reveals several critical stability and user experience issues, particularly concerning backup integrity, channel-specific regressions, and model routing logic.
Critical Infrastructure & Stability
- Backup Verification Failures (#79791, #75007): A high-severity bug affects macOS users where scheduled backups fail verification due to duplicate root manifests. This occurs because the daemon sets
TMPDIR inside the state directory, causing the backup process to recursively pack the temporary manifest file twice. While a fix is in flight (PR #79790), users are advised to override TMPDIR to a path outside the state directory as a temporary workaround.
- Model Failover Loops (#79740): A severe issue exists where hard authentication failures (e.g., 403 Forbidden) trigger an infinite failover loop. The system attempts to switch to a fallback model, but a
LiveSessionModelSwitchError immediately re-pins the session to the broken primary model, saturating the event loop and making the gateway appear unresponsive.
- Gateway Restart Deadlocks (#79739, #79577): Issues with the
update.run process have led to deadlocks where the gateway fails to restart into a new runtime because it attempts to dynamic-import modules that were rewritten during the update. Additionally, some SIGUSR1 restart signals are being ignored as "unauthorized," leaving the restart state stuck as "in-flight."
Channel & UX Regressions
- Telegram UX Degradation (#79681, #79684, #79679): Multiple reports indicate a regression in the Telegram typing indicator, which no longer stays visible during active agent work. This is compounded by a lack of durable completion receipts for tool-heavy turns, leaving users uncertain if a task (e.g., filing a GitHub issue) actually finished. Furthermore, link previews are now unreliable when delivered via the partial streaming/edited message path.
- Discord Connectivity (#79580, #79522): Discord typing indicators stop working entirely after a WebSocket reconnect following an outage. Additionally, some users on Node v26 are seeing
Unexpected token \u001f errors, indicating that gzip-encoded HTTP responses are not being decompressed before JSON parsing.
- Feishu Group Issues (#77869, #79748): Reports indicate that Feishu group chat replies are sometimes silently dropped (
replies=0) despite successful dispatch, and browser-related operations in group chats can block the entire session.
Model & Runtime Behavior
- Gemini Pro Streaming Race (#79629): A race condition in the
ReplyDispatcher prevents the finalized event from firing for slow-reasoning models. This leads the gateway to treat the session as timed out, retracting already-delivered tokens and triggering an unwanted model fallback.
- Claude CLI Memory Loss (#79713): Sessions using the
claude-cli runtime lose prior context upon invalidation if the session has never been compacted, as loadCliSessionReseedMessages returns an empty array, defeating the historyPrompt fallback.
- Qwen Tool Parsing (#79697, #78326): Users of Qwen3.6 and other Harmony-format models are encountering tool-call parsing errors, where the system fails to recognize native tool-call syntax, resulting in runs that terminate without performing work.
Key Themes
1. The "Silent Failure" Pattern
Across multiple reports, a recurring theme is the lack of visible feedback when a process fails or is in progress. Whether it is the missing Telegram typing indicator, the silent failure of backup create --verify, or the replies=0 issue in Feishu, users are left guessing the state of the system.
2. Environment-Specific Fragility
Many of the high-severity bugs are tied to specific environments: macOS TMPDIR configurations, Node v26 gzip handling, and Windows-specific file locks during memory reindexing (#79708). This suggests a need for more robust cross-platform abstraction in the core runtime.
3. Model-Specific Edge Cases
As OpenClaw integrates more diverse models (Qwen, Gemini Pro, Claude Opus), the gaps in the generic tool-parsing and streaming logic are becoming apparent. The "Harmony" format and slow-reasoning streaming are primary examples of where the current general-purpose logic is insufficient.
Action Required
Immediate Attention Required
- #79791 / #75007 (Backup Bug): Critical for data integrity. Ensure PR #79790 is merged and verified across macOS and Linux.
- #79740 (Failover Loop): High priority. This bug can cause total gateway unavailability for specific agents. Needs a fix to ensure terminal auth failures pin the session to the fallback model.
- #79739 (Update Deadlock): Critical for the update experience. The restart logic needs to be decoupled from the dynamic import of swapped modules.
Blocked or High-Severity
- #79629 (Gemini Streaming): Causes data loss (token retraction). Requires a fix for the
ReplyDispatcher race condition.
- #79681 (Telegram Typing): Major UX regression. Needs investigation into why the typing keepalive is being suppressed during active runs.
- #79713 (Claude CLI Memory): Affects the core value proposition of conversational memory for a large segment of users.
Contributor Opportunities
- #79710 (Tool Robustness): A proposal for truncation detection and auto-segmentation of oversized writes is open for implementation.
- #79164 (Config Rollback): A request to implement automatic config backups and rollbacks on gateway failure to prevent lock-outs.
Deploy OpenClaw on Nominiclaw
Get your own OpenClaw bot running in minutes.
Get Started →