diff --git a/CHANGELOG/2026.9.4.md b/CHANGELOG/2026.9.4.md index 12bf8a7d24dd..78fa1488ff9b 100644 --- a/CHANGELOG/2026.9.4.md +++ b/CHANGELOG/2026.9.4.md @@ -1,4 +1,4 @@ - + ## 2026.9.4 @@ -39,15 +39,15 @@ _A way past startup trouble without changing Node for your other apps. Conceptua **Improvements** - Avoid loading error diagnostics during healthy startup [#142371](https://github.com/openclaw/openclaw/pull/142371). -- Offer a private Node.js update when the CLI cannot start [#142742](https://github.com/openclaw/openclaw/pull/142742). Thanks @jason-allen-oneal, @morrow-bluedot, @jialele. +- Offer a private Node.js update when the CLI cannot start [#142742](https://github.com/openclaw/openclaw/pull/142742). Thanks [@jason-allen-oneal](https://github.com/jason-allen-oneal), [@morrow-bluedot](https://github.com/morrow-bluedot), [@jialele](https://github.com/jialele). **Bug fixes** - Explain unusable macOS SQLite overrides [#141948](https://github.com/openclaw/openclaw/pull/141948). - Check the selected SQLite library during Bun installation and diagnostics [#142186](https://github.com/openclaw/openclaw/pull/142186). -- Repair stale Gateway service Node runtimes without forcing reinstall [#143159](https://github.com/openclaw/openclaw/pull/143159). Thanks @jialele, @TheAngryPit. +- Repair stale Gateway service Node runtimes without forcing reinstall [#143159](https://github.com/openclaw/openclaw/pull/143159). Thanks [@jialele](https://github.com/jialele), [@TheAngryPit](https://github.com/TheAngryPit). - Restore diagnostics on unsupported Node runtimes [#143344](https://github.com/openclaw/openclaw/pull/143344). -- Reuse compatible installed Node during startup and upgrades [#143464](https://github.com/openclaw/openclaw/pull/143464). Thanks @aeoess. +- Reuse compatible installed Node during startup and upgrades [#143464](https://github.com/openclaw/openclaw/pull/143464). Thanks [@aeoess](https://github.com/aeoess). - Allow short help and version flags during Node recovery [#143485](https://github.com/openclaw/openclaw/pull/143485). - Preserve macOS Bun SQLite settings in managed services [#143651](https://github.com/openclaw/openclaw/pull/143651). @@ -58,7 +58,7 @@ _A way past startup trouble without changing Node for your other apps. Conceptua **Limits and compatibility** -- Check SQLite behavior before accepting Node runtimes [#143312](https://github.com/openclaw/openclaw/pull/143312). Thanks @aeoess. +- Check SQLite behavior before accepting Node runtimes [#143312](https://github.com/openclaw/openclaw/pull/143312). Thanks [@aeoess](https://github.com/aeoess). @@ -78,16 +78,16 @@ Mac installation no longer gets stuck in the affected Homebrew Bash setups, and **Bug fixes** - Prevent installer hangs with newer Homebrew Bash [#141884](https://github.com/openclaw/openclaw/pull/141884). -- Restore Docker source dependency installation [#142073](https://github.com/openclaw/openclaw/pull/142073). Thanks @vincentkoc. -- Preserve portable shell completion hooks during installation [#143282](https://github.com/openclaw/openclaw/pull/143282). Thanks @LiuwqGit, @obviyus, @jlapenna. +- Restore Docker source dependency installation [#142073](https://github.com/openclaw/openclaw/pull/142073). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Preserve portable shell completion hooks during installation [#143282](https://github.com/openclaw/openclaw/pull/143282). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@jlapenna](https://github.com/jlapenna). **Documentation** -- Clarify the Node 26 recommendation for package installs [#135539](https://github.com/openclaw/openclaw/pull/135539). Thanks @kvnloo, @obviyus. -- Clarify Gateway service account and shutdown guidance [#136266](https://github.com/openclaw/openclaw/pull/136266). Thanks @yetval, @obviyus, @abacha. -- Explain startup and restart effects before service installation [#139562](https://github.com/openclaw/openclaw/pull/139562). Thanks @TheCrazyLex, @obviyus. +- Clarify the Node 26 recommendation for package installs [#135539](https://github.com/openclaw/openclaw/pull/135539). Thanks [@kvnloo](https://github.com/kvnloo), [@obviyus](https://github.com/obviyus). +- Clarify Gateway service account and shutdown guidance [#136266](https://github.com/openclaw/openclaw/pull/136266). Thanks [@yetval](https://github.com/yetval), [@obviyus](https://github.com/obviyus), [@abacha](https://github.com/abacha). +- Explain startup and restart effects before service installation [#139562](https://github.com/openclaw/openclaw/pull/139562). Thanks [@TheCrazyLex](https://github.com/TheCrazyLex), [@obviyus](https://github.com/obviyus). - Clarify automatic system-Bash handling for installers [#142038](https://github.com/openclaw/openclaw/pull/142038). -- Split Docker reference material into focused guides [#143087](https://github.com/openclaw/openclaw/pull/143087). Thanks @vincentkoc. +- Split Docker reference material into focused guides [#143087](https://github.com/openclaw/openclaw/pull/143087). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -108,18 +108,18 @@ An empty background memory check no longer makes a fresh Claw think setup is alr **Improvements** -- Explain mobile setup codes pasted into browser sign-in [#141717](https://github.com/openclaw/openclaw/pull/141717). Thanks @DonnieFi. +- Explain mobile setup codes pasted into browser sign-in [#141717](https://github.com/openclaw/openclaw/pull/141717). Thanks [@DonnieFi](https://github.com/DonnieFi). **Bug fixes** -- Use protected provider keys in New Agent setup [#141586](https://github.com/openclaw/openclaw/pull/141586). Thanks @miguelbranco80, @IWhatsskill, @wenbiyou, @lisheguo. -- Preserve first-run setup after empty dreaming sweeps [#141808](https://github.com/openclaw/openclaw/pull/141808). Thanks @SunnyShu0925, @obviyus, @dh-js, @ayaangazali. -- Stop Moonshot China authentication reinstall loops [#143742](https://github.com/openclaw/openclaw/pull/143742). Thanks @zwyhmcn. +- Use protected provider keys in New Agent setup [#141586](https://github.com/openclaw/openclaw/pull/141586). Thanks [@miguelbranco80](https://github.com/miguelbranco80), [@IWhatsskill](https://github.com/IWhatsskill), [@wenbiyou](https://github.com/wenbiyou), [@lisheguo](https://github.com/lisheguo). +- Preserve first-run setup after empty dreaming sweeps [#141808](https://github.com/openclaw/openclaw/pull/141808). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus), [@dh-js](https://github.com/dh-js), [@ayaangazali](https://github.com/ayaangazali). +- Stop Moonshot China authentication reinstall loops [#143742](https://github.com/openclaw/openclaw/pull/143742). Thanks [@zwyhmcn](https://github.com/zwyhmcn). **Documentation** - Align setup and rotation guidance around one Gateway secret [#141723](https://github.com/openclaw/openclaw/pull/141723). -- Correct Gateway-host provider setup instructions [#143983](https://github.com/openclaw/openclaw/pull/143983). Thanks @vincentkoc. +- Correct Gateway-host provider setup instructions [#143983](https://github.com/openclaw/openclaw/pull/143983). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -138,14 +138,14 @@ If you have several agents, guided messaging setup now lets you choose whose wor **Bug fixes** -- Choose an agent workspace during guided channel setup [#128738](https://github.com/openclaw/openclaw/pull/128738). Thanks @Leon-SK668, @obviyus, @JunfXiao. -- Select an agent for onboarding recommendations [#141775](https://github.com/openclaw/openclaw/pull/141775). Thanks @ChrisCantwell, @obviyus. +- Choose an agent workspace during guided channel setup [#128738](https://github.com/openclaw/openclaw/pull/128738). Thanks [@Leon-SK668](https://github.com/Leon-SK668), [@obviyus](https://github.com/obviyus), [@JunfXiao](https://github.com/JunfXiao). +- Select an agent for onboarding recommendations [#141775](https://github.com/openclaw/openclaw/pull/141775). Thanks [@ChrisCantwell](https://github.com/ChrisCantwell), [@obviyus](https://github.com/obviyus). - Resolve environment values for channel setup checks [#141781](https://github.com/openclaw/openclaw/pull/141781). -- Accept agent selection after recommendation subcommands [#142019](https://github.com/openclaw/openclaw/pull/142019). Thanks @obviyus. +- Accept agent selection after recommendation subcommands [#142019](https://github.com/openclaw/openclaw/pull/142019). Thanks [@obviyus](https://github.com/obviyus). **Documentation** -- Complete node setup and command-approval instructions [#136268](https://github.com/openclaw/openclaw/pull/136268). Thanks @yetval, @obviyus, @ccaprani. +- Complete node setup and command-approval instructions [#136268](https://github.com/openclaw/openclaw/pull/136268). Thanks [@yetval](https://github.com/yetval), [@obviyus](https://github.com/obviyus), [@ccaprani](https://github.com/ccaprani). @@ -164,8 +164,8 @@ Phone setup help now points you to [`openclaw qr`](https://docs.openclaw.ai/cli/ **Documentation** -- Correct Android pairing and browser access guidance [4ccdd7e](https://github.com/openclaw/openclaw/commit/4ccdd7e005754b426483d78d2c00064df14216a6). Thanks @yetval. -- Point mobile setup users to the QR command in CLI help [#141756](https://github.com/openclaw/openclaw/pull/141756). Thanks @chelsealong, @obviyus, @tomdailey55. +- Correct Android pairing and browser access guidance [4ccdd7e](https://github.com/openclaw/openclaw/commit/4ccdd7e005754b426483d78d2c00064df14216a6). Thanks [@yetval](https://github.com/yetval). +- Point mobile setup users to the QR command in CLI help [#141756](https://github.com/openclaw/openclaw/pull/141756). Thanks [@chelsealong](https://github.com/chelsealong), [@obviyus](https://github.com/obviyus), [@tomdailey55](https://github.com/tomdailey55). @@ -227,18 +227,18 @@ The [first-run help](https://docs.openclaw.ai/help/faq-first-run/quick-start) se **Documentation** -- Correct setup routing, Gateway port spacing, logging styles, and existing Windows, channel, Codex, and provider guidance [#141214](https://github.com/openclaw/openclaw/pull/141214). Thanks @vincentkoc. -- Split Why OpenClaw architecture and comparison references into focused pages [#142989](https://github.com/openclaw/openclaw/pull/142989). Thanks @vincentkoc. -- Link workspace templates, macOS Skills, and related setup guides directly [#143022](https://github.com/openclaw/openclaw/pull/143022). Thanks @vincentkoc. -- Correct copied setup commands, token-display instructions, memory examples, and retry and heartbeat guidance [#143029](https://github.com/openclaw/openclaw/pull/143029). Thanks @vincentkoc. -- Split first-run FAQ into focused setup and hosting pages [#143148](https://github.com/openclaw/openclaw/pull/143148). Thanks @vincentkoc. -- Correct Diffs installation, Ollama credentials, IMAP account examples, and CLI and tool guidance [#143179](https://github.com/openclaw/openclaw/pull/143179). Thanks @vincentkoc. +- Correct setup routing, Gateway port spacing, logging styles, and existing Windows, channel, Codex, and provider guidance [#141214](https://github.com/openclaw/openclaw/pull/141214). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split Why OpenClaw architecture and comparison references into focused pages [#142989](https://github.com/openclaw/openclaw/pull/142989). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Link workspace templates, macOS Skills, and related setup guides directly [#143022](https://github.com/openclaw/openclaw/pull/143022). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct copied setup commands, token-display instructions, memory examples, and retry and heartbeat guidance [#143029](https://github.com/openclaw/openclaw/pull/143029). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split first-run FAQ into focused setup and hosting pages [#143148](https://github.com/openclaw/openclaw/pull/143148). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct Diffs installation, Ollama credentials, IMAP account examples, and CLI and tool guidance [#143179](https://github.com/openclaw/openclaw/pull/143179). Thanks [@vincentkoc](https://github.com/vincentkoc). - Clarify explicit ClawHub skill selection [#143371](https://github.com/openclaw/openclaw/pull/143371). -- Clarify voice-call and acpx prerequisites, text-model validation, memory setup, and delegate examples [#143927](https://github.com/openclaw/openclaw/pull/143927). Thanks @vincentkoc. -- Correct transcription models, camera flags, Matrix defaults, Signal checks, and existing media-migration guidance [#143950](https://github.com/openclaw/openclaw/pull/143950). Thanks @vincentkoc. -- Complete remote Mac, Arcee, and plugin SDK examples and clarify documented version history [#144032](https://github.com/openclaw/openclaw/pull/144032). Thanks @vincentkoc. -- Clarify memory CLI defaults, stop/backup/start migration steps, Reef setup, and status and group links [#144083](https://github.com/openclaw/openclaw/pull/144083). Thanks @vincentkoc. -- Add installation prerequisites and clarify Render troubleshooting, Ollama credentials, Mac version matching, and existing client controls [#144085](https://github.com/openclaw/openclaw/pull/144085). Thanks @vincentkoc. +- Clarify voice-call and acpx prerequisites, text-model validation, memory setup, and delegate examples [#143927](https://github.com/openclaw/openclaw/pull/143927). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct transcription models, camera flags, Matrix defaults, Signal checks, and existing media-migration guidance [#143950](https://github.com/openclaw/openclaw/pull/143950). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Complete remote Mac, Arcee, and plugin SDK examples and clarify documented version history [#144032](https://github.com/openclaw/openclaw/pull/144032). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify memory CLI defaults, stop/backup/start migration steps, Reef setup, and status and group links [#144083](https://github.com/openclaw/openclaw/pull/144083). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add installation prerequisites and clarify Render troubleshooting, Ollama credentials, Mac version matching, and existing client controls [#144085](https://github.com/openclaw/openclaw/pull/144085). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -269,21 +269,21 @@ _Recognizable conversations for the garden opening. Published 2026.9.4 interface **Improvements** -- Start ungrouped sessions from the Other heading [#142544](https://github.com/openclaw/openclaw/pull/142544). Thanks @Patrick-Erichsen. +- Start ungrouped sessions from the Other heading [#142544](https://github.com/openclaw/openclaw/pull/142544). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Recover stale remembered chats when opening the web UI [#133653](https://github.com/openclaw/openclaw/pull/133653). Thanks @RomneyDa. -- Keep readable chat titles and preserve manual names [#141600](https://github.com/openclaw/openclaw/pull/141600). Thanks @DonnieFi, @IWhatsskill, @jjjhenriksen. -- Align sidebar session counts [#141924](https://github.com/openclaw/openclaw/pull/141924). Thanks @RomneyDa. -- Prevent overlapping sidebar session controls [#142042](https://github.com/openclaw/openclaw/pull/142042). Thanks @RomneyDa. +- Recover stale remembered chats when opening the web UI [#133653](https://github.com/openclaw/openclaw/pull/133653). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Keep readable chat titles and preserve manual names [#141600](https://github.com/openclaw/openclaw/pull/141600). Thanks [@DonnieFi](https://github.com/DonnieFi), [@IWhatsskill](https://github.com/IWhatsskill), [@jjjhenriksen](https://github.com/jjjhenriksen). +- Align sidebar session counts [#141924](https://github.com/openclaw/openclaw/pull/141924). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Prevent overlapping sidebar session controls [#142042](https://github.com/openclaw/openclaw/pull/142042). Thanks [@RomneyDa](https://github.com/RomneyDa). - Clear previous session timing when a new run starts [#142187](https://github.com/openclaw/openclaw/pull/142187). -- Remove unintended underlines from Online sidebar names [#142217](https://github.com/openclaw/openclaw/pull/142217). Thanks @vyctorbrzezowski. -- Remove phantom sidebar children after subagent deletion [#142438](https://github.com/openclaw/openclaw/pull/142438). Thanks @jalehman, @vyctorbrzezowski. -- Finish opening the mobile sidebar after a swipe [#142578](https://github.com/openclaw/openclaw/pull/142578). Thanks @jalehman. +- Remove unintended underlines from Online sidebar names [#142217](https://github.com/openclaw/openclaw/pull/142217). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Remove phantom sidebar children after subagent deletion [#142438](https://github.com/openclaw/openclaw/pull/142438). Thanks [@jalehman](https://github.com/jalehman), [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Finish opening the mobile sidebar after a swipe [#142578](https://github.com/openclaw/openclaw/pull/142578). Thanks [@jalehman](https://github.com/jalehman). - Keep session details, child breadcrumbs and history retries consistent [#143049](https://github.com/openclaw/openclaw/pull/143049). - Restore multi-agent session lists after model fallback [#143337](https://github.com/openclaw/openclaw/pull/143337). -- Preserve native session actions after adoption [#143342](https://github.com/openclaw/openclaw/pull/143342). Thanks @sunlit-deng, @obviyus, @bricelb. +- Preserve native session actions after adoption [#143342](https://github.com/openclaw/openclaw/pull/143342). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@obviyus](https://github.com/obviyus), [@bricelb](https://github.com/bricelb). - Name device and cloud sessions before their first turn [#143760](https://github.com/openclaw/openclaw/pull/143760). @@ -303,13 +303,13 @@ A slim [message navigator](https://docs.openclaw.ai/web/control-ui/chat) on the **Improvements** -- Navigate long chats with a compact per-message rail [#142227](https://github.com/openclaw/openclaw/pull/142227). Thanks @vyctorbrzezowski. -- Show senders in shared-chat navigation previews [#143486](https://github.com/openclaw/openclaw/pull/143486). Thanks @vyctorbrzezowski. +- Navigate long chats with a compact per-message rail [#142227](https://github.com/openclaw/openclaw/pull/142227). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Show senders in shared-chat navigation previews [#143486](https://github.com/openclaw/openclaw/pull/143486). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). **Bug fixes** -- Render Markdown in conversation rail previews [#142442](https://github.com/openclaw/openclaw/pull/142442). Thanks @jalehman. -- Smooth the Scroll to latest transition [#142720](https://github.com/openclaw/openclaw/pull/142720). Thanks @vyctorbrzezowski. +- Render Markdown in conversation rail previews [#142442](https://github.com/openclaw/openclaw/pull/142442). Thanks [@jalehman](https://github.com/jalehman). +- Smooth the Scroll to latest transition [#142720](https://github.com/openclaw/openclaw/pull/142720). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). @@ -330,9 +330,9 @@ If you use the same web address to connect to several Gateways, a conversation s **Improvements** -- Delay and fade conversation loading placeholders [3c322522](https://github.com/openclaw/openclaw/commit/3c322522d8413702c8bfed211fb02a443e047906). Context [#134868](https://github.com/openclaw/openclaw/pull/134868). Thanks @jesse-merhi. +- Delay and fade conversation loading placeholders [3c322522](https://github.com/openclaw/openclaw/commit/3c322522d8413702c8bfed211fb02a443e047906). Context [#134868](https://github.com/openclaw/openclaw/pull/134868). Thanks [@jesse-merhi](https://github.com/jesse-merhi). - Show cached chat and sidebar content while reconnecting [#141121](https://github.com/openclaw/openclaw/pull/141121). Context [#141690](https://github.com/openclaw/openclaw/issues/141690). -- Reduce startup JavaScript while retaining translated Settings help [#143376](https://github.com/openclaw/openclaw/pull/143376). Thanks @vincentkoc. +- Reduce startup JavaScript while retaining translated Settings help [#143376](https://github.com/openclaw/openclaw/pull/143376). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -355,15 +355,15 @@ _The selected welcome text appears in the composer and remains unsent. Published **Improvements** -- Add selected text to the main chat draft [#142543](https://github.com/openclaw/openclaw/pull/142543). Thanks @Patrick-Erichsen. +- Add selected text to the main chat draft [#142543](https://github.com/openclaw/openclaw/pull/142543). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). - Translate Add to chat across 20 existing locales [#142576](https://github.com/openclaw/openclaw/pull/142576). **Bug fixes** -- Fix mobile chat spacing, scrolling previews, and keyboard focus [#142143](https://github.com/openclaw/openclaw/pull/142143). Thanks @IWhatsskill, @vyctorbrzezowski. +- Fix mobile chat spacing, scrolling previews, and keyboard focus [#142143](https://github.com/openclaw/openclaw/pull/142143). Thanks [@IWhatsskill](https://github.com/IWhatsskill), [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Refresh attachment overflow cues after changes and resizing [#142577](https://github.com/openclaw/openclaw/pull/142577). -- Align composer attachments with draft text [#142658](https://github.com/openclaw/openclaw/pull/142658). Thanks @vyctorbrzezowski. -- Keep long drafts readable while typing [#142955](https://github.com/openclaw/openclaw/pull/142955). Thanks @jalehman. +- Align composer attachments with draft text [#142658](https://github.com/openclaw/openclaw/pull/142658). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Keep long drafts readable while typing [#142955](https://github.com/openclaw/openclaw/pull/142955). Thanks [@jalehman](https://github.com/jalehman). - Refresh shared-chat previews when a tab stops typing [#143400](https://github.com/openclaw/openclaw/pull/143400). @@ -383,16 +383,16 @@ Images you send stay visible while the conversation updates, and scrolling back **Improvements** -- Place file cards above text and align participant media [#142671](https://github.com/openclaw/openclaw/pull/142671). Thanks @vyctorbrzezowski. +- Place file cards above text and align participant media [#142671](https://github.com/openclaw/openclaw/pull/142671). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). **Bug fixes** -- Keep loaded images visible when scrolling back through chat [#138303](https://github.com/openclaw/openclaw/pull/138303). Context [#138301](https://github.com/openclaw/openclaw/issues/138301). Thanks @vyctorbrzezowski. -- Make chat attachment spacing consistent [#142246](https://github.com/openclaw/openclaw/pull/142246). Thanks @vyctorbrzezowski. -- Prevent duplicate final replies as chat history loads [#142422](https://github.com/openclaw/openclaw/pull/142422). Thanks @jalehman. -- Show loading progress while attachment previews resolve [#142613](https://github.com/openclaw/openclaw/pull/142613). Thanks @vyctorbrzezowski. -- Align attachment placeholders with Open buttons [#142665](https://github.com/openclaw/openclaw/pull/142665). Thanks @vyctorbrzezowski. -- Align sender avatars with attachment text [#142694](https://github.com/openclaw/openclaw/pull/142694). Thanks @vyctorbrzezowski. +- Keep loaded images visible when scrolling back through chat [#138303](https://github.com/openclaw/openclaw/pull/138303). Context [#138301](https://github.com/openclaw/openclaw/issues/138301). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Make chat attachment spacing consistent [#142246](https://github.com/openclaw/openclaw/pull/142246). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Prevent duplicate final replies as chat history loads [#142422](https://github.com/openclaw/openclaw/pull/142422). Thanks [@jalehman](https://github.com/jalehman). +- Show loading progress while attachment previews resolve [#142613](https://github.com/openclaw/openclaw/pull/142613). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Align attachment placeholders with Open buttons [#142665](https://github.com/openclaw/openclaw/pull/142665). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Align sender avatars with attachment text [#142694](https://github.com/openclaw/openclaw/pull/142694). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Prevent duplicate bubbles after CLI history refresh [#142725](https://github.com/openclaw/openclaw/pull/142725). - Keep sent images visible during history loading [#143407](https://github.com/openclaw/openclaw/pull/143407). @@ -413,8 +413,8 @@ Selected videos can now show a still image in the message box, so you can tell s **Improvements** -- Preview selected videos before sending [#142623](https://github.com/openclaw/openclaw/pull/142623). Thanks @vyctorbrzezowski. -- Show user video previews above chat text [#142639](https://github.com/openclaw/openclaw/pull/142639). Thanks @vyctorbrzezowski. +- Preview selected videos before sending [#142623](https://github.com/openclaw/openclaw/pull/142623). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Show user video previews above chat text [#142639](https://github.com/openclaw/openclaw/pull/142639). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). @@ -439,11 +439,11 @@ _A fictional welcome brief opens in Review beside its conversation. Published 20 **Bug fixes** -- Protect newer workspace edits from stale editor saves [#135865](https://github.com/openclaw/openclaw/pull/135865). Context [#127592](https://github.com/openclaw/openclaw/issues/127592). Thanks @yetval, @obviyus. +- Protect newer workspace edits from stale editor saves [#135865](https://github.com/openclaw/openclaw/pull/135865). Context [#127592](https://github.com/openclaw/openclaw/issues/127592). Thanks [@yetval](https://github.com/yetval), [@obviyus](https://github.com/obviyus). - Correct expanded file-preview tooltips [#142039](https://github.com/openclaw/openclaw/pull/142039). -- Compact phone file previews and retain fullscreen identity [#142536](https://github.com/openclaw/openclaw/pull/142536). Thanks @vyctorbrzezowski. +- Compact phone file previews and retain fullscreen identity [#142536](https://github.com/openclaw/openclaw/pull/142536). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Browse long file lists with search and filters [#143854](https://github.com/openclaw/openclaw/pull/143854). -- Show why a file could not open [#143958](https://github.com/openclaw/openclaw/pull/143958). Thanks @Marvinthebored, @Peetiegonzalez, @obviyus. +- Show why a file could not open [#143958](https://github.com/openclaw/openclaw/pull/143958). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@Peetiegonzalez](https://github.com/Peetiegonzalez), [@obviyus](https://github.com/obviyus). @@ -486,12 +486,12 @@ Finished and cancelled helper tasks stop showing their old working messages, whi **Bug fixes** -- Clear stale activity text when subagent tasks finish [#129610](https://github.com/openclaw/openclaw/pull/129610). Thanks @jalehman. -- Keep tool commentary single and visible after refresh [#140834](https://github.com/openclaw/openclaw/pull/140834). Thanks @leapdragon, @obviyus. +- Clear stale activity text when subagent tasks finish [#129610](https://github.com/openclaw/openclaw/pull/129610). Thanks [@jalehman](https://github.com/jalehman). +- Keep tool commentary single and visible after refresh [#140834](https://github.com/openclaw/openclaw/pull/140834). Thanks [@leapdragon](https://github.com/leapdragon), [@obviyus](https://github.com/obviyus). - Preserve paragraphs and code blocks in displayed reasoning [#142231](https://github.com/openclaw/openclaw/pull/142231). -- Keep subagent reports above the view-only footer [#142275](https://github.com/openclaw/openclaw/pull/142275). Thanks @vyctorbrzezowski. +- Keep subagent reports above the view-only footer [#142275](https://github.com/openclaw/openclaw/pull/142275). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Preserve literal text in tool activity previews [#142436](https://github.com/openclaw/openclaw/pull/142436). -- Discourage progress cards for quick requests [#142696](https://github.com/openclaw/openclaw/pull/142696). Thanks @vyctorbrzezowski. +- Discourage progress cards for quick requests [#142696](https://github.com/openclaw/openclaw/pull/142696). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Make subagent activity previews readable [#143741](https://github.com/openclaw/openclaw/pull/143741). @@ -511,11 +511,11 @@ Click the [Dashboard](https://docs.openclaw.ai/web/dashboards) tab to give it th **Improvements** -- Expand Dashboard and restore the original split [#143579](https://github.com/openclaw/openclaw/pull/143579). Thanks @fuller-stack-dev. +- Expand Dashboard and restore the original split [#143579](https://github.com/openclaw/openclaw/pull/143579). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). **Bug fixes** -- Show activity for the dashboard widget's target session [#137255](https://github.com/openclaw/openclaw/pull/137255). Context [#137188](https://github.com/openclaw/openclaw/issues/137188). Thanks @sunlit-deng, @obviyus, @Richard355168, @benjaml4. +- Show activity for the dashboard widget's target session [#137255](https://github.com/openclaw/openclaw/pull/137255). Context [#137188](https://github.com/openclaw/openclaw/issues/137188). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@obviyus](https://github.com/obviyus), [@Richard355168](https://github.com/Richard355168), [@benjaml4](https://github.com/benjaml4). @@ -536,9 +536,9 @@ If uploads remain blocked after a crash, follow the [terminal recovery steps](ht **Bug fixes** -- Recover terminal uploads after failed lock release [#141250](https://github.com/openclaw/openclaw/pull/141250). Context [#137116](https://github.com/openclaw/openclaw/issues/137116). Thanks @shakkernerd. -- Insert uploaded paths into paired-node coding terminals [#142001](https://github.com/openclaw/openclaw/pull/142001). Thanks @shakkernerd. -- Keep terminal tabs during interrupted restoration [#144015](https://github.com/openclaw/openclaw/pull/144015). Thanks @vincentkoc. +- Recover terminal uploads after failed lock release [#141250](https://github.com/openclaw/openclaw/pull/141250). Context [#137116](https://github.com/openclaw/openclaw/issues/137116). Thanks [@shakkernerd](https://github.com/shakkernerd). +- Insert uploaded paths into paired-node coding terminals [#142001](https://github.com/openclaw/openclaw/pull/142001). Thanks [@shakkernerd](https://github.com/shakkernerd). +- Keep terminal tabs during interrupted restoration [#144015](https://github.com/openclaw/openclaw/pull/144015). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** @@ -565,13 +565,13 @@ _Searching for appearance narrows navigation to the real theme and accent contro **Improvements** -- Open Agents settings on Overview [#142884](https://github.com/openclaw/openclaw/pull/142884). Thanks @jalehman. +- Open Agents settings on Overview [#142884](https://github.com/openclaw/openclaw/pull/142884). Thanks [@jalehman](https://github.com/jalehman). **Bug fixes** -- Match Web search controls to the global disable setting [#121557](https://github.com/openclaw/openclaw/pull/121557). Context [#121401](https://github.com/openclaw/openclaw/issues/121401). Thanks @zyw02, @obviyus. -- Distinguish Mac and iPad browser labels [#136545](https://github.com/openclaw/openclaw/pull/136545). Context [#136544](https://github.com/openclaw/openclaw/issues/136544). Thanks @TheAngryPit, @obviyus. -- Keep shortened account labels valid Unicode [#137686](https://github.com/openclaw/openclaw/pull/137686). Thanks @ly85206559, @obviyus. +- Match Web search controls to the global disable setting [#121557](https://github.com/openclaw/openclaw/pull/121557). Context [#121401](https://github.com/openclaw/openclaw/issues/121401). Thanks [@zyw02](https://github.com/zyw02), [@obviyus](https://github.com/obviyus). +- Distinguish Mac and iPad browser labels [#136545](https://github.com/openclaw/openclaw/pull/136545). Context [#136544](https://github.com/openclaw/openclaw/issues/136544). Thanks [@TheAngryPit](https://github.com/TheAngryPit), [@obviyus](https://github.com/obviyus). +- Keep shortened account labels valid Unicode [#137686](https://github.com/openclaw/openclaw/pull/137686). Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). - Start empty numeric settings at the first allowed value [#142201](https://github.com/openclaw/openclaw/pull/142201). - Keep unfinished Settings edits when list rows move [#142564](https://github.com/openclaw/openclaw/pull/142564). - Preserve Settings phrase matches around tag filters [#142618](https://github.com/openclaw/openclaw/pull/142618). @@ -594,17 +594,17 @@ The mention picker keeps suggestions available while you refine a search, making **Improvements** -- Simplify mention labels and improve picker layout [#142274](https://github.com/openclaw/openclaw/pull/142274). Thanks @vyctorbrzezowski. +- Simplify mention labels and improve picker layout [#142274](https://github.com/openclaw/openclaw/pull/142274). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Reduce repeated presence reads across watched sessions [#142612](https://github.com/openclaw/openclaw/pull/142612). **Bug fixes** -- Restore picker avatars on authenticated Gateways [#140954](https://github.com/openclaw/openclaw/pull/140954). Context [#140879](https://github.com/openclaw/openclaw/issues/140879). Thanks @LiuwqGit, @obviyus, @dimonnld, @rondavis007. +- Restore picker avatars on authenticated Gateways [#140954](https://github.com/openclaw/openclaw/pull/140954). Context [#140879](https://github.com/openclaw/openclaw/issues/140879). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@dimonnld](https://github.com/dimonnld), [@rondavis007](https://github.com/rondavis007). - Label shared Gateway owner presence in the web UI [#141863](https://github.com/openclaw/openclaw/pull/141863). -- Restore saved avatars in agent settings [#142015](https://github.com/openclaw/openclaw/pull/142015). Thanks @LiuwqGit, @obviyus, @lei-happy. -- Keep person mention suggestions available while typing [#142332](https://github.com/openclaw/openclaw/pull/142332). Thanks @vyctorbrzezowski. -- Refresh open-chat identity after agent edits [#142581](https://github.com/openclaw/openclaw/pull/142581). Thanks @aim9sour. -- Save smaller replacement agent avatars without size-drop rejection [#143147](https://github.com/openclaw/openclaw/pull/143147). Thanks @LiuwqGit, @obviyus, @skaneta. +- Restore saved avatars in agent settings [#142015](https://github.com/openclaw/openclaw/pull/142015). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@lei-happy](https://github.com/lei-happy). +- Keep person mention suggestions available while typing [#142332](https://github.com/openclaw/openclaw/pull/142332). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Refresh open-chat identity after agent edits [#142581](https://github.com/openclaw/openclaw/pull/142581). Thanks [@aimansour](https://github.com/aimansour). +- Save smaller replacement agent avatars without size-drop rejection [#143147](https://github.com/openclaw/openclaw/pull/143147). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@skaneta](https://github.com/skaneta). @@ -644,10 +644,10 @@ If a reply has finished but the screen still shows Stop, clicking it can bring b **Bug fixes** -- Keep chat delivery recovery controls visible on mobile [#141798](https://github.com/openclaw/openclaw/pull/141798). Thanks @Takhoffman. -- Keep no-reply timeout notices in conversation history [#142135](https://github.com/openclaw/openclaw/pull/142135). Thanks @chelsealong, @obviyus, @von8794. +- Keep chat delivery recovery controls visible on mobile [#141798](https://github.com/openclaw/openclaw/pull/141798). Thanks [@Takhoffman](https://github.com/Takhoffman). +- Keep no-reply timeout notices in conversation history [#142135](https://github.com/openclaw/openclaw/pull/142135). Thanks [@chelsealong](https://github.com/chelsealong), [@obviyus](https://github.com/obviyus), [@von8794](https://github.com/von8794). - Ask for a Gateway token after remembered device credentials fail [#143156](https://github.com/openclaw/openclaw/pull/143156). -- Restore Send when Stop finds a finished run [#143437](https://github.com/openclaw/openclaw/pull/143437). Thanks @ylcn91, @obviyus, @YanHE1169. +- Restore Send when Stop finds a finished run [#143437](https://github.com/openclaw/openclaw/pull/143437). Thanks [@ylcn91](https://github.com/ylcn91), [@obviyus](https://github.com/obviyus), [@YanHE1169](https://github.com/YanHE1169). **Documentation** @@ -670,25 +670,25 @@ Opening the command palette no longer blurs the conversation behind it, so you c **Improvements** -- Use a neutral border around user avatars [#138285](https://github.com/openclaw/openclaw/pull/138285). Context [#138277](https://github.com/openclaw/openclaw/issues/138277). Thanks @vyctorbrzezowski. -- Prepare the Inbox panel before opening [#142316](https://github.com/openclaw/openclaw/pull/142316). Thanks @vyctorbrzezowski. -- Keep background text readable behind the command palette [#142944](https://github.com/openclaw/openclaw/pull/142944). Thanks @jalehman. -- Remove first-reply confetti from chat [#143167](https://github.com/openclaw/openclaw/pull/143167). Thanks @Patrick-Erichsen. +- Use a neutral border around user avatars [#138285](https://github.com/openclaw/openclaw/pull/138285). Context [#138277](https://github.com/openclaw/openclaw/issues/138277). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Prepare the Inbox panel before opening [#142316](https://github.com/openclaw/openclaw/pull/142316). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Keep background text readable behind the command palette [#142944](https://github.com/openclaw/openclaw/pull/142944). Thanks [@jalehman](https://github.com/jalehman). +- Remove first-reply confetti from chat [#143167](https://github.com/openclaw/openclaw/pull/143167). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Offer automatic host selection in the exec picker [#137565](https://github.com/openclaw/openclaw/pull/137565). Thanks @jalehman. -- Preserve Unicode when shortening Mermaid errors [#137669](https://github.com/openclaw/openclaw/pull/137669). Thanks @ly85206559, @obviyus. -- Keep unavailable GitHub previews quiet [#141896](https://github.com/openclaw/openclaw/pull/141896). Thanks @RomneyDa. +- Offer automatic host selection in the exec picker [#137565](https://github.com/openclaw/openclaw/pull/137565). Thanks [@jalehman](https://github.com/jalehman). +- Preserve Unicode when shortening Mermaid errors [#137669](https://github.com/openclaw/openclaw/pull/137669). Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). +- Keep unavailable GitHub previews quiet [#141896](https://github.com/openclaw/openclaw/pull/141896). Thanks [@RomneyDa](https://github.com/RomneyDa). - Skip rejected read updates in restricted chats [#142043](https://github.com/openclaw/openclaw/pull/142043). -- Match menu highlights to the active theme [#142243](https://github.com/openclaw/openclaw/pull/142243). Thanks @vyctorbrzezowski. +- Match menu highlights to the active theme [#142243](https://github.com/openclaw/openclaw/pull/142243). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Release temporary focus handlers after using chat pickers [#142258](https://github.com/openclaw/openclaw/pull/142258). -- Remove unintended underlines from button links [#142335](https://github.com/openclaw/openclaw/pull/142335). Thanks @vyctorbrzezowski. +- Remove unintended underlines from button links [#142335](https://github.com/openclaw/openclaw/pull/142335). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Reject invalid custom chat message widths [#142635](https://github.com/openclaw/openclaw/pull/142635). -- Remove duplicate tooltips from GitHub preview links [#142637](https://github.com/openclaw/openclaw/pull/142637). Thanks @vyctorbrzezowski. -- Preserve Mac text-editing Control shortcuts [#142674](https://github.com/openclaw/openclaw/pull/142674). Thanks @jalehman. -- Show the correct Option/Alt+Click session-selection shortcut [#143051](https://github.com/openclaw/openclaw/pull/143051). Thanks @vincentkoc. -- Align chat actions and retain green copy confirmation [#143425](https://github.com/openclaw/openclaw/pull/143425). Thanks @Patrick-Erichsen. +- Remove duplicate tooltips from GitHub preview links [#142637](https://github.com/openclaw/openclaw/pull/142637). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Preserve Mac text-editing Control shortcuts [#142674](https://github.com/openclaw/openclaw/pull/142674). Thanks [@jalehman](https://github.com/jalehman). +- Show the correct Option/Alt+Click session-selection shortcut [#143051](https://github.com/openclaw/openclaw/pull/143051). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Align chat actions and retain green copy confirmation [#143425](https://github.com/openclaw/openclaw/pull/143425). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). @@ -742,14 +742,14 @@ More labels and help text are translated in Settings, plugin browsing, Files, an **Bug fixes** -- Apply available translations to core Settings fields [#137192](https://github.com/openclaw/openclaw/pull/137192). Context [#137190](https://github.com/openclaw/openclaw/issues/137190). Thanks @husodrn46, @obviyus. +- Apply available translations to core Settings fields [#137192](https://github.com/openclaw/openclaw/pull/137192). Context [#137190](https://github.com/openclaw/openclaw/issues/137190). Thanks [@husodrn46](https://github.com/husodrn46), [@obviyus](https://github.com/obviyus). - Localize the picker's No matches message [#142255](https://github.com/openclaw/openclaw/pull/142255). - Correct parent-session and dashboard translations [#142327](https://github.com/openclaw/openclaw/pull/142327). **Documentation** - Refresh translated Gateway connection guidance [#141803](https://github.com/openclaw/openclaw/pull/141803). -- Align maturity documentation with current product names [#142065](https://github.com/openclaw/openclaw/pull/142065). Thanks @RomneyDa. +- Align maturity documentation with current product names [#142065](https://github.com/openclaw/openclaw/pull/142065). Thanks [@RomneyDa](https://github.com/RomneyDa). @@ -776,17 +776,17 @@ Updates from recent stable releases can get past failures that prevented them fr **Bug fixes** -- Let older updaters finish and restart the Gateway [#142195](https://github.com/openclaw/openclaw/pull/142195) Thanks @Newsstand. -- Check Node compatibility before dev-update installation [#142248](https://github.com/openclaw/openclaw/pull/142248) Thanks @TheAngryPit, @jialele, @obviyus. -- Correct Node compatibility advice during updates [#142322](https://github.com/openclaw/openclaw/pull/142322) Thanks @SunnyShu0925, @guarismo. -- Allow update checks while agent databases are busy [#142419](https://github.com/openclaw/openclaw/pull/142419) Thanks @jalehman. -- Restore restart launch after updates from the 2026.9.1 Git build 0229a108 [#142631](https://github.com/openclaw/openclaw/pull/142631) Thanks @jason-allen-oneal. -- Follow the activated package directory during managed pnpm updates [#143137](https://github.com/openclaw/openclaw/pull/143137) Thanks @timetrvlr. -- Preserve bundled-plugin trust during update trials [#143190](https://github.com/openclaw/openclaw/pull/143190) Thanks @DonnieFi. +- Let older updaters finish and restart the Gateway [#142195](https://github.com/openclaw/openclaw/pull/142195) Thanks [@Newsstand](https://github.com/Newsstand). +- Check Node compatibility before dev-update installation [#142248](https://github.com/openclaw/openclaw/pull/142248) Thanks [@TheAngryPit](https://github.com/TheAngryPit), [@jialele](https://github.com/jialele), [@obviyus](https://github.com/obviyus). +- Correct Node compatibility advice during updates [#142322](https://github.com/openclaw/openclaw/pull/142322) Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@guarismo](https://github.com/guarismo). +- Allow update checks while agent databases are busy [#142419](https://github.com/openclaw/openclaw/pull/142419) Thanks [@jalehman](https://github.com/jalehman). +- Restore restart launch after updates from the 2026.9.1 Git build 0229a108 [#142631](https://github.com/openclaw/openclaw/pull/142631) Thanks [@jason-allen-oneal](https://github.com/jason-allen-oneal). +- Follow the activated package directory during managed pnpm updates [#143137](https://github.com/openclaw/openclaw/pull/143137) Thanks [@timetrvlr](https://github.com/timetrvlr). +- Preserve bundled-plugin trust during update trials [#143190](https://github.com/openclaw/openclaw/pull/143190) Thanks [@DonnieFi](https://github.com/DonnieFi). - Restore upgrades from older stable releases [#143859](https://github.com/openclaw/openclaw/pull/143859) -- Verify the same Gateway through update checks [#143863](https://github.com/openclaw/openclaw/pull/143863) Thanks @fuller-stack-dev. -- Fix managed-update helper startup [#144031](https://github.com/openclaw/openclaw/pull/144031) Thanks @IWhatsskill, @fuller-stack-dev. -- Allow confirmed service-less Linux updates, keep transcript stdout clean, preserve custom root/account schema types, and reuse warm Claude CLI processes when prepared skills are unchanged [#144402](https://github.com/openclaw/openclaw/pull/144402) Thanks @vincentkoc. +- Verify the same Gateway through update checks [#143863](https://github.com/openclaw/openclaw/pull/143863) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Fix managed-update helper startup [#144031](https://github.com/openclaw/openclaw/pull/144031) Thanks [@IWhatsskill](https://github.com/IWhatsskill), [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Allow confirmed service-less Linux updates, keep transcript stdout clean, preserve custom root/account schema types, and reuse warm Claude CLI processes when prepared skills are unchanged [#144402](https://github.com/openclaw/openclaw/pull/144402) Thanks [@vincentkoc](https://github.com/vincentkoc). **Limits and compatibility** @@ -809,10 +809,10 @@ If you run OpenClaw from a Git checkout, updates can recover when an upstream re **Bug fixes** -- Recover Git updates when upstream release tags move [#126816](https://github.com/openclaw/openclaw/pull/126816) Thanks @ruel225, @zhangguiping-xydt, @ToneLoke. Context [#123318](https://github.com/openclaw/openclaw/issues/123318). +- Recover Git updates when upstream release tags move [#126816](https://github.com/openclaw/openclaw/pull/126816) Thanks [@ruel225](https://github.com/ruel225), [@zhangguiping-xydt](https://github.com/zhangguiping-xydt), [@ToneLoke](https://github.com/ToneLoke). Context [#123318](https://github.com/openclaw/openclaw/issues/123318). - Sync source assets with unusual filenames [#142024](https://github.com/openclaw/openclaw/pull/142024) -- Warn when failed update fetches leave status information stale [#142199](https://github.com/openclaw/openclaw/pull/142199) Thanks @ToneLoke. -- Fix Windows Git configuration paths for updates and cloning [#142749](https://github.com/openclaw/openclaw/pull/142749) Thanks @pengzh1, @aevgeniou, @jalehman. +- Warn when failed update fetches leave status information stale [#142199](https://github.com/openclaw/openclaw/pull/142199) Thanks [@ToneLoke](https://github.com/ToneLoke). +- Fix Windows Git configuration paths for updates and cloning [#142749](https://github.com/openclaw/openclaw/pull/142749) Thanks [@pengzh1](https://github.com/pengzh1), [@aevgeniou](https://github.com/aevgeniou), [@jalehman](https://github.com/jalehman). @@ -831,15 +831,15 @@ When an update fails, OpenClaw can put the previous app version back if it still **Bug fixes** -- Preserve existing state when Gateway startup needs repair [#141451](https://github.com/openclaw/openclaw/pull/141451) Thanks @Lendersmark, @jerabinovich. -- Correct version checks after failed-update recovery [#142817](https://github.com/openclaw/openclaw/pull/142817) Thanks @wangmiao0668000666. -- Stop rollback after updater ownership is lost [#143791](https://github.com/openclaw/openclaw/pull/143791) Thanks @vincentkoc, @fuller-stack-dev. -- Report failed temporary-copy cleanup [#143844](https://github.com/openclaw/openclaw/pull/143844) Thanks @fuller-stack-dev. -- Stop plugin writes after update ownership loss [#144130](https://github.com/openclaw/openclaw/pull/144130) Thanks @fuller-stack-dev. +- Preserve existing state when Gateway startup needs repair [#141451](https://github.com/openclaw/openclaw/pull/141451) Thanks [@Lendersmark](https://github.com/Lendersmark), [@jerabinovich](https://github.com/jerabinovich). +- Correct version checks after failed-update recovery [#142817](https://github.com/openclaw/openclaw/pull/142817) Thanks [@wangmiao0668000666](https://github.com/wangmiao0668000666). +- Stop rollback after updater ownership is lost [#143791](https://github.com/openclaw/openclaw/pull/143791) Thanks [@vincentkoc](https://github.com/vincentkoc), [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Report failed temporary-copy cleanup [#143844](https://github.com/openclaw/openclaw/pull/143844) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Stop plugin writes after update ownership loss [#144130](https://github.com/openclaw/openclaw/pull/144130) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). **Limits and compatibility** -- Guard compatible package rollback and interrupted updates, finish plugin work before restart, add copied-agent preflight, honor same-version package artifacts, and suppress unsolicited standalone restart notices [000af986](https://github.com/openclaw/openclaw/commit/000af986dc991e9cef3d10663c121503606f25cc) Thanks @fuller-stack-dev. Context [#140339](https://github.com/openclaw/openclaw/pull/140339). +- Guard compatible package rollback and interrupted updates, finish plugin work before restart, add copied-agent preflight, honor same-version package artifacts, and suppress unsolicited standalone restart notices [000af986](https://github.com/openclaw/openclaw/commit/000af986dc991e9cef3d10663c121503606f25cc) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). Context [#140339](https://github.com/openclaw/openclaw/pull/140339). @@ -858,8 +858,8 @@ An old “update in progress” message can stop blocking settings changes and a **Bug fixes** -- Repair abandoned update runs without an unnecessary 30-minute wait [#143136](https://github.com/openclaw/openclaw/pull/143136) Thanks @yncubys, @guarismo, @SunnyShu0925. -- Clear abandoned legacy updates that block settings writes [#143774](https://github.com/openclaw/openclaw/pull/143774) Thanks @Colton-Harris, @syfvb, @ElvisIO7, @rlosito, @alexph-dev, @aaajiao, @c0ncatenate, @unknowbug, @KingAkrej, @DasX, @jlacroix82, @mikronn2, @najef1979-code. +- Repair abandoned update runs without an unnecessary 30-minute wait [#143136](https://github.com/openclaw/openclaw/pull/143136) Thanks [@yncubys](https://github.com/yncubys), [@guarismo](https://github.com/guarismo), [@SunnyShu0925](https://github.com/SunnyShu0925). +- Clear abandoned legacy updates that block settings writes [#143774](https://github.com/openclaw/openclaw/pull/143774) Thanks [@Colton-Harris](https://github.com/Colton-Harris), [@syfvb](https://github.com/syfvb), [@ElvisIO7](https://github.com/ElvisIO7), [@rlosito](https://github.com/rlosito), [@alexph-dev](https://github.com/alexph-dev), [@aaajiao](https://github.com/aaajiao), [@c0ncatenate](https://github.com/c0ncatenate), [@unknowbug](https://github.com/unknowbug), [@KingAkrej](https://github.com/KingAkrej), [@DasX](https://github.com/DasX), [@jlacroix82](https://github.com/jlacroix82), [@mikronn2](https://github.com/mikronn2), [@najef1979-code](https://github.com/najef1979-code). **Documentation** @@ -882,7 +882,7 @@ Updates on larger installations now give Doctor, OpenClaw's repair tool, time to **Bug fixes** -- Allow long update Doctor repairs to finish [#143321](https://github.com/openclaw/openclaw/pull/143321) Thanks @fuller-stack-dev. +- Allow long update Doctor repairs to finish [#143321](https://github.com/openclaw/openclaw/pull/143321) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). - Continue updates after recoverable cleanup failures [#143767](https://github.com/openclaw/openclaw/pull/143767) @@ -908,7 +908,7 @@ Claude-assisted repairs start without project customizations that could delay th **Bug fixes** -- Make diagnosis optional after verified update rollback [#143657](https://github.com/openclaw/openclaw/pull/143657) Thanks @fuller-stack-dev. +- Make diagnosis optional after verified update rollback [#143657](https://github.com/openclaw/openclaw/pull/143657) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). **Documentation** @@ -916,7 +916,7 @@ Claude-assisted repairs start without project customizations that could delay th **Limits and compatibility** -- Start direct Claude triage in safe mode with advertised support, documented for Claude Code 2.1.169 or newer [#143474](https://github.com/openclaw/openclaw/pull/143474) Thanks @RomneyDa. +- Start direct Claude triage in safe mode with advertised support, documented for Claude Code 2.1.169 or newer [#143474](https://github.com/openclaw/openclaw/pull/143474) Thanks [@RomneyDa](https://github.com/RomneyDa). @@ -935,26 +935,26 @@ Update progress and the final report now agree about what happened, including wh **Improvements** -- Identify child processes in stalled update diagnostics [#141740](https://github.com/openclaw/openclaw/pull/141740) Thanks @hannesrudolph. -- Skip unrelated Doctor diagnostics during updates [#142675](https://github.com/openclaw/openclaw/pull/142675) Thanks @fuller-stack-dev. +- Identify child processes in stalled update diagnostics [#141740](https://github.com/openclaw/openclaw/pull/141740) Thanks [@hannesrudolph](https://github.com/hannesrudolph). +- Skip unrelated Doctor diagnostics during updates [#142675](https://github.com/openclaw/openclaw/pull/142675) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). **Bug fixes** -- Skip optional update probes and retain Doctor warnings [#141995](https://github.com/openclaw/openclaw/pull/141995) Thanks @hannesrudolph. +- Skip optional update probes and retain Doctor warnings [#141995](https://github.com/openclaw/openclaw/pull/141995) Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Preserve core Doctor warnings during updates [#142091](https://github.com/openclaw/openclaw/pull/142091) -- Retain Doctor diagnostics when update finalization times out [#142672](https://github.com/openclaw/openclaw/pull/142672) Thanks @fuller-stack-dev. -- Show refreshed commit counts before updating [#142837](https://github.com/openclaw/openclaw/pull/142837) Thanks @jalehman. +- Retain Doctor diagnostics when update finalization times out [#142672](https://github.com/openclaw/openclaw/pull/142672) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Show refreshed commit counts before updating [#142837](https://github.com/openclaw/openclaw/pull/142837) Thanks [@jalehman](https://github.com/jalehman). - Keep update guidance available when history fails [#143557](https://github.com/openclaw/openclaw/pull/143557) - Load update history without pausing other Gateway work [#143605](https://github.com/openclaw/openclaw/pull/143605) - Stop advertising unavailable update-report files [#143748](https://github.com/openclaw/openclaw/pull/143748) - Correct agent guidance for authorized SSH updates to a different host while retaining normal approvals [#143754](https://github.com/openclaw/openclaw/pull/143754) -- Report final update results and retained backups [#143921](https://github.com/openclaw/openclaw/pull/143921) Thanks @fuller-stack-dev. +- Report final update results and retained backups [#143921](https://github.com/openclaw/openclaw/pull/143921) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). - Keep update progress consistent with final reports [#143965](https://github.com/openclaw/openclaw/pull/143965) **Documentation** -- Split update documentation into focused guides [#142858](https://github.com/openclaw/openclaw/pull/142858) Thanks @vincentkoc. -- Split updating guidance into focused pages [#142993](https://github.com/openclaw/openclaw/pull/142993) Thanks @vincentkoc. +- Split update documentation into focused guides [#142858](https://github.com/openclaw/openclaw/pull/142858) Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split updating guidance into focused pages [#142993](https://github.com/openclaw/openclaw/pull/142993) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -977,10 +977,10 @@ Running `openclaw update` now checks eligible plugins even if the main app is al **Bug fixes** -- Report newer releases without replacing official plugin pins [#137892](https://github.com/openclaw/openclaw/pull/137892) Thanks @pfrederiksen, @vincentkoc. Context [#137624](https://github.com/openclaw/openclaw/issues/137624). -- Show warnings for retained official plugin pins [#142457](https://github.com/openclaw/openclaw/pull/142457) Thanks @PollyBot13, @obviyus, @martins-oss. -- Run plugin maintenance when core is already current [#143174](https://github.com/openclaw/openclaw/pull/143174) Thanks @martins-oss, @fulgerulnegru, @kesslerio, @guojiongming, @soroyue, @Sedrak-Hovhannisyan. -- Skip redundant completion when updates change nothing [#143462](https://github.com/openclaw/openclaw/pull/143462) Thanks @RomneyDa. +- Report newer releases without replacing official plugin pins [#137892](https://github.com/openclaw/openclaw/pull/137892) Thanks [@pfrederiksen](https://github.com/pfrederiksen), [@vincentkoc](https://github.com/vincentkoc). Context [#137624](https://github.com/openclaw/openclaw/issues/137624). +- Show warnings for retained official plugin pins [#142457](https://github.com/openclaw/openclaw/pull/142457) Thanks [@PollyBot13](https://github.com/PollyBot13), [@obviyus](https://github.com/obviyus), [@martins-oss](https://github.com/martins-oss). +- Run plugin maintenance when core is already current [#143174](https://github.com/openclaw/openclaw/pull/143174) Thanks [@martins-oss](https://github.com/martins-oss), [@fulgerulnegru](https://github.com/fulgerulnegru), [@kesslerio](https://github.com/kesslerio), [@guojiongming](https://github.com/guojiongming), [@soroyue](https://github.com/soroyue), [@Sedrak-Hovhannisyan](https://github.com/Sedrak-Hovhannisyan). +- Skip redundant completion when updates change nothing [#143462](https://github.com/openclaw/openclaw/pull/143462) Thanks [@RomneyDa](https://github.com/RomneyDa). - Skip plugins already repaired under new IDs [#143861](https://github.com/openclaw/openclaw/pull/143861) @@ -1003,27 +1003,27 @@ If an older Claude conversation has not been converted to the current format, ru **Bug fixes** - Fix optional Codex checks, configuration-less update finalization, and private Doctor snapshot cleanup [f212072e](https://github.com/openclaw/openclaw/commit/f212072e4c6e5f67f356b4b213a0059bbdb07db2) -- Repair moved workspaces without blocking queued messages [#133198](https://github.com/openclaw/openclaw/pull/133198) Thanks @safzanpirani, @obviyus. Context [#133172](https://github.com/openclaw/openclaw/issues/133172). -- Preserve Unicode in shortened SQLite worker errors [#137675](https://github.com/openclaw/openclaw/pull/137675) Thanks @ly85206559, @obviyus. +- Repair moved workspaces without blocking queued messages [#133198](https://github.com/openclaw/openclaw/pull/133198) Thanks [@safzanpirani](https://github.com/safzanpirani), [@obviyus](https://github.com/obviyus). Context [#133172](https://github.com/openclaw/openclaw/issues/133172). +- Preserve Unicode in shortened SQLite worker errors [#137675](https://github.com/openclaw/openclaw/pull/137675) Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). - Wait for cooperating plugins to release Doctor inspection resources through their registration-local disposal callback [#141692](https://github.com/openclaw/openclaw/pull/141692) - Show backup recovery guidance for unreadable Doctor state [#141776](https://github.com/openclaw/openclaw/pull/141776) - Stop Doctor suggesting the skill repair already underway [#141866](https://github.com/openclaw/openclaw/pull/141866) - Explain shallow snapshot failures and incomplete clones [#141936](https://github.com/openclaw/openclaw/pull/141936) -- Preserve model choices and backends during Doctor migration [#142284](https://github.com/openclaw/openclaw/pull/142284) Thanks @obviyus. -- Respect search-provider choice in missing-plugin repair; the separate release-repair path can still select Brave from environment credentials [#142640](https://github.com/openclaw/openclaw/pull/142640) Thanks @vincentkoc. -- Correct full Doctor lint paths and preserve inspected sidecars and skill links; ordinary lint retains its separate shared-memory limitation [#142839](https://github.com/openclaw/openclaw/pull/142839) Thanks @thien-ngn, @obviyus. -- Restore legacy multi-agent backups without manual ownership edits [#143202](https://github.com/openclaw/openclaw/pull/143202) Thanks @GitHoubi. -- Repair legacy music-model references with Doctor [#143235](https://github.com/openclaw/openclaw/pull/143235) Thanks @obviyus. -- Preserve saved accounts through Doctor migration [#143429](https://github.com/openclaw/openclaw/pull/143429) Thanks @obviyus. +- Preserve model choices and backends during Doctor migration [#142284](https://github.com/openclaw/openclaw/pull/142284) Thanks [@obviyus](https://github.com/obviyus). +- Respect search-provider choice in missing-plugin repair; the separate release-repair path can still select Brave from environment credentials [#142640](https://github.com/openclaw/openclaw/pull/142640) Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct full Doctor lint paths and preserve inspected sidecars and skill links; ordinary lint retains its separate shared-memory limitation [#142839](https://github.com/openclaw/openclaw/pull/142839) Thanks [@thien-ngn](https://github.com/thien-ngn), [@obviyus](https://github.com/obviyus). +- Restore legacy multi-agent backups without manual ownership edits [#143202](https://github.com/openclaw/openclaw/pull/143202) Thanks [@GitHoubi](https://github.com/GitHoubi). +- Repair legacy music-model references with Doctor [#143235](https://github.com/openclaw/openclaw/pull/143235) Thanks [@obviyus](https://github.com/obviyus). +- Preserve saved accounts through Doctor migration [#143429](https://github.com/openclaw/openclaw/pull/143429) Thanks [@obviyus](https://github.com/obviyus). **Documentation** -- Organize Doctor guidance by repair task [#141961](https://github.com/openclaw/openclaw/pull/141961) Thanks @vincentkoc. -- Organize Doctor CLI documentation by task [#142855](https://github.com/openclaw/openclaw/pull/142855) Thanks @vincentkoc. +- Organize Doctor guidance by repair task [#141961](https://github.com/openclaw/openclaw/pull/141961) Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize Doctor CLI documentation by task [#142855](https://github.com/openclaw/openclaw/pull/142855) Thanks [@vincentkoc](https://github.com/vincentkoc). **Limits and compatibility** -- Migrate legacy Claude conversation bindings with Doctor [#143347](https://github.com/openclaw/openclaw/pull/143347) Thanks @obviyus. +- Migrate legacy Claude conversation bindings with Doctor [#143347](https://github.com/openclaw/openclaw/pull/143347) Thanks [@obviyus](https://github.com/obviyus). @@ -1042,9 +1042,9 @@ Importing older Codex conversations now keeps assistant replies that could previ **Bug fixes** -- Preserve Codex replies during legacy session import [#140296](https://github.com/openclaw/openclaw/pull/140296) Thanks @ylcn91, @ikenraf. Context [#140100](https://github.com/openclaw/openclaw/issues/140100). -- Explain hard-linked session migration refusals with recovery guidance [#143195](https://github.com/openclaw/openclaw/pull/143195) Thanks @GitHoubi. -- Preserve repaired media metadata in session archives [#143595](https://github.com/openclaw/openclaw/pull/143595) Thanks @fuller-stack-dev. +- Preserve Codex replies during legacy session import [#140296](https://github.com/openclaw/openclaw/pull/140296) Thanks [@ylcn91](https://github.com/ylcn91), [@ikenraf](https://github.com/ikenraf). Context [#140100](https://github.com/openclaw/openclaw/issues/140100). +- Explain hard-linked session migration refusals with recovery guidance [#143195](https://github.com/openclaw/openclaw/pull/143195) Thanks [@GitHoubi](https://github.com/GitHoubi). +- Preserve repaired media metadata in session archives [#143595](https://github.com/openclaw/openclaw/pull/143595) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). @@ -1065,8 +1065,8 @@ Backups also handle a disappearing temporary database file when its contents are **Bug fixes** -- Keep backups running when snapshotted SQLite sidecars disappear [#141161](https://github.com/openclaw/openclaw/pull/141161) Thanks @LiuwqGit, @vincentkoc, @Cobblestone-Digital1, @legupsystems. Context [#141042](https://github.com/openclaw/openclaw/issues/141042). Context [#67417](https://github.com/openclaw/openclaw/issues/67417). -- Preserve required configuration includes in full backups [#143693](https://github.com/openclaw/openclaw/pull/143693) Thanks @fuller-stack-dev. +- Keep backups running when snapshotted SQLite sidecars disappear [#141161](https://github.com/openclaw/openclaw/pull/141161) Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@vincentkoc](https://github.com/vincentkoc), [@Cobblestone-Digital1](https://github.com/Cobblestone-Digital1), [@legupsystems](https://github.com/legupsystems). Context [#141042](https://github.com/openclaw/openclaw/issues/141042). Context [#67417](https://github.com/openclaw/openclaw/issues/67417). +- Preserve required configuration includes in full backups [#143693](https://github.com/openclaw/openclaw/pull/143693) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). @@ -1094,13 +1094,13 @@ Installations with a lot of saved data get more time to finish database checks, - Allow large databases more startup-check time [#141918](https://github.com/openclaw/openclaw/pull/141918) - Give large database inspections a size-based timeout [#142179](https://github.com/openclaw/openclaw/pull/142179) -- Avoid redundant database scans during Doctor repair [#142669](https://github.com/openclaw/openclaw/pull/142669) Thanks @fuller-stack-dev. -- Keep healthy memory database handles open when no repair is needed and skip GitHub credential and bootstrap-size advisories during updates [#143361](https://github.com/openclaw/openclaw/pull/143361) Thanks @fuller-stack-dev. -- Name the Doctor repair command in SQLite startup errors [#143531](https://github.com/openclaw/openclaw/pull/143531) Thanks @RomneyDa. +- Avoid redundant database scans during Doctor repair [#142669](https://github.com/openclaw/openclaw/pull/142669) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Keep healthy memory database handles open when no repair is needed and skip GitHub credential and bootstrap-size advisories during updates [#143361](https://github.com/openclaw/openclaw/pull/143361) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Name the Doctor repair command in SQLite startup errors [#143531](https://github.com/openclaw/openclaw/pull/143531) Thanks [@RomneyDa](https://github.com/RomneyDa). **Documentation** -- Organize database reference and recovery guidance [#143152](https://github.com/openclaw/openclaw/pull/143152) Thanks @vincentkoc. +- Organize database reference and recovery guidance [#143152](https://github.com/openclaw/openclaw/pull/143152) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1119,7 +1119,7 @@ Deleting sessions and cleaning up old conversations are less likely to pause oth **Bug fixes** -- Recheck protected history and disk pressure during cleanup [#142505](https://github.com/openclaw/openclaw/pull/142505) Thanks @HermanZeng. +- Recheck protected history and disk pressure during cleanup [#142505](https://github.com/openclaw/openclaw/pull/142505) Thanks [@HermanZeng](https://github.com/HermanZeng). - Move cold session-cleanup checks off the Gateway main thread [#143226](https://github.com/openclaw/openclaw/pull/143226) - Stop excess session cleanup after disk pressure clears [#143285](https://github.com/openclaw/openclaw/pull/143285) - Move cold database checks out of history cleanup planning [#143332](https://github.com/openclaw/openclaw/pull/143332) @@ -1146,22 +1146,22 @@ Reconnecting avoids repeating unnecessary [health checks](https://docs.openclaw. **Bug fixes** -- Avoid false repair advice for masked systemd services [#137869](https://github.com/openclaw/openclaw/pull/137869) Thanks @teddytennant, @obviyus, @aniruddhaadak80. Context [#128928](https://github.com/openclaw/openclaw/issues/128928). -- Prevent managed systemd restarts from hanging [#140914](https://github.com/openclaw/openclaw/pull/140914) Thanks @NianJiuZst, @rboy1, @obviyus. Context [#140821](https://github.com/openclaw/openclaw/issues/140821). -- Keep affected CLI-started Gateways running after transient DNS rejections without retrying the failed operation [#141163](https://github.com/openclaw/openclaw/pull/141163) Thanks @ly85206559, @orangejon. Context [#141123](https://github.com/openclaw/openclaw/issues/141123). -- Return service-unavailable responses when a Gateway handshake fails before WebSocket transfer [#141303](https://github.com/openclaw/openclaw/pull/141303) Thanks @hugenshen, @obviyus. +- Avoid false repair advice for masked systemd services [#137869](https://github.com/openclaw/openclaw/pull/137869) Thanks [@teddytennant](https://github.com/teddytennant), [@obviyus](https://github.com/obviyus), [@aniruddhaadak80](https://github.com/aniruddhaadak80). Context [#128928](https://github.com/openclaw/openclaw/issues/128928). +- Prevent managed systemd restarts from hanging [#140914](https://github.com/openclaw/openclaw/pull/140914) Thanks [@NianJiuZst](https://github.com/NianJiuZst), [@rboy1](https://github.com/rboy1), [@obviyus](https://github.com/obviyus). Context [#140821](https://github.com/openclaw/openclaw/issues/140821). +- Keep affected CLI-started Gateways running after transient DNS rejections without retrying the failed operation [#141163](https://github.com/openclaw/openclaw/pull/141163) Thanks [@ly85206559](https://github.com/ly85206559), [@orangejon](https://github.com/orangejon). Context [#141123](https://github.com/openclaw/openclaw/issues/141123). +- Return service-unavailable responses when a Gateway handshake fails before WebSocket transfer [#141303](https://github.com/openclaw/openclaw/pull/141303) Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). - Wait for Talk connection cleanup during shutdown [#141706](https://github.com/openclaw/openclaw/pull/141706) - Keep startup logs current after plugin reloads [#141736](https://github.com/openclaw/openclaw/pull/141736) -- Stop restart loops caused by conflicting Gateway settings [#141771](https://github.com/openclaw/openclaw/pull/141771) Thanks @chelsealong, @tomdailey55, @jalehman. +- Stop restart loops caused by conflicting Gateway settings [#141771](https://github.com/openclaw/openclaw/pull/141771) Thanks [@chelsealong](https://github.com/chelsealong), [@tomdailey55](https://github.com/tomdailey55), [@jalehman](https://github.com/jalehman). - Keep shared Gateway state available through cleanup [#142286](https://github.com/openclaw/openclaw/pull/142286) - Finish pending cleanup before automatic macOS CLI exit [#142814](https://github.com/openclaw/openclaw/pull/142814) - Avoid repeated health collection on reconnects [#143384](https://github.com/openclaw/openclaw/pull/143384) -- Preserve restart options during schema upgrades [#143738](https://github.com/openclaw/openclaw/pull/143738) Thanks @RomneyDa. +- Preserve restart options during schema upgrades [#143738](https://github.com/openclaw/openclaw/pull/143738) Thanks [@RomneyDa](https://github.com/RomneyDa). **Documentation** -- Split Gateway CLI reference by operator task [#143005](https://github.com/openclaw/openclaw/pull/143005) Thanks @vincentkoc. -- Organize Gateway troubleshooting by symptom [#143160](https://github.com/openclaw/openclaw/pull/143160) Thanks @vincentkoc. +- Split Gateway CLI reference by operator task [#143005](https://github.com/openclaw/openclaw/pull/143005) Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize Gateway troubleshooting by symptom [#143160](https://github.com/openclaw/openclaw/pull/143160) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1182,17 +1182,17 @@ Settings edits after creating or changing an agent also avoid false “changed s **Improvements** -- Add a read-only mode for externally managed configuration [#140719](https://github.com/openclaw/openclaw/pull/140719) Thanks @sallyom. Context [#140706](https://github.com/openclaw/openclaw/issues/140706). Context [#103606](https://github.com/openclaw/openclaw/issues/103606). +- Add a read-only mode for externally managed configuration [#140719](https://github.com/openclaw/openclaw/pull/140719) Thanks [@sallyom](https://github.com/sallyom). Context [#140706](https://github.com/openclaw/openclaw/issues/140706). Context [#103606](https://github.com/openclaw/openclaw/issues/103606). **Bug fixes** -- Refresh configuration revisions after agent changes [#142169](https://github.com/openclaw/openclaw/pull/142169) Thanks @ceckert, @obviyus. +- Refresh configuration revisions after agent changes [#142169](https://github.com/openclaw/openclaw/pull/142169) Thanks [@ceckert](https://github.com/ceckert), [@obviyus](https://github.com/obviyus). - Explain managed-configuration refusals without crash diagnostics [#143140](https://github.com/openclaw/openclaw/pull/143140) **Documentation** - Clarify manual restart requirements in reload-off mode [#127205](https://github.com/openclaw/openclaw/pull/127205) Context [#127203](https://github.com/openclaw/openclaw/issues/127203). -- Split Gateway configuration guidance into topic pages [#143456](https://github.com/openclaw/openclaw/pull/143456) Thanks @vincentkoc. +- Split Gateway configuration guidance into topic pages [#143456](https://github.com/openclaw/openclaw/pull/143456) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1211,8 +1211,8 @@ For Windows installations using OpenClaw’s standard launcher, stopping the sch **Bug fixes** -- Stop Windows Gateway task descendants and log child failures [#141744](https://github.com/openclaw/openclaw/pull/141744) Thanks @akagifreeez, @Devin-Linux, @unknowbug. -- Honor update timeouts for Windows service checks [#143292](https://github.com/openclaw/openclaw/pull/143292) Thanks @fanyuantaier. +- Stop Windows Gateway task descendants and log child failures [#141744](https://github.com/openclaw/openclaw/pull/141744) Thanks [@akagifreeez](https://github.com/akagifreeez), [@Devin-Linux](https://github.com/Devin-Linux), [@unknowbug](https://github.com/unknowbug). +- Honor update timeouts for Windows service checks [#143292](https://github.com/openclaw/openclaw/pull/143292) Thanks [@fanyuantaier](https://github.com/fanyuantaier). @@ -1231,7 +1231,7 @@ The [monitoring guide](https://docs.openclaw.ai/gateway/opentelemetry) makes it **Documentation** -- Split OpenTelemetry guidance into focused pages [#142951](https://github.com/openclaw/openclaw/pull/142951) Thanks @vincentkoc. +- Split OpenTelemetry guidance into focused pages [#142951](https://github.com/openclaw/openclaw/pull/142951) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1258,14 +1258,14 @@ Messages arriving while OpenClaw is paused now wait until it is ready again, and **Bug fixes** -- Hide internal finalizer placeholders in message-only groups [73ca607b1d99](https://github.com/openclaw/openclaw/commit/73ca607b1d9940ecb040527da0a3c610d15bc64a). Thanks @razvangirgiz, @obviyus, @omarshahine. Contextual provenance [#138645](https://github.com/openclaw/openclaw/pull/138645). -- Keep unfinished replies pending during forced cleanup [#141900](https://github.com/openclaw/openclaw/pull/141900). Thanks @Takhoffman. -- Pause message retries during Gateway suspension [#142064](https://github.com/openclaw/openclaw/pull/142064). Thanks @goutamadwant, @obviyus, @Stephane-fci. -- Keep plans and newer activity visible after repeated command exits [#142802](https://github.com/openclaw/openclaw/pull/142802). Thanks @obviyus. +- Hide internal finalizer placeholders in message-only groups [73ca607b1d99](https://github.com/openclaw/openclaw/commit/73ca607b1d9940ecb040527da0a3c610d15bc64a). Thanks [@razvangirgiz](https://github.com/razvangirgiz), [@obviyus](https://github.com/obviyus), [@omarshahine](https://github.com/omarshahine). Contextual provenance [#138645](https://github.com/openclaw/openclaw/pull/138645). +- Keep unfinished replies pending during forced cleanup [#141900](https://github.com/openclaw/openclaw/pull/141900). Thanks [@Takhoffman](https://github.com/Takhoffman). +- Pause message retries during Gateway suspension [#142064](https://github.com/openclaw/openclaw/pull/142064). Thanks [@goutamadwant](https://github.com/goutamadwant), [@obviyus](https://github.com/obviyus), [@Stephane-fci](https://github.com/Stephane-fci). +- Keep plans and newer activity visible after repeated command exits [#142802](https://github.com/openclaw/openclaw/pull/142802). Thanks [@obviyus](https://github.com/obviyus). **Improvements** -- Add clearer missing-reply notices and run references [#136462](https://github.com/openclaw/openclaw/pull/136462). Thanks @RomneyDa, @sloptop-the-terrible. +- Add clearer missing-reply notices and run references [#136462](https://github.com/openclaw/openclaw/pull/136462). Thanks [@RomneyDa](https://github.com/RomneyDa), [@sloptop-the-terrible](https://github.com/sloptop-the-terrible). @@ -1284,12 +1284,12 @@ Messages arriving while OpenClaw is paused now wait until it is ready again, and **Bug fixes** -- Preserve paragraph boundaries between streamed assistant messages [#140833](https://github.com/openclaw/openclaw/pull/140833). Thanks @leapdragon, @obviyus. -- Preserve quoted code spacing when removing delivery directives [#141767](https://github.com/openclaw/openclaw/pull/141767). Thanks @Alix-007, @obviyus. -- Preserve message-ID code examples in conversation displays [#141769](https://github.com/openclaw/openclaw/pull/141769). Thanks @Alix-007, @obviyus. +- Preserve paragraph boundaries between streamed assistant messages [#140833](https://github.com/openclaw/openclaw/pull/140833). Thanks [@leapdragon](https://github.com/leapdragon), [@obviyus](https://github.com/obviyus). +- Preserve quoted code spacing when removing delivery directives [#141767](https://github.com/openclaw/openclaw/pull/141767). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). +- Preserve message-ID code examples in conversation displays [#141769](https://github.com/openclaw/openclaw/pull/141769). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). - Preserve converted images that retain HEIC filenames [#142263](https://github.com/openclaw/openclaw/pull/142263). - Align short and empty code-table columns [#142406](https://github.com/openclaw/openclaw/pull/142406). -- Keep streamed prose and code formatted without duplicate finals [#143722](https://github.com/openclaw/openclaw/pull/143722). Thanks @obviyus, @rgregg. +- Keep streamed prose and code formatted without duplicate finals [#143722](https://github.com/openclaw/openclaw/pull/143722). Thanks [@obviyus](https://github.com/obviyus), [@rgregg](https://github.com/rgregg). @@ -1309,7 +1309,7 @@ If you enable [Telegram rich messages](https://docs.openclaw.ai/channels/telegra **Bug fixes** - Preserve styled links and formatting in rich messages [#139976](https://github.com/openclaw/openclaw/pull/139976). -- Honor image defaults and retain sticker descriptions [#142023](https://github.com/openclaw/openclaw/pull/142023). Thanks @obviyus. +- Honor image defaults and retain sticker descriptions [#142023](https://github.com/openclaw/openclaw/pull/142023). Thanks [@obviyus](https://github.com/obviyus). - Preserve code-example spacing in Telegram text and captions [#142504](https://github.com/openclaw/openclaw/pull/142504). @@ -1329,14 +1329,14 @@ If you enable [Telegram rich messages](https://docs.openclaw.ai/channels/telegra **Bug fixes** -- Recognize bot identity mentions in text and captions [#140266](https://github.com/openclaw/openclaw/pull/140266). Thanks @cai-ops, @obviyus. -- Stop stale stall reactions after cancelled preparation [#141079](https://github.com/openclaw/openclaw/pull/141079). Thanks @ooiuuii, @obviyus. -- Preserve tasks after multiline Telegram directives [#142008](https://github.com/openclaw/openclaw/pull/142008). Thanks @wangmiao0668000666, @obviyus. +- Recognize bot identity mentions in text and captions [#140266](https://github.com/openclaw/openclaw/pull/140266). Thanks [@cai-ops](https://github.com/cai-ops), [@obviyus](https://github.com/obviyus). +- Stop stale stall reactions after cancelled preparation [#141079](https://github.com/openclaw/openclaw/pull/141079). Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Preserve tasks after multiline Telegram directives [#142008](https://github.com/openclaw/openclaw/pull/142008). Thanks [@wangmiao0668000666](https://github.com/wangmiao0668000666), [@obviyus](https://github.com/obviyus). - Show the routed agent's thinking default in Telegram [#143789](https://github.com/openclaw/openclaw/pull/143789). **Documentation** -- Organize Telegram documentation by task [#142963](https://github.com/openclaw/openclaw/pull/142963). Thanks @vincentkoc. +- Organize Telegram documentation by task [#142963](https://github.com/openclaw/openclaw/pull/142963). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1355,7 +1355,7 @@ If you connect Telegram through a proxy and it refuses the connection before a r **Bug fixes** -- Recover queued replies after proxy tunnel refusals [#140388](https://github.com/openclaw/openclaw/pull/140388). Thanks @Hekzory, @MAG-Linares-Andalucia. +- Recover queued replies after proxy tunnel refusals [#140388](https://github.com/openclaw/openclaw/pull/140388). Thanks [@Hekzory](https://github.com/Hekzory), [@MAG-Linares-Andalucia](https://github.com/MAG-Linares-Andalucia). @@ -1376,15 +1376,15 @@ Requests such as checking OpenClaw’s system status can work again from server **Bug fixes** -- Populate member presence from startup and reconnect snapshots [#141218](https://github.com/openclaw/openclaw/pull/141218). Thanks @harshitgupta31415, @vincentkoc, @nissl24. -- Preserve Discord commentary and progress after send failures [#141621](https://github.com/openclaw/openclaw/pull/141621). Thanks @anyech, @obviyus, @dw1161. +- Populate member presence from startup and reconnect snapshots [#141218](https://github.com/openclaw/openclaw/pull/141218). Thanks [@harshitgupta31415](https://github.com/harshitgupta31415), [@vincentkoc](https://github.com/vincentkoc), [@nissl24](https://github.com/nissl24). +- Preserve Discord commentary and progress after send failures [#141621](https://github.com/openclaw/openclaw/pull/141621). Thanks [@anyech](https://github.com/anyech), [@obviyus](https://github.com/obviyus), [@dw1161](https://github.com/dw1161). - Preserve repeated Discord captions and link-button emoji [#142342](https://github.com/openclaw/openclaw/pull/142342). -- Preserve voice-note words in Discord ambient conversations [#142860](https://github.com/openclaw/openclaw/pull/142860). Thanks @ericcaiwx-star, @aatreya, @jalehman. -- Restore permitted system-agent delegation in Discord guild messages [#143006](https://github.com/openclaw/openclaw/pull/143006). Thanks @Marvinthebored, @Peetiegonzalez, @obviyus, @0xCyda, @lisheguo. +- Preserve voice-note words in Discord ambient conversations [#142860](https://github.com/openclaw/openclaw/pull/142860). Thanks [@ericcaiwx-star](https://github.com/ericcaiwx-star), [@aatreya](https://github.com/aatreya), [@jalehman](https://github.com/jalehman). +- Restore permitted system-agent delegation in Discord guild messages [#143006](https://github.com/openclaw/openclaw/pull/143006). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@Peetiegonzalez](https://github.com/Peetiegonzalez), [@obviyus](https://github.com/obviyus), [@0xCyda](https://github.com/0xCyda), [@lisheguo](https://github.com/lisheguo). **Documentation** -- Organize Discord documentation into focused guides [#142666](https://github.com/openclaw/openclaw/pull/142666). Thanks @vincentkoc. +- Organize Discord documentation into focused guides [#142666](https://github.com/openclaw/openclaw/pull/142666). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1403,9 +1403,9 @@ Slack can show its configured reaction when it picks up your mention even if you **Bug fixes** -- Resolve a shared workspace for owner heartbeat DMs [#138689](https://github.com/openclaw/openclaw/pull/138689). Thanks @Kimiyu-186. +- Resolve a shared workspace for owner heartbeat DMs [#138689](https://github.com/openclaw/openclaw/pull/138689). Thanks [@Kimiyu-186](https://github.com/Kimiyu-186). - Keep Slack prose out of code formatting after Windows paths [#142288](https://github.com/openclaw/openclaw/pull/142288). -- Keep Slack acknowledgements when status reactions are off [#142595](https://github.com/openclaw/openclaw/pull/142595). Thanks @sunlit-deng, @alexjpanagis. +- Keep Slack acknowledgements when status reactions are off [#142595](https://github.com/openclaw/openclaw/pull/142595). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@alexjpanagis](https://github.com/alexjpanagis). @@ -1428,13 +1428,13 @@ If a separately installed Feishu plugin stopped letting your Claw work with docu **Bug fixes** -- Restore Feishu workspace tools in message-driven runs [#141984](https://github.com/openclaw/openclaw/pull/141984). Thanks @SunnyShu0925, @hayden-cc, @lizhengwu, @jalehman, @seven7763, @itanyplus. +- Restore Feishu workspace tools in message-driven runs [#141984](https://github.com/openclaw/openclaw/pull/141984). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@hayden-cc](https://github.com/hayden-cc), [@lizhengwu](https://github.com/lizhengwu), [@jalehman](https://github.com/jalehman), [@seven7763](https://github.com/seven7763), [@itanyplus](https://github.com/itanyplus). - Apply updated Feishu tool settings to new turns [#141993](https://github.com/openclaw/openclaw/pull/141993). - Preserve Feishu inline styles in received posts [#142627](https://github.com/openclaw/openclaw/pull/142627). **Documentation** -- Organize Feishu documentation by task [#143085](https://github.com/openclaw/openclaw/pull/143085). Thanks @vincentkoc. +- Organize Feishu documentation by task [#143085](https://github.com/openclaw/openclaw/pull/143085). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1453,13 +1453,13 @@ If a separately installed Feishu plugin stopped letting your Claw work with docu **Bug fixes** -- Preserve Matrix text for unknown message types [#135359](https://github.com/openclaw/openclaw/pull/135359). Thanks @teddytennant, @obviyus. +- Preserve Matrix text for unknown message types [#135359](https://github.com/openclaw/openclaw/pull/135359). Thanks [@teddytennant](https://github.com/teddytennant), [@obviyus](https://github.com/obviyus). - Show Matrix reaction labels in CLI listings [#141811](https://github.com/openclaw/openclaw/pull/141811). - Keep escaped Matrix mentions literal after unmatched backticks [#142369](https://github.com/openclaw/openclaw/pull/142369). **Documentation** -- Organize Matrix documentation into focused guides [#142996](https://github.com/openclaw/openclaw/pull/142996). Thanks @vincentkoc. +- Organize Matrix documentation into focused guides [#142996](https://github.com/openclaw/openclaw/pull/142996). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1482,7 +1482,7 @@ Your Claw now reads punctuation and symbols correctly in [Teams messages](https: **Documentation** -- Organize Teams documentation into focused guides [#142986](https://github.com/openclaw/openclaw/pull/142986). Thanks @vincentkoc. +- Organize Teams documentation into focused guides [#142986](https://github.com/openclaw/openclaw/pull/142986). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1501,7 +1501,7 @@ If you set [Signal](https://docs.openclaw.ai/channels/signal) to quote your mess **Documentation** -- Document Signal table modes, default bullets, and block-to-code fallback [#138160](https://github.com/openclaw/openclaw/pull/138160). Thanks @SunnyShu0925, @obviyus. +- Document Signal table modes, default bullets, and block-to-code fallback [#138160](https://github.com/openclaw/openclaw/pull/138160). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus). **Bug fixes** @@ -1524,7 +1524,7 @@ If you use a custom label at the start of your Claw’s WhatsApp replies, it no **Bug fixes** -- Keep reply prefixes out of incoming WhatsApp messages [#138819](https://github.com/openclaw/openclaw/pull/138819). Thanks @sunlit-deng, @vincentkoc, @Jackten. +- Keep reply prefixes out of incoming WhatsApp messages [#138819](https://github.com/openclaw/openclaw/pull/138819). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@vincentkoc](https://github.com/vincentkoc), [@Jackten](https://github.com/Jackten). @@ -1543,12 +1543,12 @@ If you use a custom label at the start of your Claw’s WhatsApp replies, it no **Documentation** -- Clarify current iMessage support in maturity docs [#141963](https://github.com/openclaw/openclaw/pull/141963). Thanks @RomneyDa. -- Organize iMessage guides by setup and messaging task [#143038](https://github.com/openclaw/openclaw/pull/143038). Thanks @vincentkoc. +- Clarify current iMessage support in maturity docs [#141963](https://github.com/openclaw/openclaw/pull/141963). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Organize iMessage guides by setup and messaging task [#143038](https://github.com/openclaw/openclaw/pull/143038). Thanks [@vincentkoc](https://github.com/vincentkoc). **Bug fixes** -- Show resolved iMessage contact and group names [#142128](https://github.com/openclaw/openclaw/pull/142128). Thanks @omarshahine. +- Show resolved iMessage contact and group names [#142128](https://github.com/openclaw/openclaw/pull/142128). Thanks [@omarshahine](https://github.com/omarshahine). @@ -1567,7 +1567,7 @@ For Mattermost setups that store login tokens separately from account settings, **Bug fixes** -- Keep other Mattermost accounts connected during settings reloads [#142193](https://github.com/openclaw/openclaw/pull/142193). Thanks @ceckert, @obviyus. +- Keep other Mattermost accounts connected during settings reloads [#142193](https://github.com/openclaw/openclaw/pull/142193). Thanks [@ceckert](https://github.com/ceckert), [@obviyus](https://github.com/obviyus). - Preserve replacement Mattermost progress previews [#143621](https://github.com/openclaw/openclaw/pull/143621). @@ -1587,7 +1587,7 @@ Replies from a resumed Google Chat conversation can use its saved destination co **Bug fixes** -- Preserve destination casing for resumed Google Chat replies [#140418](https://github.com/openclaw/openclaw/pull/140418). Thanks @aeoess, @obviyus, @jailbirt. +- Preserve destination casing for resumed Google Chat replies [#140418](https://github.com/openclaw/openclaw/pull/140418). Thanks [@aeoess](https://github.com/aeoess), [@obviyus](https://github.com/obviyus), [@jailbirt](https://github.com/jailbirt). @@ -1606,7 +1606,7 @@ When diagnostic recording is enabled, a successful Nextcloud Talk reaction no lo **Bug fixes** -- Avoid diagnostic-capture delays in Nextcloud Talk responses [#141307](https://github.com/openclaw/openclaw/pull/141307). Thanks @hugenshen, @obviyus. +- Avoid diagnostic-capture delays in Nextcloud Talk responses [#141307](https://github.com/openclaw/openclaw/pull/141307). Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). @@ -1625,7 +1625,7 @@ If a Tlon message cannot send because setup is incomplete, the error now tells y **Bug fixes** -- Identify missing Tlon account settings in send errors [#137664](https://github.com/openclaw/openclaw/pull/137664). Thanks @ly85206559, @obviyus. +- Identify missing Tlon account settings in send errors [#137664](https://github.com/openclaw/openclaw/pull/137664). Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). @@ -1644,7 +1644,7 @@ If you use multiple Zalo Personal accounts with an older setup, `openclaw doctor **Bug fixes** -- Restore Zalo Personal policy migration [#143860](https://github.com/openclaw/openclaw/pull/143860). Thanks @wangmiao0668000666, @obviyus. +- Restore Zalo Personal policy migration [#143860](https://github.com/openclaw/openclaw/pull/143860). Thanks [@wangmiao0668000666](https://github.com/wangmiao0668000666), [@obviyus](https://github.com/obviyus). @@ -1665,23 +1665,23 @@ If you use scripts, leave out `--account` and the [directory](https://docs.openc **Limits and compatibility** -- Reject blank account options in directory commands [#137334](https://github.com/openclaw/openclaw/pull/137334). Thanks @Alix-007, @obviyus. -- Reject explicitly empty directory listing limits [#141738](https://github.com/openclaw/openclaw/pull/141738). Thanks @hugenshen, @obviyus. -- Reject empty account selectors in message and channel commands [#143088](https://github.com/openclaw/openclaw/pull/143088). Thanks @ly85206559, @obviyus. +- Reject blank account options in directory commands [#137334](https://github.com/openclaw/openclaw/pull/137334). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). +- Reject explicitly empty directory listing limits [#141738](https://github.com/openclaw/openclaw/pull/141738). Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). +- Reject empty account selectors in message and channel commands [#143088](https://github.com/openclaw/openclaw/pull/143088). Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). **Bug fixes** - Show channel account selectors correctly in agent listings [#141724](https://github.com/openclaw/openclaw/pull/141724). -- Give message commands a working ownership remedy [#141886](https://github.com/openclaw/openclaw/pull/141886). Thanks @Dreamer-HIT, @obviyus, @schwanncells. -- Include implicit default accounts in health output and listBoundAccountIds [#143319](https://github.com/openclaw/openclaw/pull/143319). Thanks @qingminglong, @obviyus. +- Give message commands a working ownership remedy [#141886](https://github.com/openclaw/openclaw/pull/141886). Thanks [@Dreamer-HIT](https://github.com/Dreamer-HIT), [@obviyus](https://github.com/obviyus), [@schwanncells](https://github.com/schwanncells). +- Include implicit default accounts in health output and listBoundAccountIds [#143319](https://github.com/openclaw/openclaw/pull/143319). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). - Preserve channel subtitles before plugins load [#143416](https://github.com/openclaw/openclaw/pull/143416). - Reject blank directory groups before plugin setup [#143440](https://github.com/openclaw/openclaw/pull/143440). -- Reject unknown channel accounts during removal [#143561](https://github.com/openclaw/openclaw/pull/143561). Thanks @masatohoshino, @obviyus. +- Reject unknown channel accounts during removal [#143561](https://github.com/openclaw/openclaw/pull/143561). Thanks [@masatohoshino](https://github.com/masatohoshino), [@obviyus](https://github.com/obviyus). **Documentation** -- Split channel configuration documentation into focused pages [#142910](https://github.com/openclaw/openclaw/pull/142910). Thanks @vincentkoc. -- Correct Matrix token and restart steps, Tlon login guidance, Yuanbao App Key instructions, and plugin publishing and SDK examples [#144018](https://github.com/openclaw/openclaw/pull/144018). Thanks @vincentkoc, @sunnyiren-max. +- Split channel configuration documentation into focused pages [#142910](https://github.com/openclaw/openclaw/pull/142910). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct Matrix token and restart steps, Tlon login guidance, Yuanbao App Key instructions, and plugin publishing and SDK examples [#144018](https://github.com/openclaw/openclaw/pull/144018). Thanks [@vincentkoc](https://github.com/vincentkoc), [@sunnyiren-max](https://github.com/sunnyiren-max). @@ -1700,13 +1700,13 @@ If you use scripts, leave out `--account` and the [directory](https://docs.openc **Bug fixes** -- Keep voice follow-ups and replies with the active task [#129186](https://github.com/openclaw/openclaw/pull/129186). Thanks @vincentkoc. -- Return delegated answers to the active Talk session [#129535](https://github.com/openclaw/openclaw/pull/129535). Thanks @vincentkoc. +- Keep voice follow-ups and replies with the active task [#129186](https://github.com/openclaw/openclaw/pull/129186). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Return delegated answers to the active Talk session [#129535](https://github.com/openclaw/openclaw/pull/129535). Thanks [@vincentkoc](https://github.com/vincentkoc). - Deliver Talk answers after repeated delegation [#142830](https://github.com/openclaw/openclaw/pull/142830). **Documentation** -- Organize Talk guidance into focused pages [#143149](https://github.com/openclaw/openclaw/pull/143149). Thanks @vincentkoc. +- Organize Talk guidance into focused pages [#143149](https://github.com/openclaw/openclaw/pull/143149). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1725,15 +1725,15 @@ When you interrupt your Claw on a phone call, it now uses the phone service’s **Bug fixes** -- Restore the default Twilio voice for certain unrecognized names [#137678](https://github.com/openclaw/openclaw/pull/137678). Thanks @teddytennant, @obviyus. -- Keep unknown call statuses from ending active calls [#137679](https://github.com/openclaw/openclaw/pull/137679). Thanks @teddytennant, @obviyus. -- Track confirmed phone playback when callers interrupt [#138619](https://github.com/openclaw/openclaw/pull/138619). Thanks @LiuwqGit, @obviyus, @fabiolr, @xueqingli1. -- Keep GPT-Live calls connected after recoverable audio errors [#140702](https://github.com/openclaw/openclaw/pull/140702). Thanks @zenglingbiao, @obviyus. -- Return clear errors for unknown voice stream paths [#141315](https://github.com/openclaw/openclaw/pull/141315). Thanks @hugenshen, @obviyus. +- Restore the default Twilio voice for certain unrecognized names [#137678](https://github.com/openclaw/openclaw/pull/137678). Thanks [@teddytennant](https://github.com/teddytennant), [@obviyus](https://github.com/obviyus). +- Keep unknown call statuses from ending active calls [#137679](https://github.com/openclaw/openclaw/pull/137679). Thanks [@teddytennant](https://github.com/teddytennant), [@obviyus](https://github.com/obviyus). +- Track confirmed phone playback when callers interrupt [#138619](https://github.com/openclaw/openclaw/pull/138619). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@fabiolr](https://github.com/fabiolr), [@xueqingli1](https://github.com/xueqingli1). +- Keep GPT-Live calls connected after recoverable audio errors [#140702](https://github.com/openclaw/openclaw/pull/140702). Thanks [@zenglingbiao](https://github.com/zenglingbiao), [@obviyus](https://github.com/obviyus). +- Return clear errors for unknown voice stream paths [#141315](https://github.com/openclaw/openclaw/pull/141315). Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). **Documentation** -- Organize Voice Call guidance into focused topic pages [#143055](https://github.com/openclaw/openclaw/pull/143055). Thanks @vincentkoc. +- Organize Voice Call guidance into focused topic pages [#143055](https://github.com/openclaw/openclaw/pull/143055). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1760,11 +1760,11 @@ Asking for a short list of memories no longer drops a better match just because **Bug fixes** -- Keep top memory matches consistent at small result limits [ff1d91f](https://github.com/openclaw/openclaw/commit/ff1d91f6711b301ad0bb8f8f9485bfb05d770d84). Thanks @linhongyu510. +- Keep top memory matches consistent at small result limits [ff1d91f](https://github.com/openclaw/openclaw/commit/ff1d91f6711b301ad0bb8f8f9485bfb05d770d84). Thanks [@linhongyu510](https://github.com/linhongyu510). - Recover memory searches after manager replacement [#141879](https://github.com/openclaw/openclaw/pull/141879). -- Preserve Active Memory recall after optional lookup timeouts [#142567](https://github.com/openclaw/openclaw/pull/142567). Thanks @ylcn91, @obviyus, @BsnizND. -- Allow local embedding startup before timing memory searches [#143590](https://github.com/openclaw/openclaw/pull/143590). Thanks @wangmiao0668000666, @obviyus, @PeterHodl. -- Skip unnecessary recall for agent deliveries [#143903](https://github.com/openclaw/openclaw/pull/143903). Thanks @LiuwqGit, @obviyus, @kiagentkronos-cell, @syfvb. +- Preserve Active Memory recall after optional lookup timeouts [#142567](https://github.com/openclaw/openclaw/pull/142567). Thanks [@ylcn91](https://github.com/ylcn91), [@obviyus](https://github.com/obviyus), [@BsnizND](https://github.com/BsnizND). +- Allow local embedding startup before timing memory searches [#143590](https://github.com/openclaw/openclaw/pull/143590). Thanks [@wangmiao0668000666](https://github.com/wangmiao0668000666), [@obviyus](https://github.com/obviyus), [@PeterHodl](https://github.com/PeterHodl). +- Skip unnecessary recall for agent deliveries [#143903](https://github.com/openclaw/openclaw/pull/143903). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@kiagentkronos-cell](https://github.com/kiagentkronos-cell), [@syfvb](https://github.com/syfvb). @@ -1789,9 +1789,9 @@ Mac users running OpenClaw with Bun can enable native memory search with `brew i **Bug fixes** -- Respect provider cooldowns during memory indexing [#134959](https://github.com/openclaw/openclaw/pull/134959). Thanks @shojikumaru, @obviyus, @developercrocodiles. -- Use the fallback provider's model for memory embeddings [#142364](https://github.com/openclaw/openclaw/pull/142364). Thanks @Yigtwxx, @obviyus. -- Recognize fallback-built indexes in deep memory status [#142609](https://github.com/openclaw/openclaw/pull/142609). Thanks @Yigtwxx, @obviyus. +- Respect provider cooldowns during memory indexing [#134959](https://github.com/openclaw/openclaw/pull/134959). Thanks [@shojikumaru](https://github.com/shojikumaru), [@obviyus](https://github.com/obviyus), [@developercrocodiles](https://github.com/developercrocodiles). +- Use the fallback provider's model for memory embeddings [#142364](https://github.com/openclaw/openclaw/pull/142364). Thanks [@Yigtwxx](https://github.com/Yigtwxx), [@obviyus](https://github.com/obviyus). +- Recognize fallback-built indexes in deep memory status [#142609](https://github.com/openclaw/openclaw/pull/142609). Thanks [@Yigtwxx](https://github.com/Yigtwxx), [@obviyus](https://github.com/obviyus). @@ -1814,7 +1814,7 @@ _Default long-term memory selection adds a search-use signal. Conceptual illustr **Bug fixes** -- Require distinct recall queries for automatic memory promotion; configurations with `minUniqueQueries=0` retain their existing allowance [#119624](https://github.com/openclaw/openclaw/pull/119624). Thanks @pcpilot-dev, @RomneyDa, @sunnyandtec-ak, @zachisfine. +- Require distinct recall queries for automatic memory promotion; configurations with `minUniqueQueries=0` retain their existing allowance [#119624](https://github.com/openclaw/openclaw/pull/119624). Thanks [@pcpilot-dev](https://github.com/pcpilot-dev), [@RomneyDa](https://github.com/RomneyDa), [@sunnyandtec-ak](https://github.com/sunnyandtec-ak), [@zachisfine](https://github.com/zachisfine). @@ -1837,11 +1837,11 @@ _Default long-term memory selection adds a search-use signal. Conceptual illustr **Bug fixes** -- Open retained session search results after a reset [#141437](https://github.com/openclaw/openclaw/pull/141437). Thanks @VACInc. -- Accept redundant offsets in anchored session-history requests [#141664](https://github.com/openclaw/openclaw/pull/141664). Thanks @FlagshipClaw, @obviyus, @VACInc, @brainatworkharris. -- Prevent lost replies after compaction and session handoff [#141718](https://github.com/openclaw/openclaw/pull/141718). Thanks @VACInc. -- Avoid full-history reads for delivery confirmations [#142453](https://github.com/openclaw/openclaw/pull/142453). Thanks @VACInc, @todddickerson. -- Keep memory maintenance within the conversation context budget [#143193](https://github.com/openclaw/openclaw/pull/143193). Thanks @KirDE, @obviyus. +- Open retained session search results after a reset [#141437](https://github.com/openclaw/openclaw/pull/141437). Thanks [@VACInc](https://github.com/VACInc). +- Accept redundant offsets in anchored session-history requests [#141664](https://github.com/openclaw/openclaw/pull/141664). Thanks [@FlagshipClaw](https://github.com/FlagshipClaw), [@obviyus](https://github.com/obviyus), [@VACInc](https://github.com/VACInc), [@brainatworkharris](https://github.com/brainatworkharris). +- Prevent lost replies after compaction and session handoff [#141718](https://github.com/openclaw/openclaw/pull/141718). Thanks [@VACInc](https://github.com/VACInc). +- Avoid full-history reads for delivery confirmations [#142453](https://github.com/openclaw/openclaw/pull/142453). Thanks [@VACInc](https://github.com/VACInc), [@todddickerson](https://github.com/todddickerson). +- Keep memory maintenance within the conversation context budget [#143193](https://github.com/openclaw/openclaw/pull/143193). Thanks [@KirDE](https://github.com/KirDE), [@obviyus](https://github.com/obviyus). @@ -1862,16 +1862,16 @@ When an automatic memory save lacks permission to write, the logs now name the f **Bug fixes** -- Warn when memory flushes cannot write their target file [#127031](https://github.com/openclaw/openclaw/pull/127031). Thanks @ayaangazali, @fede-kamel, @vincentkoc. -- Show selected recall-skip reasons in default logs [#138658](https://github.com/openclaw/openclaw/pull/138658). Thanks @DasX, @obviyus, @Oliverbot26. -- Explain memory cleanup after deleting a session [#141841](https://github.com/openclaw/openclaw/pull/141841). Thanks @glenn-agent, @obviyus, @dh-js, @he-yufeng. +- Warn when memory flushes cannot write their target file [#127031](https://github.com/openclaw/openclaw/pull/127031). Thanks [@ayaangazali](https://github.com/ayaangazali), [@fede-kamel](https://github.com/fede-kamel), [@vincentkoc](https://github.com/vincentkoc). +- Show selected recall-skip reasons in default logs [#138658](https://github.com/openclaw/openclaw/pull/138658). Thanks [@DasX](https://github.com/DasX), [@obviyus](https://github.com/obviyus), [@Oliverbot26](https://github.com/Oliverbot26). +- Explain memory cleanup after deleting a session [#141841](https://github.com/openclaw/openclaw/pull/141841). Thanks [@glenn-agent](https://github.com/glenn-agent), [@obviyus](https://github.com/obviyus), [@dh-js](https://github.com/dh-js), [@he-yufeng](https://github.com/he-yufeng). - Check memory readiness while agent databases are busy [#142361](https://github.com/openclaw/openclaw/pull/142361). - Avoid unnecessary Doctor refusals for shared-memory layouts; preserve edited archives without importing their changes, and defer later event generations in that workspace [#143138](https://github.com/openclaw/openclaw/pull/143138). **Documentation** -- Explain tool grants for Lossless Claw recall [#142705](https://github.com/openclaw/openclaw/pull/142705). Thanks @MasterSwords1, @obviyus, @guarismo. -- Split Active Memory guidance into task-specific pages [#143057](https://github.com/openclaw/openclaw/pull/143057). Thanks @vincentkoc. +- Explain tool grants for Lossless Claw recall [#142705](https://github.com/openclaw/openclaw/pull/142705). Thanks [@MasterSwords1](https://github.com/MasterSwords1), [@obviyus](https://github.com/obviyus), [@guarismo](https://github.com/guarismo). +- Split Active Memory guidance into task-specific pages [#143057](https://github.com/openclaw/openclaw/pull/143057). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1913,11 +1913,11 @@ If another tool adds memories to your [LanceDB memory extension](https://docs.op **Bug fixes** -- Refresh LanceDB reads after external memory writes [#137806](https://github.com/openclaw/openclaw/pull/137806). Thanks @azuretek, @obviyus. +- Refresh LanceDB reads after external memory writes [#137806](https://github.com/openclaw/openclaw/pull/137806). Thanks [@azuretek](https://github.com/azuretek), [@obviyus](https://github.com/obviyus). **Documentation** -- Clarify the existing LanceDB requirements for OpenClaw host version `>=2026.5.31` and plugin API `>=2026.9.3`, which must both pass [#142827](https://github.com/openclaw/openclaw/pull/142827). Thanks @obviyus, @ly85206559. +- Clarify the existing LanceDB requirements for OpenClaw host version `>=2026.5.31` and plugin API `>=2026.9.3`, which must both pass [#142827](https://github.com/openclaw/openclaw/pull/142827). Thanks [@obviyus](https://github.com/obviyus), [@ly85206559](https://github.com/ly85206559). @@ -1948,13 +1948,13 @@ _The actual Skills discovery page, populated with fictional Harbor workspace ski **Improvements** -- Search installed skills and ClawHub together [#143758](https://github.com/openclaw/openclaw/pull/143758). Thanks @Patrick-Erichsen. +- Search installed skills and ClawHub together [#143758](https://github.com/openclaw/openclaw/pull/143758). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Find repository skills in separate execution workspaces [#141966](https://github.com/openclaw/openclaw/pull/141966). Thanks @obviyus. +- Find repository skills in separate execution workspaces [#141966](https://github.com/openclaw/openclaw/pull/141966). Thanks [@obviyus](https://github.com/obviyus). - Show and find skills by their actual titles [#142535](https://github.com/openclaw/openclaw/pull/142535). -- Keep ClawHub details and changelogs readable in dialogs [#142555](https://github.com/openclaw/openclaw/pull/142555). Thanks @vyctorbrzezowski. +- Keep ClawHub details and changelogs readable in dialogs [#142555](https://github.com/openclaw/openclaw/pull/142555). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). @@ -1973,12 +1973,12 @@ When importing a skill, you can now see which files you selected and clear them **Improvements** -- Show and clear selected files during skill import [#142540](https://github.com/openclaw/openclaw/pull/142540). Thanks @vyctorbrzezowski. +- Show and clear selected files during skill import [#142540](https://github.com/openclaw/openclaw/pull/142540). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). **Bug fixes** -- Fit skill dialogs to content with compact Close controls [#142550](https://github.com/openclaw/openclaw/pull/142550). Thanks @vyctorbrzezowski. -- Allow slower Control UI skill dependency installs to finish [#143000](https://github.com/openclaw/openclaw/pull/143000). Thanks @gozu, @obviyus. +- Fit skill dialogs to content with compact Close controls [#142550](https://github.com/openclaw/openclaw/pull/142550). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Allow slower Control UI skill dependency installs to finish [#143000](https://github.com/openclaw/openclaw/pull/143000). Thanks [@gozu](https://github.com/gozu), [@obviyus](https://github.com/obviyus). @@ -1999,8 +1999,8 @@ Old unfinished history scans cannot resume in the new flow, so start a new learn **Improvements** -- Learn from past conversations in a steerable chat [#142909](https://github.com/openclaw/openclaw/pull/142909). Thanks @obviyus. -- Explain paused weekly skill reviews [#142840](https://github.com/openclaw/openclaw/pull/142840). Thanks @obviyus. +- Learn from past conversations in a steerable chat [#142909](https://github.com/openclaw/openclaw/pull/142909). Thanks [@obviyus](https://github.com/obviyus). +- Explain paused weekly skill reviews [#142840](https://github.com/openclaw/openclaw/pull/142840). Thanks [@obviyus](https://github.com/obviyus). **Bug fixes** @@ -2008,7 +2008,7 @@ Old unfinished history scans cannot resume in the new flow, so start a new learn **Documentation** -- Split Skill Workshop documentation into focused guides [#143079](https://github.com/openclaw/openclaw/pull/143079). Thanks @vincentkoc. +- Split Skill Workshop documentation into focused guides [#143079](https://github.com/openclaw/openclaw/pull/143079). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2029,12 +2029,12 @@ New Workshop changes preserve the full descriptions that help your Claw recogniz **Bug fixes** -- Refresh session skills after Gateway restarts [#122110](https://github.com/openclaw/openclaw/pull/122110). Thanks @sappkevin, @obviyus, @kashivreddy, @aspalagin. -- Preserve full skill descriptions through Workshop updates [#140864](https://github.com/openclaw/openclaw/pull/140864). Thanks @LiuwqGit, @obviyus, @XX441, @laisonamarante, @RuiCatalao7, @thomasmoenco. -- Refresh skill availability after installs and edits [#141979](https://github.com/openclaw/openclaw/pull/141979). Thanks @RomneyDa. -- Show repaired skills on the first status check [#142123](https://github.com/openclaw/openclaw/pull/142123). Thanks @ericcaiwx-star, @aspalagin, @obviyus. -- Clarify how agents should make requested repository skill edits outside Workshop [#142844](https://github.com/openclaw/openclaw/pull/142844). Thanks @Finn763, @obviyus, @jmissig. -- Give sandboxed plugin agents readable skill paths [#143291](https://github.com/openclaw/openclaw/pull/143291). Thanks @sallyom, @sercada, @Artemeey. +- Refresh session skills after Gateway restarts [#122110](https://github.com/openclaw/openclaw/pull/122110). Thanks [@sappkevin](https://github.com/sappkevin), [@obviyus](https://github.com/obviyus), [@kashivreddy](https://github.com/kashivreddy), [@aspalagin](https://github.com/aspalagin). +- Preserve full skill descriptions through Workshop updates [#140864](https://github.com/openclaw/openclaw/pull/140864). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@XX441](https://github.com/XX441), [@laisonamarante](https://github.com/laisonamarante), [@RuiCatalao7](https://github.com/RuiCatalao7), [@thomasmoenco](https://github.com/thomasmoenco). +- Refresh skill availability after installs and edits [#141979](https://github.com/openclaw/openclaw/pull/141979). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Show repaired skills on the first status check [#142123](https://github.com/openclaw/openclaw/pull/142123). Thanks [@ericcaiwx-star](https://github.com/ericcaiwx-star), [@aspalagin](https://github.com/aspalagin), [@obviyus](https://github.com/obviyus). +- Clarify how agents should make requested repository skill edits outside Workshop [#142844](https://github.com/openclaw/openclaw/pull/142844). Thanks [@Finn763](https://github.com/Finn763), [@obviyus](https://github.com/obviyus), [@jmissig](https://github.com/jmissig). +- Give sandboxed plugin agents readable skill paths [#143291](https://github.com/openclaw/openclaw/pull/143291). Thanks [@sallyom](https://github.com/sallyom), [@sercada](https://github.com/sercada), [@Artemeey](https://github.com/Artemeey). @@ -2076,10 +2076,10 @@ Doctor can repair several known Workshop problems that stopped upgrades or preve **Bug fixes** -- Repair the legacy Workshop review index with Doctor [1e7797ad9836](https://github.com/openclaw/openclaw/commit/1e7797ad983683a3cd691887f1b398164ddc6282). Thanks @jjjhenriksen, @RomneyDa. -- Continue Doctor repairs while preserving ambiguous Workshop artifacts [#143141](https://github.com/openclaw/openclaw/pull/143141). Thanks @fahrenhe1t, @GitHoubi, @cjn119-ui, @obviyus. -- Repair recognized unfinished Workshop database upgrades [#143153](https://github.com/openclaw/openclaw/pull/143153). Thanks @syfvb, @pbergeot, @rjamoul, @cjn119-ui. -- Ignore retired Workshop jobs during Doctor preflight [#143325](https://github.com/openclaw/openclaw/pull/143325). Thanks @cjn119-ui, @jerabinovich, @obviyus. +- Repair the legacy Workshop review index with Doctor [1e7797ad9836](https://github.com/openclaw/openclaw/commit/1e7797ad983683a3cd691887f1b398164ddc6282). Thanks [@jjjhenriksen](https://github.com/jjjhenriksen), [@RomneyDa](https://github.com/RomneyDa). +- Continue Doctor repairs while preserving ambiguous Workshop artifacts [#143141](https://github.com/openclaw/openclaw/pull/143141). Thanks [@fahrenhe1t](https://github.com/fahrenhe1t), [@GitHoubi](https://github.com/GitHoubi), [@cjn119-ui](https://github.com/cjn119-ui), [@obviyus](https://github.com/obviyus). +- Repair recognized unfinished Workshop database upgrades [#143153](https://github.com/openclaw/openclaw/pull/143153). Thanks [@syfvb](https://github.com/syfvb), [@pbergeot](https://github.com/pbergeot), [@rjamoul](https://github.com/rjamoul), [@cjn119-ui](https://github.com/cjn119-ui). +- Ignore retired Workshop jobs during Doctor preflight [#143325](https://github.com/openclaw/openclaw/pull/143325). Thanks [@cjn119-ui](https://github.com/cjn119-ui), [@jerabinovich](https://github.com/jerabinovich), [@obviyus](https://github.com/obviyus). @@ -2135,13 +2135,13 @@ Search and the sidebar show which conversation is busy, and a failed refresh kee - Keep Android reading position while replies grow, and reveal expanded messages and code endpoints [#140759](https://github.com/openclaw/openclaw/pull/140759). - Show Android session refresh errors without losing loaded pages [#141603](https://github.com/openclaw/openclaw/pull/141603). -- Keep Android Thinking and Fast controls clear of folds [#141860](https://github.com/openclaw/openclaw/pull/141860). Thanks @vincentkoc. +- Keep Android Thinking and Fast controls clear of folds [#141860](https://github.com/openclaw/openclaw/pull/141860). Thanks [@vincentkoc](https://github.com/vincentkoc). - Thread activity labels follow the right conversation [#141883](https://github.com/openclaw/openclaw/pull/141883). -- Keep Background Tasks inside foldable panes [#141899](https://github.com/openclaw/openclaw/pull/141899). Thanks @vincentkoc. +- Keep Background Tasks inside foldable panes [#141899](https://github.com/openclaw/openclaw/pull/141899). Thanks [@vincentkoc](https://github.com/vincentkoc). - Keep matching Android threads in view [#142046](https://github.com/openclaw/openclaw/pull/142046). - Distinguish Android chat readiness from Gateway disconnection [#142182](https://github.com/openclaw/openclaw/pull/142182). -- Keep Android branch choices inside usable fold panes [#142418](https://github.com/openclaw/openclaw/pull/142418). Thanks @vincentkoc. -- Restore Android tool activity and fold completed work [#142810](https://github.com/openclaw/openclaw/pull/142810). Thanks @ansxor, @IWhatsskill. +- Keep Android branch choices inside usable fold panes [#142418](https://github.com/openclaw/openclaw/pull/142418). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Restore Android tool activity and fold completed work [#142810](https://github.com/openclaw/openclaw/pull/142810). Thanks [@ansxor](https://github.com/ansxor), [@IWhatsskill](https://github.com/IWhatsskill). - Distinguish Android chat readiness from Gateway connection status [#143128](https://github.com/openclaw/openclaw/pull/143128). @@ -2209,9 +2209,9 @@ Android setup also makes the selected security option available to accessibility **Bug fixes** -- Add explicit battery percentages to mobile status responses [#141069](https://github.com/openclaw/openclaw/pull/141069). Thanks @NullArbitrage, @obviyus. +- Add explicit battery percentages to mobile status responses [#141069](https://github.com/openclaw/openclaw/pull/141069). Thanks [@NullArbitrage](https://github.com/NullArbitrage), [@obviyus](https://github.com/obviyus). - Expose Android connection-security selection to assistive services [#142131](https://github.com/openclaw/openclaw/pull/142131). -- Show mobile connection failures with targeted retry actions [#142651](https://github.com/openclaw/openclaw/pull/142651). Thanks @vincentkoc. +- Show mobile connection failures with targeted retry actions [#142651](https://github.com/openclaw/openclaw/pull/142651). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2230,8 +2230,8 @@ You can now reach the official App Store listing straight from the [iPhone setup **Documentation** -- Find Android release downloads with both APK and checksum [#141762](https://github.com/openclaw/openclaw/pull/141762). Thanks @xiaoguomeiyitian, @obviyus, @tomdailey55. -- Link the official iPhone app from its setup guide [#142132](https://github.com/openclaw/openclaw/pull/142132). Thanks @mgabor3141, @obviyus. +- Find Android release downloads with both APK and checksum [#141762](https://github.com/openclaw/openclaw/pull/141762). Thanks [@xiaoguomeiyitian](https://github.com/xiaoguomeiyitian), [@obviyus](https://github.com/obviyus), [@tomdailey55](https://github.com/tomdailey55). +- Link the official iPhone app from its setup guide [#142132](https://github.com/openclaw/openclaw/pull/142132). Thanks [@mgabor3141](https://github.com/mgabor3141), [@obviyus](https://github.com/obviyus). @@ -2298,7 +2298,7 @@ When you are using a side-panel tab in the Mac app, Command-W now closes that ta **Bug fixes** -- Close focused macOS side-panel tabs with Cmd+W [#142634](https://github.com/openclaw/openclaw/pull/142634). Thanks @Patrick-Erichsen. +- Close focused macOS side-panel tabs with Cmd+W [#142634](https://github.com/openclaw/openclaw/pull/142634). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). @@ -2319,8 +2319,8 @@ Status and Doctor can also point out background jobs that may be repeatedly rest **Bug fixes** -- Diagnose stray macOS Gateway restart jobs [#142230](https://github.com/openclaw/openclaw/pull/142230). Thanks @piotx, @rondavis007, @jodok, @jarvismazz. -- Preserve macOS Gateway startup errors in the service log [#143519](https://github.com/openclaw/openclaw/pull/143519). Thanks @RomneyDa, @Enominera, @igs-rogenlo, @lonexreb. +- Diagnose stray macOS Gateway restart jobs [#142230](https://github.com/openclaw/openclaw/pull/142230). Thanks [@piotx](https://github.com/piotx), [@rondavis007](https://github.com/rondavis007), [@jodok](https://github.com/jodok), [@jarvismazz](https://github.com/jarvismazz). +- Preserve macOS Gateway startup errors in the service log [#143519](https://github.com/openclaw/openclaw/pull/143519). Thanks [@RomneyDa](https://github.com/RomneyDa), [@Enominera](https://github.com/Enominera), [@igs-rogenlo](https://github.com/igs-rogenlo), [@lonexreb](https://github.com/lonexreb). @@ -2341,17 +2341,17 @@ The [Linux companion](https://docs.openclaw.ai/platforms/linux) also keeps updat **Bug fixes** -- Keep desktop update notices and retry actions available [#121938](https://github.com/openclaw/openclaw/pull/121938). Thanks @vincentkoc. -- Honor SSH alias ports in the Linux companion [#142900](https://github.com/openclaw/openclaw/pull/142900). Thanks @vincentkoc. -- Keep Linux sleep from suspending remote Gateways [#142913](https://github.com/openclaw/openclaw/pull/142913). Thanks @vincentkoc. +- Keep desktop update notices and retry actions available [#121938](https://github.com/openclaw/openclaw/pull/121938). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Honor SSH alias ports in the Linux companion [#142900](https://github.com/openclaw/openclaw/pull/142900). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Keep Linux sleep from suspending remote Gateways [#142913](https://github.com/openclaw/openclaw/pull/142913). Thanks [@vincentkoc](https://github.com/vincentkoc). **Security and trust** -- Preserve remote credential references on Linux reconnect [#142907](https://github.com/openclaw/openclaw/pull/142907). Thanks @vincentkoc. +- Preserve remote credential references on Linux reconnect [#142907](https://github.com/openclaw/openclaw/pull/142907). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Correct the Linux companion maturity description [#141955](https://github.com/openclaw/openclaw/pull/141955). Thanks @RomneyDa. +- Correct the Linux companion maturity description [#141955](https://github.com/openclaw/openclaw/pull/141955). Thanks [@RomneyDa](https://github.com/RomneyDa). @@ -2397,30 +2397,30 @@ If you connect to more than one Gateway, the [model list](https://docs.openclaw. **Improvements** -- Browse the selected Gateway's model inventory [#142063](https://github.com/openclaw/openclaw/pull/142063). Thanks @obviyus. +- Browse the selected Gateway's model inventory [#142063](https://github.com/openclaw/openclaw/pull/142063). Thanks [@obviyus](https://github.com/obviyus). - Reduce first-use Copilot metadata loading [#142134](https://github.com/openclaw/openclaw/pull/142134) -- Load less session code during model discovery [#143146](https://github.com/openclaw/openclaw/pull/143146). Thanks @vincentkoc. +- Load less session code during model discovery [#143146](https://github.com/openclaw/openclaw/pull/143146). Thanks [@vincentkoc](https://github.com/vincentkoc). - Avoid unused preparation when browsing models [#144095](https://github.com/openclaw/openclaw/pull/144095) **Bug fixes** -- Refresh model availability after token expiry or cooldown [#141727](https://github.com/openclaw/openclaw/pull/141727). Thanks @obviyus. -- Show when refreshed model information needs a restart [#141885](https://github.com/openclaw/openclaw/pull/141885). Thanks @obviyus. -- Warn about incomplete model refreshes [#141951](https://github.com/openclaw/openclaw/pull/141951). Thanks @obviyus. -- Keep inference model inspection within the agent catalog [#142367](https://github.com/openclaw/openclaw/pull/142367). Thanks @obviyus. -- Stop model selection from triggering extra provider discovery [#142375](https://github.com/openclaw/openclaw/pull/142375). Thanks @obviyus. -- Keep internal catalog reads passive and forward explicit refreshes [#142557](https://github.com/openclaw/openclaw/pull/142557). Thanks @obviyus. -- Restore public SDK model discovery defaults [#142620](https://github.com/openclaw/openclaw/pull/142620). Thanks @obviyus. -- Clear stale catalog warnings when the source changes [#142622](https://github.com/openclaw/openclaw/pull/142622). Thanks @obviyus. -- Keep saved models visible after startup [#142766](https://github.com/openclaw/openclaw/pull/142766). Thanks @obviyus. +- Refresh model availability after token expiry or cooldown [#141727](https://github.com/openclaw/openclaw/pull/141727). Thanks [@obviyus](https://github.com/obviyus). +- Show when refreshed model information needs a restart [#141885](https://github.com/openclaw/openclaw/pull/141885). Thanks [@obviyus](https://github.com/obviyus). +- Warn about incomplete model refreshes [#141951](https://github.com/openclaw/openclaw/pull/141951). Thanks [@obviyus](https://github.com/obviyus). +- Keep inference model inspection within the agent catalog [#142367](https://github.com/openclaw/openclaw/pull/142367). Thanks [@obviyus](https://github.com/obviyus). +- Stop model selection from triggering extra provider discovery [#142375](https://github.com/openclaw/openclaw/pull/142375). Thanks [@obviyus](https://github.com/obviyus). +- Keep internal catalog reads passive and forward explicit refreshes [#142557](https://github.com/openclaw/openclaw/pull/142557). Thanks [@obviyus](https://github.com/obviyus). +- Restore public SDK model discovery defaults [#142620](https://github.com/openclaw/openclaw/pull/142620). Thanks [@obviyus](https://github.com/obviyus). +- Clear stale catalog warnings when the source changes [#142622](https://github.com/openclaw/openclaw/pull/142622). Thanks [@obviyus](https://github.com/obviyus). +- Keep saved models visible after startup [#142766](https://github.com/openclaw/openclaw/pull/142766). Thanks [@obviyus](https://github.com/obviyus). - Avoid unrelated provider loading during cold session resets [#143254](https://github.com/openclaw/openclaw/pull/143254) - Keep model catalog resources through asynchronous reads [#143492](https://github.com/openclaw/openclaw/pull/143492) **Documentation** -- Clarify model status and catalog refresh guidance [#141927](https://github.com/openclaw/openclaw/pull/141927). Thanks @obviyus. +- Clarify model status and catalog refresh guidance [#141927](https://github.com/openclaw/openclaw/pull/141927). Thanks [@obviyus](https://github.com/obviyus). - Translate model-refresh retry guidance [#142000](https://github.com/openclaw/openclaw/pull/142000) -- Fix the model guide's Gateway catalog link [#142379](https://github.com/openclaw/openclaw/pull/142379). Thanks @vincentkoc. +- Fix the model guide's Gateway catalog link [#142379](https://github.com/openclaw/openclaw/pull/142379). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2439,13 +2439,13 @@ Saved model choices are less likely to change unexpectedly, particularly when cu **Bug fixes** -- Align child-session model display and routing [#131805](https://github.com/openclaw/openclaw/pull/131805); contextual [#86174](https://github.com/openclaw/openclaw/issues/86174). Thanks @jalehman, @rqlangley, @wpu911. -- Resolve Anthropic aliases consistently across status and permissions [#137376](https://github.com/openclaw/openclaw/pull/137376). Thanks @Yigtwxx, @obviyus. -- Respect explicit visibility policies for CLI-backed models in /models [#141642](https://github.com/openclaw/openclaw/pull/141642). Thanks @IWhatsskill, @NovaUnboundAi. +- Align child-session model display and routing [#131805](https://github.com/openclaw/openclaw/pull/131805); contextual [#86174](https://github.com/openclaw/openclaw/issues/86174). Thanks [@jalehman](https://github.com/jalehman), [@rqlangley](https://github.com/rqlangley), [@wpu911](https://github.com/wpu911). +- Resolve Anthropic aliases consistently across status and permissions [#137376](https://github.com/openclaw/openclaw/pull/137376). Thanks [@Yigtwxx](https://github.com/Yigtwxx), [@obviyus](https://github.com/obviyus). +- Respect explicit visibility policies for CLI-backed models in /models [#141642](https://github.com/openclaw/openclaw/pull/141642). Thanks [@IWhatsskill](https://github.com/IWhatsskill), [@NovaUnboundAi](https://github.com/NovaUnboundAi). - Resolve model aliases with the selected provider plugin [#141679](https://github.com/openclaw/openclaw/pull/141679) -- Honor the selected agent in model catalog commands [#141859](https://github.com/openclaw/openclaw/pull/141859). Thanks @obviyus. -- Explain unavailable models before terminal selection [#142160](https://github.com/openclaw/openclaw/pull/142160). Thanks @obviyus. -- Keep distinct model IDs and metadata visible in catalogs [#142285](https://github.com/openclaw/openclaw/pull/142285). Thanks @obviyus. +- Honor the selected agent in model catalog commands [#141859](https://github.com/openclaw/openclaw/pull/141859). Thanks [@obviyus](https://github.com/obviyus). +- Explain unavailable models before terminal selection [#142160](https://github.com/openclaw/openclaw/pull/142160). Thanks [@obviyus](https://github.com/obviyus). +- Keep distinct model IDs and metadata visible in catalogs [#142285](https://github.com/openclaw/openclaw/pull/142285). Thanks [@obviyus](https://github.com/obviyus). - Show inherited models consistently across session views [#142751](https://github.com/openclaw/openclaw/pull/142751) - Prefer exact model metadata when aliases coexist [#143686](https://github.com/openclaw/openclaw/pull/143686) - Prefer exact model spelling when inferring providers [#143708](https://github.com/openclaw/openclaw/pull/143708) @@ -2454,7 +2454,7 @@ Saved model choices are less likely to change unexpectedly, particularly when cu - Keep distinct allowed models visible [#143954](https://github.com/openclaw/openclaw/pull/143954) - Preserve model identities through catalog refresh [#143967](https://github.com/openclaw/openclaw/pull/143967) - Preserve saved model choices when reading sessions [#143975](https://github.com/openclaw/openclaw/pull/143975) -- Preserve selected models and matching image limits [#143994](https://github.com/openclaw/openclaw/pull/143994). Thanks @elikampf. +- Preserve selected models and matching image limits [#143994](https://github.com/openclaw/openclaw/pull/143994). Thanks [@elikampf](https://github.com/elikampf). - Resolve configured aliases once [#143999](https://github.com/openclaw/openclaw/pull/143999) - Use the selected model context limit [#144009](https://github.com/openclaw/openclaw/pull/144009) - Use selected-model tool capabilities [#144010](https://github.com/openclaw/openclaw/pull/144010) @@ -2481,22 +2481,22 @@ Editing backup models now preserves an inherited primary model, and removing eve **Improvements** -- Search long model menus [#141894](https://github.com/openclaw/openclaw/pull/141894). Thanks @obviyus. -- Match chat model choices to the saved or previewed account [#142165](https://github.com/openclaw/openclaw/pull/142165). Thanks @obviyus. +- Search long model menus [#141894](https://github.com/openclaw/openclaw/pull/141894). Thanks [@obviyus](https://github.com/obviyus). +- Match chat model choices to the saved or previewed account [#142165](https://github.com/openclaw/openclaw/pull/142165). Thanks [@obviyus](https://github.com/obviyus). - Translate global model settings guidance [#143449](https://github.com/openclaw/openclaw/pull/143449) **Bug fixes** -- Discard unconfirmed fallback-model searches [#141953](https://github.com/openclaw/openclaw/pull/141953). Thanks @shakkernerd. -- Preserve model inheritance when editing fallbacks [#141967](https://github.com/openclaw/openclaw/pull/141967). Thanks @shakkernerd, @najef1979-code. -- Preserve case-sensitive fallback references [#141997](https://github.com/openclaw/openclaw/pull/141997). Thanks @shakkernerd. -- Keep unavailable saved models visible but unselectable [#142048](https://github.com/openclaw/openclaw/pull/142048). Thanks @obviyus. -- Load more default-model choices when pickers open [#142105](https://github.com/openclaw/openclaw/pull/142105). Thanks @xiaoguomeiyitian, @obviyus, @dh-js. -- Restore model discovery in settings pickers [#142346](https://github.com/openclaw/openclaw/pull/142346). Thanks @vyctorbrzezowski. -- Show failed model-list refreshes in the Control UI [#142372](https://github.com/openclaw/openclaw/pull/142372). Thanks @obviyus. -- Avoid repeated model discovery when reopening Settings pickers [#142384](https://github.com/openclaw/openclaw/pull/142384). Thanks @vyctorbrzezowski. +- Discard unconfirmed fallback-model searches [#141953](https://github.com/openclaw/openclaw/pull/141953). Thanks [@shakkernerd](https://github.com/shakkernerd). +- Preserve model inheritance when editing fallbacks [#141967](https://github.com/openclaw/openclaw/pull/141967). Thanks [@shakkernerd](https://github.com/shakkernerd), [@najef1979-code](https://github.com/najef1979-code). +- Preserve case-sensitive fallback references [#141997](https://github.com/openclaw/openclaw/pull/141997). Thanks [@shakkernerd](https://github.com/shakkernerd). +- Keep unavailable saved models visible but unselectable [#142048](https://github.com/openclaw/openclaw/pull/142048). Thanks [@obviyus](https://github.com/obviyus). +- Load more default-model choices when pickers open [#142105](https://github.com/openclaw/openclaw/pull/142105). Thanks [@xiaoguomeiyitian](https://github.com/xiaoguomeiyitian), [@obviyus](https://github.com/obviyus), [@dh-js](https://github.com/dh-js). +- Restore model discovery in settings pickers [#142346](https://github.com/openclaw/openclaw/pull/142346). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Show failed model-list refreshes in the Control UI [#142372](https://github.com/openclaw/openclaw/pull/142372). Thanks [@obviyus](https://github.com/obviyus). +- Avoid repeated model discovery when reopening Settings pickers [#142384](https://github.com/openclaw/openclaw/pull/142384). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Reduce model-picker lag with large catalogs [#142465](https://github.com/openclaw/openclaw/pull/142465) -- Clarify global model defaults and agent settings [#143424](https://github.com/openclaw/openclaw/pull/143424). Thanks @obviyus, @schjonhaug. +- Clarify global model defaults and agent settings [#143424](https://github.com/openclaw/openclaw/pull/143424). Thanks [@obviyus](https://github.com/obviyus), [@schjonhaug](https://github.com/schjonhaug). @@ -2515,12 +2515,12 @@ The Thinking menu now follows the effort levels offered by the selected model, s **Bug fixes** -- Hide thinking choices the selected model does not support [#141696](https://github.com/openclaw/openclaw/pull/141696). Thanks @obviyus. -- Disable Fast when it cannot affect the selected request [#141852](https://github.com/openclaw/openclaw/pull/141852). Thanks @obviyus. -- Use published model thinking choices across the UI [#142646](https://github.com/openclaw/openclaw/pull/142646). Thanks @obviyus. -- Disable Fast choices that cannot change the request [#142682](https://github.com/openclaw/openclaw/pull/142682). Thanks @obviyus. -- Keep thinking choices aligned with the model [#142790](https://github.com/openclaw/openclaw/pull/142790). Thanks @obviyus. -- Preserve explicit thinking Off with empty choices [#142822](https://github.com/openclaw/openclaw/pull/142822). Thanks @obviyus. +- Hide thinking choices the selected model does not support [#141696](https://github.com/openclaw/openclaw/pull/141696). Thanks [@obviyus](https://github.com/obviyus). +- Disable Fast when it cannot affect the selected request [#141852](https://github.com/openclaw/openclaw/pull/141852). Thanks [@obviyus](https://github.com/obviyus). +- Use published model thinking choices across the UI [#142646](https://github.com/openclaw/openclaw/pull/142646). Thanks [@obviyus](https://github.com/obviyus). +- Disable Fast choices that cannot change the request [#142682](https://github.com/openclaw/openclaw/pull/142682). Thanks [@obviyus](https://github.com/obviyus). +- Keep thinking choices aligned with the model [#142790](https://github.com/openclaw/openclaw/pull/142790). Thanks [@obviyus](https://github.com/obviyus). +- Preserve explicit thinking Off with empty choices [#142822](https://github.com/openclaw/openclaw/pull/142822). Thanks [@obviyus](https://github.com/obviyus). @@ -2539,21 +2539,21 @@ People using custom AI servers keep the connection settings they entered when mo **Improvements** -- Keep generated model lists out of ordinary setup for Cloudflare AI Gateway, Featherless, Hugging Face, LongCat, Meta, Mistral, NVIDIA, Synthetic, Together, Xiaomi pay-as-you-go, and Z.AI [#142202](https://github.com/openclaw/openclaw/pull/142202). Thanks @obviyus. +- Keep generated model lists out of ordinary setup for Cloudflare AI Gateway, Featherless, Hugging Face, LongCat, Meta, Mistral, NVIDIA, Synthetic, Together, Xiaomi pay-as-you-go, and Z.AI [#142202](https://github.com/openclaw/openclaw/pull/142202). Thanks [@obviyus](https://github.com/obviyus). **Bug fixes** -- Honor session-affinity settings for managed OpenAI and Azure Responses proxies [#141107](https://github.com/openclaw/openclaw/pull/141107); contextual [#140918](https://github.com/openclaw/openclaw/issues/140918). Thanks @louisfy, @obviyus, @alexph-dev. -- Preserve manual models during generated catalog refresh [#142302](https://github.com/openclaw/openclaw/pull/142302). Thanks @obviyus. -- Preserve saved endpoints in configured model lists [#143643](https://github.com/openclaw/openclaw/pull/143643). Thanks @obviyus. -- Preserve authored SDK routes and require current authentication instead of generated-catalog credentials [#143664](https://github.com/openclaw/openclaw/pull/143664). Thanks @obviyus. +- Honor session-affinity settings for managed OpenAI and Azure Responses proxies [#141107](https://github.com/openclaw/openclaw/pull/141107); contextual [#140918](https://github.com/openclaw/openclaw/issues/140918). Thanks [@louisfy](https://github.com/louisfy), [@obviyus](https://github.com/obviyus), [@alexph-dev](https://github.com/alexph-dev). +- Preserve manual models during generated catalog refresh [#142302](https://github.com/openclaw/openclaw/pull/142302). Thanks [@obviyus](https://github.com/obviyus). +- Preserve saved endpoints in configured model lists [#143643](https://github.com/openclaw/openclaw/pull/143643). Thanks [@obviyus](https://github.com/obviyus). +- Preserve authored SDK routes and require current authentication instead of generated-catalog credentials [#143664](https://github.com/openclaw/openclaw/pull/143664). Thanks [@obviyus](https://github.com/obviyus). - Honor exact configured model settings before aliases [#143822](https://github.com/openclaw/openclaw/pull/143822) - Honor merged provider runtime settings [#143848](https://github.com/openclaw/openclaw/pull/143848) -- Quiet intentional provider tuning warnings [#92288](https://github.com/openclaw/openclaw/pull/92288). Thanks @ai-hpc, @obviyus, @kingkong9817. +- Quiet intentional provider tuning warnings [#92288](https://github.com/openclaw/openclaw/pull/92288). Thanks [@ai-hpc](https://github.com/ai-hpc), [@obviyus](https://github.com/obviyus), [@kingkong9817](https://github.com/kingkong9817). **Limits and compatibility** -- Require explicit model lists for custom provider endpoints [#142158](https://github.com/openclaw/openclaw/pull/142158). Thanks @obviyus. +- Require explicit model lists for custom provider endpoints [#142158](https://github.com/openclaw/openclaw/pull/142158). Thanks [@obviyus](https://github.com/obviyus). @@ -2574,16 +2574,16 @@ If sign-in still needs attention, OpenClaw better distinguishes saved credential **Improvements** -- Reuse supported Codex credentials during provider login [#142933](https://github.com/openclaw/openclaw/pull/142933). Thanks @obviyus. +- Reuse supported Codex credentials during provider login [#142933](https://github.com/openclaw/openclaw/pull/142933). Thanks [@obviyus](https://github.com/obviyus). **Bug fixes** -- Explain saved credentials and failed Gateway refresh separately [#131968](https://github.com/openclaw/openclaw/pull/131968); contextual [#131944](https://github.com/openclaw/openclaw/issues/131944). Thanks @vyctorbrzezowski, @obviyus. -- Coordinate shared OAuth refresh without reusing consumed tokens [#141477](https://github.com/openclaw/openclaw/pull/141477). Thanks @vincentkoc, @kopl-blip, @100yenadmin. -- Recognize scoped native Codex login during model discovery [#141759](https://github.com/openclaw/openclaw/pull/141759). Thanks @DonnieFi, @obviyus. -- Reuse completed Codex sign-in refreshes [#142628](https://github.com/openclaw/openclaw/pull/142628). Thanks @vincentkoc, @kopl-blip, @zhuyankarl, @100yenadmin. -- Keep OpenAI, xAI, and Copilot device sign-in links clickable in Slack [#142873](https://github.com/openclaw/openclaw/pull/142873). Thanks @obviyus. -- Keep unrelated providers available during credential migration [#143310](https://github.com/openclaw/openclaw/pull/143310). Thanks @tskerpnext. +- Explain saved credentials and failed Gateway refresh separately [#131968](https://github.com/openclaw/openclaw/pull/131968); contextual [#131944](https://github.com/openclaw/openclaw/issues/131944). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski), [@obviyus](https://github.com/obviyus). +- Coordinate shared OAuth refresh without reusing consumed tokens [#141477](https://github.com/openclaw/openclaw/pull/141477). Thanks [@vincentkoc](https://github.com/vincentkoc), [@kopl-blip](https://github.com/kopl-blip), [@100yenadmin](https://github.com/100yenadmin). +- Recognize scoped native Codex login during model discovery [#141759](https://github.com/openclaw/openclaw/pull/141759). Thanks [@DonnieFi](https://github.com/DonnieFi), [@obviyus](https://github.com/obviyus). +- Reuse completed Codex sign-in refreshes [#142628](https://github.com/openclaw/openclaw/pull/142628). Thanks [@vincentkoc](https://github.com/vincentkoc), [@kopl-blip](https://github.com/kopl-blip), [@zhuyankarl](https://github.com/zhuyankarl), [@100yenadmin](https://github.com/100yenadmin). +- Keep OpenAI, xAI, and Copilot device sign-in links clickable in Slack [#142873](https://github.com/openclaw/openclaw/pull/142873). Thanks [@obviyus](https://github.com/obviyus). +- Keep unrelated providers available during credential migration [#143310](https://github.com/openclaw/openclaw/pull/143310). Thanks [@tskerpnext](https://github.com/tskerpnext). - Keep model setup resources through background work [#143542](https://github.com/openclaw/openclaw/pull/143542) - Preserve case in model authentication evidence [#143780](https://github.com/openclaw/openclaw/pull/143780) @@ -2607,16 +2607,16 @@ Errors also better distinguish connection problems, rejected sign-ins, and reque **Bug fixes** - Refresh backup model aliases after plugin reloads [0e1f60ec](https://github.com/openclaw/openclaw/commit/0e1f60ec03b06127ef2a7b81413f817985113ac1); contextual [#133633](https://github.com/openclaw/openclaw/pull/133633) -- Preserve final ChatGPT events without a closing blank line [#120902](https://github.com/openclaw/openclaw/pull/120902). Thanks @zenglingbiao, @obviyus. -- Stop retrying wrapped parameter rejections [#140991](https://github.com/openclaw/openclaw/pull/140991); contextual [#140987](https://github.com/openclaw/openclaw/issues/140987). Thanks @ooiuuii, @obviyus. -- Repair string encoding in completed Anthropic tool arguments [#141323](https://github.com/openclaw/openclaw/pull/141323); contextual [#135111](https://github.com/openclaw/openclaw/issues/135111). Thanks @lraesly, @1Vision365-PeterTijsma, @infocus13, @peterkaynie, @jalehman, @MaxVidkrytaklishnya, @chrislro, @narbs. -- Refresh the terminal footer when the model falls back [#141436](https://github.com/openclaw/openclaw/pull/141436). Thanks @ooiuuii. -- Explain why a model fallback attempt stops [#141658](https://github.com/openclaw/openclaw/pull/141658). Thanks @von8794, @obviyus. -- Show specific provider network errors after redaction [#141665](https://github.com/openclaw/openclaw/pull/141665). Thanks @SunnyShu0925, @obviyus, @DonnieFi. -- Correct fallback warnings and preserve intentional silent replies [#141725](https://github.com/openclaw/openclaw/pull/141725). Thanks @leilei3167, @obviyus, @markthebest12. -- Keep unfinished tool-call explanations in chat history [#141870](https://github.com/openclaw/openclaw/pull/141870). Thanks @Takhoffman. -- Retry replay-safe malformed tool-call failures [#142176](https://github.com/openclaw/openclaw/pull/142176). Thanks @lraesly, @obviyus, @1Vision365-PeterTijsma, @peterkaynie, @infocus13, @MaxVidkrytaklishnya, @chrislro, @narbs. -- Explain fallback stops after terminal timeouts [#142278](https://github.com/openclaw/openclaw/pull/142278). Thanks @MoerAI, @obviyus, @von8794. +- Preserve final ChatGPT events without a closing blank line [#120902](https://github.com/openclaw/openclaw/pull/120902). Thanks [@zenglingbiao](https://github.com/zenglingbiao), [@obviyus](https://github.com/obviyus). +- Stop retrying wrapped parameter rejections [#140991](https://github.com/openclaw/openclaw/pull/140991); contextual [#140987](https://github.com/openclaw/openclaw/issues/140987). Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Repair string encoding in completed Anthropic tool arguments [#141323](https://github.com/openclaw/openclaw/pull/141323); contextual [#135111](https://github.com/openclaw/openclaw/issues/135111). Thanks [@lraesly](https://github.com/lraesly), [@1Vision365-PeterTijsma](https://github.com/1Vision365-PeterTijsma), [@infocus13](https://github.com/infocus13), [@peterkaynie](https://github.com/peterkaynie), [@jalehman](https://github.com/jalehman), [@MaxVidkrytaklishnya](https://github.com/MaxVidkrytaklishnya), [@chrislro](https://github.com/chrislro), [@narbs](https://github.com/narbs). +- Refresh the terminal footer when the model falls back [#141436](https://github.com/openclaw/openclaw/pull/141436). Thanks [@ooiuuii](https://github.com/ooiuuii). +- Explain why a model fallback attempt stops [#141658](https://github.com/openclaw/openclaw/pull/141658). Thanks [@von8794](https://github.com/von8794), [@obviyus](https://github.com/obviyus). +- Show specific provider network errors after redaction [#141665](https://github.com/openclaw/openclaw/pull/141665). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus), [@DonnieFi](https://github.com/DonnieFi). +- Correct fallback warnings and preserve intentional silent replies [#141725](https://github.com/openclaw/openclaw/pull/141725). Thanks [@leilei3167](https://github.com/leilei3167), [@obviyus](https://github.com/obviyus), [@markthebest12](https://github.com/markthebest12). +- Keep unfinished tool-call explanations in chat history [#141870](https://github.com/openclaw/openclaw/pull/141870). Thanks [@Takhoffman](https://github.com/Takhoffman). +- Retry replay-safe malformed tool-call failures [#142176](https://github.com/openclaw/openclaw/pull/142176). Thanks [@lraesly](https://github.com/lraesly), [@obviyus](https://github.com/obviyus), [@1Vision365-PeterTijsma](https://github.com/1Vision365-PeterTijsma), [@peterkaynie](https://github.com/peterkaynie), [@infocus13](https://github.com/infocus13), [@MaxVidkrytaklishnya](https://github.com/MaxVidkrytaklishnya), [@chrislro](https://github.com/chrislro), [@narbs](https://github.com/narbs). +- Explain fallback stops after terminal timeouts [#142278](https://github.com/openclaw/openclaw/pull/142278). Thanks [@MoerAI](https://github.com/MoerAI), [@obviyus](https://github.com/obviyus), [@von8794](https://github.com/von8794). - Explain provider authentication and model errors in history and status [#143243](https://github.com/openclaw/openclaw/pull/143243) @@ -2636,8 +2636,8 @@ Anthropic conversations that use tools can reuse more of the instructions and co **Bug fixes** -- Preserve reusable local-model prompt prefixes [#137371](https://github.com/openclaw/openclaw/pull/137371); contextual [#137257](https://github.com/openclaw/openclaw/issues/137257). Thanks @gwiltschek, @obviyus. -- Preserve Anthropic cache reuse during tool continuations and omit empty thinking-disabled beta headers [#140621](https://github.com/openclaw/openclaw/pull/140621); contextual [#140607](https://github.com/openclaw/openclaw/issues/140607). Thanks @LightningWareLLC, @he-yufeng, @vincentkoc. +- Preserve reusable local-model prompt prefixes [#137371](https://github.com/openclaw/openclaw/pull/137371); contextual [#137257](https://github.com/openclaw/openclaw/issues/137257). Thanks [@gwiltschek](https://github.com/gwiltschek), [@obviyus](https://github.com/obviyus). +- Preserve Anthropic cache reuse during tool continuations and omit empty thinking-disabled beta headers [#140621](https://github.com/openclaw/openclaw/pull/140621); contextual [#140607](https://github.com/openclaw/openclaw/issues/140607). Thanks [@LightningWareLLC](https://github.com/LightningWareLLC), [@he-yufeng](https://github.com/he-yufeng), [@vincentkoc](https://github.com/vincentkoc). @@ -2658,16 +2658,16 @@ Ordinary Codex chats can also recover a missing final answer after finishing wor **Bug fixes** -- Restore workspace instructions in managed Codex conversations [#142276](https://github.com/openclaw/openclaw/pull/142276). Thanks @vincentkoc. -- Accept Codex Responses Lite requests without separate instructions [#142823](https://github.com/openclaw/openclaw/pull/142823). Thanks @jalehman. -- Honor configured Codex workspace instruction limits [#142932](https://github.com/openclaw/openclaw/pull/142932). Thanks @ashawwal, @obviyus. -- Recover final answers after tool work in long Codex conversations [#143081](https://github.com/openclaw/openclaw/pull/143081). Thanks @barbarhan, @obviyus. -- Avoid repeated Codex history after final message delivery [#143506](https://github.com/openclaw/openclaw/pull/143506). Thanks @sunlit-deng, @dbarbatti, @obviyus. +- Restore workspace instructions in managed Codex conversations [#142276](https://github.com/openclaw/openclaw/pull/142276). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Accept Codex Responses Lite requests without separate instructions [#142823](https://github.com/openclaw/openclaw/pull/142823). Thanks [@jalehman](https://github.com/jalehman). +- Honor configured Codex workspace instruction limits [#142932](https://github.com/openclaw/openclaw/pull/142932). Thanks [@ashawwal](https://github.com/ashawwal), [@obviyus](https://github.com/obviyus). +- Recover final answers after tool work in long Codex conversations [#143081](https://github.com/openclaw/openclaw/pull/143081). Thanks [@barbarhan](https://github.com/barbarhan), [@obviyus](https://github.com/obviyus). +- Avoid repeated Codex history after final message delivery [#143506](https://github.com/openclaw/openclaw/pull/143506). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@dbarbatti](https://github.com/dbarbatti), [@obviyus](https://github.com/obviyus). **Documentation** -- Split the Codex harness reference by topic [#142803](https://github.com/openclaw/openclaw/pull/142803). Thanks @vincentkoc. -- Split Codex runtime guidance into focused pages [#143458](https://github.com/openclaw/openclaw/pull/143458). Thanks @vincentkoc. +- Split the Codex harness reference by topic [#142803](https://github.com/openclaw/openclaw/pull/142803). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split Codex runtime guidance into focused pages [#143458](https://github.com/openclaw/openclaw/pull/143458). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2690,17 +2690,17 @@ Returning to a Claude conversation keeps its original chat connection and avoids **Bug fixes** -- Preserve Claude session identity when combining duplicate history [#130494](https://github.com/openclaw/openclaw/pull/130494); contextual [#130456](https://github.com/openclaw/openclaw/issues/130456). Thanks @jalehman. -- Complete valid ACP forms with no fields [#133269](https://github.com/openclaw/openclaw/pull/133269). Thanks @xydt-juyaohui, @obviyus. -- Keep ACP startup waits consistent through clock changes [#137303](https://github.com/openclaw/openclaw/pull/137303). Thanks @qingminglong, @obviyus. -- Forward effective Fast settings to CLI plugins and preserve the selected account [#138667](https://github.com/openclaw/openclaw/pull/138667). Thanks @Szqub, @obviyus. -- Keep Codex operation timeouts stable through clock corrections [#141071](https://github.com/openclaw/openclaw/pull/141071); contextual [#141000](https://github.com/openclaw/openclaw/issues/141000). Thanks @ooiuuii, @obviyus. -- Restore pasted text in model-locked Codex sessions [#142021](https://github.com/openclaw/openclaw/pull/142021). Thanks @RomneyDa. -- Avoid duplicate user turns after Claude resume [#143960](https://github.com/openclaw/openclaw/pull/143960). Thanks @Marvinthebored, @Peetiegonzalez, @obviyus. +- Preserve Claude session identity when combining duplicate history [#130494](https://github.com/openclaw/openclaw/pull/130494); contextual [#130456](https://github.com/openclaw/openclaw/issues/130456). Thanks [@jalehman](https://github.com/jalehman). +- Complete valid ACP forms with no fields [#133269](https://github.com/openclaw/openclaw/pull/133269). Thanks [@xydt-juyaohui](https://github.com/xydt-juyaohui), [@obviyus](https://github.com/obviyus). +- Keep ACP startup waits consistent through clock changes [#137303](https://github.com/openclaw/openclaw/pull/137303). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). +- Forward effective Fast settings to CLI plugins and preserve the selected account [#138667](https://github.com/openclaw/openclaw/pull/138667). Thanks [@Szqub](https://github.com/Szqub), [@obviyus](https://github.com/obviyus). +- Keep Codex operation timeouts stable through clock corrections [#141071](https://github.com/openclaw/openclaw/pull/141071); contextual [#141000](https://github.com/openclaw/openclaw/issues/141000). Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Restore pasted text in model-locked Codex sessions [#142021](https://github.com/openclaw/openclaw/pull/142021). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Avoid duplicate user turns after Claude resume [#143960](https://github.com/openclaw/openclaw/pull/143960). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@Peetiegonzalez](https://github.com/Peetiegonzalez), [@obviyus](https://github.com/obviyus). **Documentation** -- Split ACP guidance by task [#142958](https://github.com/openclaw/openclaw/pull/142958). Thanks @vincentkoc. +- Split ACP guidance by task [#142958](https://github.com/openclaw/openclaw/pull/142958). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2719,12 +2719,12 @@ If you run models on your own server, OpenClaw now uses the conversation size re **Bug fixes** -- Use advertised context limits for self-hosted models [#141113](https://github.com/openclaw/openclaw/pull/141113). Thanks @vincentkoc. +- Use advertised context limits for self-hosted models [#141113](https://github.com/openclaw/openclaw/pull/141113). Thanks [@vincentkoc](https://github.com/vincentkoc). - Avoid unnecessary loading for first-use vLLM model information [#142125](https://github.com/openclaw/openclaw/pull/142125) **Documentation** -- Organize Ollama documentation into focused guides [#143004](https://github.com/openclaw/openclaw/pull/143004). Thanks @vincentkoc. +- Organize Ollama documentation into focused guides [#143004](https://github.com/openclaw/openclaw/pull/143004). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2743,7 +2743,7 @@ Tencent users can choose Hy4 preview through TokenHub or TokenPlan, and new setu **Improvements** -- Add Hy4 preview to Tencent TokenHub and TokenPlan [#131598](https://github.com/openclaw/openclaw/pull/131598). Thanks @chl-0537, @hxy91819. +- Add Hy4 preview to Tencent TokenHub and TokenPlan [#131598](https://github.com/openclaw/openclaw/pull/131598). Thanks [@chl-0537](https://github.com/chl-0537), [@hxy91819](https://github.com/hxy91819). @@ -2762,7 +2762,7 @@ New xAI setups use Grok 4.6, as do xAI web search, X search, and code-execution **Limits and compatibility** -- Use Grok 4.6 defaults and repair retired subscription auto selections [#142136](https://github.com/openclaw/openclaw/pull/142136). Thanks @obviyus. +- Use Grok 4.6 defaults and repair retired subscription auto selections [#142136](https://github.com/openclaw/openclaw/pull/142136). Thanks [@obviyus](https://github.com/obviyus). @@ -2781,9 +2781,9 @@ OpenCode Go and Zen requests made outside an ongoing conversation no longer fail **Bug fixes** -- Supply routing identity for sessionless OpenCode Go calls [#143558](https://github.com/openclaw/openclaw/pull/143558). Thanks @RomneyDa. -- Supply routing identity for standalone OpenCode completions [#143659](https://github.com/openclaw/openclaw/pull/143659). Thanks @HAPPYFAPTAIN, @obviyus, @GDXbsv, @spectrl. -- Preserve routing with explicit OpenCode sessions [#143890](https://github.com/openclaw/openclaw/pull/143890). Thanks @vincentkoc. +- Supply routing identity for sessionless OpenCode Go calls [#143558](https://github.com/openclaw/openclaw/pull/143558). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Supply routing identity for standalone OpenCode completions [#143659](https://github.com/openclaw/openclaw/pull/143659). Thanks [@HAPPYFAPTAIN](https://github.com/HAPPYFAPTAIN), [@obviyus](https://github.com/obviyus), [@GDXbsv](https://github.com/GDXbsv), [@spectrl](https://github.com/spectrl). +- Preserve routing with explicit OpenCode sessions [#143890](https://github.com/openclaw/openclaw/pull/143890). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2802,7 +2802,7 @@ If you use Arcee through OpenRouter, OpenClaw now uses your matching saved OpenR **Bug fixes** -- Use the selected Arcee account and preserve model settings [#142898](https://github.com/openclaw/openclaw/pull/142898). Thanks @obviyus. +- Use the selected Arcee account and preserve model settings [#142898](https://github.com/openclaw/openclaw/pull/142898). Thanks [@obviyus](https://github.com/obviyus). @@ -2821,7 +2821,7 @@ When Kimi explicitly reports that you have used up a weekly allowance, OpenClaw **Bug fixes** -- Treat explicit Kimi quota failures as rate limits [#142656](https://github.com/openclaw/openclaw/pull/142656). Thanks @RileyJJY, @obviyus, @rico007, @shaozhengkun123. +- Treat explicit Kimi quota failures as rate limits [#142656](https://github.com/openclaw/openclaw/pull/142656). Thanks [@RileyJJY](https://github.com/RileyJJY), [@obviyus](https://github.com/obviyus), [@rico007](https://github.com/rico007), [@shaozhengkun123](https://github.com/shaozhengkun123). @@ -2846,8 +2846,8 @@ _GPT Image 2.5 Flare and Sunburst generation or editing. Conceptual illustration **Improvements** -- Add GPT Image 2.5 Flare and Sunburst through OpenAI [#143068](https://github.com/openclaw/openclaw/pull/143068). Thanks @vincentkoc. -- Add GPT Image 2.5 through fal with 16-reference editing [#143069](https://github.com/openclaw/openclaw/pull/143069). Thanks @vincentkoc. +- Add GPT Image 2.5 Flare and Sunburst through OpenAI [#143068](https://github.com/openclaw/openclaw/pull/143068). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add GPT Image 2.5 through fal with 16-reference editing [#143069](https://github.com/openclaw/openclaw/pull/143069). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2866,7 +2866,7 @@ You can now choose [Deepgram Flux](https://docs.openclaw.ai/providers/deepgram) **Improvements** -- Transcribe voice notes with Deepgram Flux [#141836](https://github.com/openclaw/openclaw/pull/141836). Thanks @obviyus, @safzanpirani. +- Transcribe voice notes with Deepgram Flux [#141836](https://github.com/openclaw/openclaw/pull/141836). Thanks [@obviyus](https://github.com/obviyus), [@safzanpirani](https://github.com/safzanpirani). @@ -2885,11 +2885,11 @@ Gemini web search now uses Gemini 3.6 Flash unless you chose a specific search m **Improvements** -- Use Gemini 3.6 Flash for unconfigured web searches [#111964](https://github.com/openclaw/openclaw/pull/111964); contextual [#96974](https://github.com/openclaw/openclaw/issues/96974). Thanks @dillona, @vincentkoc, @anguslogan01. +- Use Gemini 3.6 Flash for unconfigured web searches [#111964](https://github.com/openclaw/openclaw/pull/111964); contextual [#96974](https://github.com/openclaw/openclaw/issues/96974). Thanks [@dillona](https://github.com/dillona), [@vincentkoc](https://github.com/vincentkoc), [@anguslogan01](https://github.com/anguslogan01). **Documentation** -- Document search plugin installation and restarts, local Ollama model routing, browser ports, optional jq, /tell, patch syntax, approval inspection, node selection, reactions, and screen availability [#143856](https://github.com/openclaw/openclaw/pull/143856). Thanks @vincentkoc. +- Document search plugin installation and restarts, local Ollama model routing, browser ports, optional jq, /tell, patch syntax, approval inspection, node selection, reactions, and screen availability [#143856](https://github.com/openclaw/openclaw/pull/143856). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2908,10 +2908,10 @@ Cost reports now warn when totals may still be incomplete, so a temporary zero i **Bug fixes** -- Count reported cache writes separately from ordinary input [#141377](https://github.com/openclaw/openclaw/pull/141377); contextual [#141374](https://github.com/openclaw/openclaw/issues/141374). Thanks @ooiuuii, @obviyus. -- Avoid delayed ClawRouter usage errors during diagnostic capture [#141818](https://github.com/openclaw/openclaw/pull/141818). Thanks @Alix-007, @obviyus. +- Count reported cache writes separately from ordinary input [#141377](https://github.com/openclaw/openclaw/pull/141377); contextual [#141374](https://github.com/openclaw/openclaw/issues/141374). Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Avoid delayed ClawRouter usage errors during diagnostic capture [#141818](https://github.com/openclaw/openclaw/pull/141818). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). - Label incomplete usage-cost totals [#141917](https://github.com/openclaw/openclaw/pull/141917) -- Fill missing estimates for OpenRouter routing shortcuts [#142138](https://github.com/openclaw/openclaw/pull/142138). Thanks @fabiolr, @obviyus. +- Fill missing estimates for OpenRouter routing shortcuts [#142138](https://github.com/openclaw/openclaw/pull/142138). Thanks [@fabiolr](https://github.com/fabiolr), [@obviyus](https://github.com/obviyus). @@ -2932,7 +2932,7 @@ If you run `openclaw models status --probe` directly from the terminal, stop the **Bug fixes** -- Avoid OpenRouter capture waits after music completion or usage errors [#141754](https://github.com/openclaw/openclaw/pull/141754). Thanks @Alix-007, @obviyus. +- Avoid OpenRouter capture waits after music completion or usage errors [#141754](https://github.com/openclaw/openclaw/pull/141754). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). - Retain Anthropic resources through cancellation cleanup [#143377](https://github.com/openclaw/openclaw/pull/143377) - Retain model probe resources through cleanup [#143658](https://github.com/openclaw/openclaw/pull/143658) - Keep prepared model limits and credentials when skipping discovery [#143695](https://github.com/openclaw/openclaw/pull/143695) @@ -2954,8 +2954,8 @@ Setting up an account or checking a provider's options is easier in the reorgani **Documentation** -- Organize OpenAI guidance into focused task pages [#141224](https://github.com/openclaw/openclaw/pull/141224). Thanks @vincentkoc. -- Organize model-provider documentation by setup task [#143058](https://github.com/openclaw/openclaw/pull/143058). Thanks @vincentkoc. +- Organize OpenAI guidance into focused task pages [#141224](https://github.com/openclaw/openclaw/pull/141224). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize model-provider documentation by setup task [#143058](https://github.com/openclaw/openclaw/pull/143058). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2982,10 +2982,10 @@ Scheduled commands run by OpenClaw can work without turning off secret protectio **Bug fixes** -- Keep scheduled jobs running through runtime refreshes [84fd689](https://github.com/openclaw/openclaw/commit/84fd689763c410dc32d43302c589f09d2f22d462). Thanks @ekinnee, @84dnnvbdvp-debug. -- Preserve usable cron models and fallback failure details [855c9de](https://github.com/openclaw/openclaw/commit/855c9de4a2a7c8015d4fa78b28d00f330c0649ba). Thanks @Marvinthebored, @obviyus. -- Restore scheduled commands with secret egress enabled [#142074](https://github.com/openclaw/openclaw/pull/142074). Thanks @tilor, @obviyus. -- Accept Codex catalog tool names in automation allowlists [#142382](https://github.com/openclaw/openclaw/pull/142382). Thanks @sercada, @obviyus. +- Keep scheduled jobs running through runtime refreshes [84fd689](https://github.com/openclaw/openclaw/commit/84fd689763c410dc32d43302c589f09d2f22d462). Thanks [@ekinnee](https://github.com/ekinnee), [@84dnnvbdvp-debug](https://github.com/84dnnvbdvp-debug). +- Preserve usable cron models and fallback failure details [855c9de](https://github.com/openclaw/openclaw/commit/855c9de4a2a7c8015d4fa78b28d00f330c0649ba). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@obviyus](https://github.com/obviyus). +- Restore scheduled commands with secret egress enabled [#142074](https://github.com/openclaw/openclaw/pull/142074). Thanks [@tilor](https://github.com/tilor), [@obviyus](https://github.com/obviyus). +- Accept Codex catalog tool names in automation allowlists [#142382](https://github.com/openclaw/openclaw/pull/142382). Thanks [@sercada](https://github.com/sercada), [@obviyus](https://github.com/obviyus). @@ -3004,8 +3004,8 @@ A clash between scheduled tasks could make OpenClaw keep retrying until it stopp **Bug fixes** -- Prevent scheduled agents from entering an unresumable yield [#135318](https://github.com/openclaw/openclaw/pull/135318). Thanks @LiuwqGit, @obviyus, @youens, @postoso, @BottaniCals. -- Stop stalled scheduled-job reservation loops and clean up resources after failed database opens [#142741](https://github.com/openclaw/openclaw/pull/142741). Thanks @galiniliev. +- Prevent scheduled agents from entering an unresumable yield [#135318](https://github.com/openclaw/openclaw/pull/135318). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@youens](https://github.com/youens), [@postoso](https://github.com/postoso), [@BottaniCals](https://github.com/BottaniCals). +- Stop stalled scheduled-job reservation loops and clean up resources after failed database opens [#142741](https://github.com/openclaw/openclaw/pull/142741). Thanks [@galiniliev](https://github.com/galiniliev). @@ -3026,7 +3026,7 @@ If an automation result is waiting while your Claw answers you, canceling that r **Bug fixes** -- Keep quiet heartbeats silent and report completed sends [#140115](https://github.com/openclaw/openclaw/pull/140115). Thanks @ruel225, @obviyus, @laurencebrown. +- Keep quiet heartbeats silent and report completed sends [#140115](https://github.com/openclaw/openclaw/pull/140115). Thanks [@ruel225](https://github.com/ruel225), [@obviyus](https://github.com/obviyus), [@laurencebrown](https://github.com/laurencebrown). - Release session updates after cancellation [#143832](https://github.com/openclaw/openclaw/pull/143832). - Keep background completions and delayed skill experience reviews working after replies, with clearer event origins in history [#143866](https://github.com/openclaw/openclaw/pull/143866). @@ -3049,13 +3049,13 @@ If you manage automations from the command line, missing jobs and invalid option **Improvements** -- Edit automations directly from an agent's settings [#139782](https://github.com/openclaw/openclaw/pull/139782). Thanks @jjjhenriksen, @vyctorbrzezowski. +- Edit automations directly from an agent's settings [#139782](https://github.com/openclaw/openclaw/pull/139782). Thanks [@jjjhenriksen](https://github.com/jjjhenriksen), [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Explain time spent loading automation lists when diagnostics are enabled [#141805](https://github.com/openclaw/openclaw/pull/141805). **Bug fixes** - Show saved friendly automation names [#142076](https://github.com/openclaw/openclaw/pull/142076). -- Show direct automation error guidance in JSON mode [#142113](https://github.com/openclaw/openclaw/pull/142113). Thanks @DasX, @obviyus. +- Show direct automation error guidance in JSON mode [#142113](https://github.com/openclaw/openclaw/pull/142113). Thanks [@DasX](https://github.com/DasX), [@obviyus](https://github.com/obviyus). - Explain how to restore automatic scheduling by enabling cron, clearing `OPENCLAW_SKIP_CRON=1` from the Gateway's launch environment, and restarting [#142185](https://github.com/openclaw/openclaw/pull/142185). - Reject blank automation job IDs with clear guidance [#142264](https://github.com/openclaw/openclaw/pull/142264). - Sort and group scheduled sessions by displayed kind [#142554](https://github.com/openclaw/openclaw/pull/142554). @@ -3084,9 +3084,9 @@ Guidance is easier to find when you want to [start a task at a set time or when **Documentation** -- Document all automation schedule types and option constraints [#135964](https://github.com/openclaw/openclaw/pull/135964). Thanks @qingminglong, @obviyus. -- Split hooks guidance into focused reference pages [#143041](https://github.com/openclaw/openclaw/pull/143041). Thanks @vincentkoc. -- Clarify that there is no native WebSocket schedule source and legacy `cron.failureDestination` settings are not read directly [#144039](https://github.com/openclaw/openclaw/pull/144039). Thanks @vincentkoc. +- Document all automation schedule types and option constraints [#135964](https://github.com/openclaw/openclaw/pull/135964). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). +- Split hooks guidance into focused reference pages [#143041](https://github.com/openclaw/openclaw/pull/143041). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify that there is no native WebSocket schedule source and legacy `cron.failureDestination` settings are not read directly [#144039](https://github.com/openclaw/openclaw/pull/144039). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3112,13 +3112,13 @@ The [Browser panel](https://docs.openclaw.ai/tools/browser) can show what your C **Bug fixes** -- Keep browser focus during automatic panel updates [5c70585](https://github.com/openclaw/openclaw/commit/5c70585f93cf5ab22893266b22cd767e1eb9d056). Thanks @scotthuang. -- Recover the Browser panel after stream disconnects [#141576](https://github.com/openclaw/openclaw/pull/141576). Thanks @safzanpirani, @obviyus. An open connection that never sends its first frame remains outside this repair. -- Hide preview cards for blank and internal browser pages [#142213](https://github.com/openclaw/openclaw/pull/142213). Thanks @vyctorbrzezowski. +- Keep browser focus during automatic panel updates [5c70585](https://github.com/openclaw/openclaw/commit/5c70585f93cf5ab22893266b22cd767e1eb9d056). Thanks [@scotthuang](https://github.com/scotthuang). +- Recover the Browser panel after stream disconnects [#141576](https://github.com/openclaw/openclaw/pull/141576). Thanks [@safzanpirani](https://github.com/safzanpirani), [@obviyus](https://github.com/obviyus). An open connection that never sends its first frame remains outside this repair. +- Hide preview cards for blank and internal browser pages [#142213](https://github.com/openclaw/openclaw/pull/142213). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). **Documentation** -- Split browser documentation into focused guides [#142984](https://github.com/openclaw/openclaw/pull/142984). Thanks @vincentkoc. +- Split browser documentation into focused guides [#142984](https://github.com/openclaw/openclaw/pull/142984). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3144,7 +3144,7 @@ Cancelling cannot undo changes already made to a page. If you automate browser c **Limits and compatibility** -- Reject invalid Browser CLI mouse-button values [#140976](https://github.com/openclaw/openclaw/pull/140976). Thanks @WOLIKIMCHENG, @DilapidatedDolphin98, @obviyus. Supplied values must be exactly `left`, `right`, or `middle`. +- Reject invalid Browser CLI mouse-button values [#140976](https://github.com/openclaw/openclaw/pull/140976). Thanks [@WOLIKIMCHENG](https://github.com/WOLIKIMCHENG), [@DilapidatedDolphin98](https://github.com/DilapidatedDolphin98), [@obviyus](https://github.com/obviyus). Supplied values must be exactly `left`, `right`, or `middle`. @@ -3164,8 +3164,8 @@ If [Codex Computer Use](https://docs.openclaw.ai/plugins/codex-computer-use) can **Bug fixes** -- Skip the discovery wait when native Codex plugins are disabled [#137485](https://github.com/openclaw/openclaw/pull/137485). Thanks @shojikumaru, @noelillinger, @obviyus. -- Make supported paired-desktop actions available on the first call [#141277](https://github.com/openclaw/openclaw/pull/141277). Thanks @oywino, @obviyus. Existing vision and permission restrictions still apply. +- Skip the discovery wait when native Codex plugins are disabled [#137485](https://github.com/openclaw/openclaw/pull/137485). Thanks [@shojikumaru](https://github.com/shojikumaru), [@noelillinger](https://github.com/noelillinger), [@obviyus](https://github.com/obviyus). +- Make supported paired-desktop actions available on the first call [#141277](https://github.com/openclaw/openclaw/pull/141277). Thanks [@oywino](https://github.com/oywino), [@obviyus](https://github.com/obviyus). Existing vision and permission restrictions still apply. - Fix first-action CUA window discovery [#143736](https://github.com/openclaw/openclaw/pull/143736). - Fix activation results and targeted capture guidance [#143953](https://github.com/openclaw/openclaw/pull/143953). Window input uses the `observationId` returned by `get_window_state` with `includeScreenshot`, rather than a whole-desktop frame reference. @@ -3261,26 +3261,26 @@ You can now search installed and available plugins together, browse by purpose, **Improvements** -- Browse and filter ClawHub plugins in the web UI [#137659](https://github.com/openclaw/openclaw/pull/137659) — Thanks @Patrick-Erichsen. -- Inspect plugin documentation and compatibility in detail pages [#137846](https://github.com/openclaw/openclaw/pull/137846) — Thanks @Patrick-Erichsen. -- Include local plugins and locally backed details in discovery [#137856](https://github.com/openclaw/openclaw/pull/137856) — Thanks @Patrick-Erichsen. -- Unify bundled and ClawHub plugin browsing [#138755](https://github.com/openclaw/openclaw/pull/138755) — Thanks @Patrick-Erichsen. -- Add Gateway-backed ClawHub catalog discovery [#139042](https://github.com/openclaw/openclaw/pull/139042) — Thanks @Patrick-Erichsen. +- Browse and filter ClawHub plugins in the web UI [#137659](https://github.com/openclaw/openclaw/pull/137659) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Inspect plugin documentation and compatibility in detail pages [#137846](https://github.com/openclaw/openclaw/pull/137846) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Include local plugins and locally backed details in discovery [#137856](https://github.com/openclaw/openclaw/pull/137856) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Unify bundled and ClawHub plugin browsing [#138755](https://github.com/openclaw/openclaw/pull/138755) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Add Gateway-backed ClawHub catalog discovery [#139042](https://github.com/openclaw/openclaw/pull/139042) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). - Reuse prepared plugin catalog metadata [#142500](https://github.com/openclaw/openclaw/pull/142500) -- Use package categories in plugin discovery [#142711](https://github.com/openclaw/openclaw/pull/142711) — Thanks @Patrick-Erichsen. -- Group installed plugins by purpose [#142712](https://github.com/openclaw/openclaw/pull/142712) — Thanks @Patrick-Erichsen. -- Unify plugin browsing and add ClawHub chat cards [#142782](https://github.com/openclaw/openclaw/pull/142782) — Thanks @Patrick-Erichsen. -- Load plugin catalog pages automatically [#143731](https://github.com/openclaw/openclaw/pull/143731) — Thanks @Patrick-Erichsen. +- Use package categories in plugin discovery [#142711](https://github.com/openclaw/openclaw/pull/142711) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Group installed plugins by purpose [#142712](https://github.com/openclaw/openclaw/pull/142712) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Unify plugin browsing and add ClawHub chat cards [#142782](https://github.com/openclaw/openclaw/pull/142782) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Load plugin catalog pages automatically [#143731](https://github.com/openclaw/openclaw/pull/143731) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). - Load less unused code for bundled channels [#143846](https://github.com/openclaw/openclaw/pull/143846) **Limits and compatibility** -- Declare ordered plugin categories [#142710](https://github.com/openclaw/openclaw/pull/142710) — Thanks @Patrick-Erichsen. +- Declare ordered plugin categories [#142710](https://github.com/openclaw/openclaw/pull/142710) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** - Match installed plugins to the correct ClawHub registry [#143644](https://github.com/openclaw/openclaw/pull/143644) -- Correct plugin ranking, bundled identities, and skill names [#143730](https://github.com/openclaw/openclaw/pull/143730) — Thanks @Patrick-Erichsen. +- Correct plugin ranking, bundled identities, and skill names [#143730](https://github.com/openclaw/openclaw/pull/143730) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). @@ -3299,15 +3299,15 @@ You can read what a plugin does, check what it needs, and follow installation th **Improvements** -- Browse and search installed plugins in the Plugins workspace [#135839](https://github.com/openclaw/openclaw/pull/135839) — Thanks @Patrick-Erichsen. -- Manage installed plugins on dedicated settings pages [#135840](https://github.com/openclaw/openclaw/pull/135840) — Thanks @Patrick-Erichsen. -- Install and configure plugins from their detail pages [#137886](https://github.com/openclaw/openclaw/pull/137886) — Thanks @Patrick-Erichsen. -- Organize installed-plugin details into tabs [#142713](https://github.com/openclaw/openclaw/pull/142713) — Thanks @Patrick-Erichsen. +- Browse and search installed plugins in the Plugins workspace [#135839](https://github.com/openclaw/openclaw/pull/135839) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Manage installed plugins on dedicated settings pages [#135840](https://github.com/openclaw/openclaw/pull/135840) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Install and configure plugins from their detail pages [#137886](https://github.com/openclaw/openclaw/pull/137886) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Organize installed-plugin details into tabs [#142713](https://github.com/openclaw/openclaw/pull/142713) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Clarify plugin setup states and package icons [#142624](https://github.com/openclaw/openclaw/pull/142624) — Thanks @Patrick-Erichsen, @jalehman. -- Correct recovery commands after plugin capability-consent rejection [#143125](https://github.com/openclaw/openclaw/pull/143125) — Thanks @liuwqgit, @obviyus, @yxloveql. +- Clarify plugin setup states and package icons [#142624](https://github.com/openclaw/openclaw/pull/142624) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen), [@jalehman](https://github.com/jalehman). +- Correct recovery commands after plugin capability-consent rejection [#143125](https://github.com/openclaw/openclaw/pull/143125) — Thanks [@liuwqgit](https://github.com/liuwqgit), [@obviyus](https://github.com/obviyus), [@yxloveql](https://github.com/yxloveql). - Keep plugin selections and installation progress current [#143671](https://github.com/openclaw/openclaw/pull/143671) @@ -3327,24 +3327,24 @@ If you manage plugins from the terminal, [error messages](https://docs.openclaw. **Bug fixes** -- Enforce deadlines for ClawHub metadata and error responses [#109092](https://github.com/openclaw/openclaw/pull/109092) — Thanks @Pick-cat, @obviyus. +- Enforce deadlines for ClawHub metadata and error responses [#109092](https://github.com/openclaw/openclaw/pull/109092) — Thanks [@Pick-cat](https://github.com/Pick-cat), [@obviyus](https://github.com/obviyus). - Keep profile and container context in plugin recovery commands [#117631](https://github.com/openclaw/openclaw/pull/117631) - Release plugin resources before reporting inspection success [#141780](https://github.com/openclaw/openclaw/pull/141780) - Close chat plugin-inspection resources before replying [#141819](https://github.com/openclaw/openclaw/pull/141819) - Release Plugin Doctor resources before reporting completion [#141845](https://github.com/openclaw/openclaw/pull/141845) - Close Workboard connections after plugin inspections [#141858](https://github.com/openclaw/openclaw/pull/141858) - Recover notices for already loaded plugins [#141930](https://github.com/openclaw/openclaw/pull/141930) -- Clarify restart requirements after installing plugins [#142129](https://github.com/openclaw/openclaw/pull/142129) — Thanks @WOLIKIMCHENG, @obviyus, @dh-js. +- Clarify restart requirements after installing plugins [#142129](https://github.com/openclaw/openclaw/pull/142129) — Thanks [@WOLIKIMCHENG](https://github.com/WOLIKIMCHENG), [@obviyus](https://github.com/obviyus), [@dh-js](https://github.com/dh-js). - Identify changed plugin registry records in diagnostics [#142192](https://github.com/openclaw/openclaw/pull/142192) - Release plugin CLI resources after cleanup finishes [#142388](https://github.com/openclaw/openclaw/pull/142388) - Keep resources alive through plugin registration cleanup [#142636](https://github.com/openclaw/openclaw/pull/142636) -- Preserve bundled plugin trust for development path installs [#143516](https://github.com/openclaw/openclaw/pull/143516) — Thanks @RomneyDa. +- Preserve bundled plugin trust for development path installs [#143516](https://github.com/openclaw/openclaw/pull/143516) — Thanks [@RomneyDa](https://github.com/RomneyDa). - Report supported bundle hook layouts accurately [#143687](https://github.com/openclaw/openclaw/pull/143687) **Documentation** -- Split the plugins CLI reference by task [#142980](https://github.com/openclaw/openclaw/pull/142980) — Thanks @vincentkoc. -- Clarify default plugin package resolution [#143867](https://github.com/openclaw/openclaw/pull/143867) — Thanks @vincentkoc. +- Split the plugins CLI reference by task [#142980](https://github.com/openclaw/openclaw/pull/142980) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify default plugin package resolution [#143867](https://github.com/openclaw/openclaw/pull/143867) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Improvements** @@ -3367,32 +3367,32 @@ People building plugins get fixes for type errors and missing supporting files t **Documentation** -- Document the private completion helper in the SDK catalog [#111706](https://github.com/openclaw/openclaw/pull/111706) — Thanks @xydt-tanshanshan, @obviyus, @chegherian. -- Split provider SDK guidance into focused references [#141958](https://github.com/openclaw/openclaw/pull/141958) — Thanks @vincentkoc. -- Organize plugin hook guidance by task [#142605](https://github.com/openclaw/openclaw/pull/142605) — Thanks @vincentkoc. -- Split SDK migration guidance into focused pages [#142607](https://github.com/openclaw/openclaw/pull/142607) — Thanks @vincentkoc. -- Organize the SDK overview into focused references [#142641](https://github.com/openclaw/openclaw/pull/142641) — Thanks @vincentkoc. -- Split channel SDK guidance into focused references [#142703](https://github.com/openclaw/openclaw/pull/142703) — Thanks @vincentkoc. -- Split plugin architecture into focused guides [#142730](https://github.com/openclaw/openclaw/pull/142730) — Thanks @vincentkoc. -- Split the agent-harness SDK reference into focused pages [#142889](https://github.com/openclaw/openclaw/pull/142889) — Thanks @vincentkoc. -- Split plugin entry-point documentation into focused references [#143151](https://github.com/openclaw/openclaw/pull/143151) — Thanks @vincentkoc. -- Correct plugin examples and capability guidance [#143857](https://github.com/openclaw/openclaw/pull/143857) — Thanks @vincentkoc. -- Correct provider catalog and Claude bundle guidance [#143895](https://github.com/openclaw/openclaw/pull/143895) — Thanks @vincentkoc. -- Clarify plugin migration history and examples [#143982](https://github.com/openclaw/openclaw/pull/143982) — Thanks @vincentkoc. +- Document the private completion helper in the SDK catalog [#111706](https://github.com/openclaw/openclaw/pull/111706) — Thanks [@xydt-tanshanshan](https://github.com/xydt-tanshanshan), [@obviyus](https://github.com/obviyus), [@chegherian](https://github.com/chegherian). +- Split provider SDK guidance into focused references [#141958](https://github.com/openclaw/openclaw/pull/141958) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize plugin hook guidance by task [#142605](https://github.com/openclaw/openclaw/pull/142605) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split SDK migration guidance into focused pages [#142607](https://github.com/openclaw/openclaw/pull/142607) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize the SDK overview into focused references [#142641](https://github.com/openclaw/openclaw/pull/142641) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split channel SDK guidance into focused references [#142703](https://github.com/openclaw/openclaw/pull/142703) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split plugin architecture into focused guides [#142730](https://github.com/openclaw/openclaw/pull/142730) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split the agent-harness SDK reference into focused pages [#142889](https://github.com/openclaw/openclaw/pull/142889) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split plugin entry-point documentation into focused references [#143151](https://github.com/openclaw/openclaw/pull/143151) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct plugin examples and capability guidance [#143857](https://github.com/openclaw/openclaw/pull/143857) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct provider catalog and Claude bundle guidance [#143895](https://github.com/openclaw/openclaw/pull/143895) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify plugin migration history and examples [#143982](https://github.com/openclaw/openclaw/pull/143982) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Limits and compatibility** -- Expose the actual catchall multi-account schema type [#141796](https://github.com/openclaw/openclaw/pull/141796) — Thanks @RomneyDa. +- Expose the actual catchall multi-account schema type [#141796](https://github.com/openclaw/openclaw/pull/141796) — Thanks [@RomneyDa](https://github.com/RomneyDa). **Bug fixes** -- Accept interface-typed inbound hook contexts [#141934](https://github.com/openclaw/openclaw/pull/141934) — Thanks @RomneyDa. +- Accept interface-typed inbound hook contexts [#141934](https://github.com/openclaw/openclaw/pull/141934) — Thanks [@RomneyDa](https://github.com/RomneyDa). - Use the running Gateway SDK for sibling-checkout plugins [#142508](https://github.com/openclaw/openclaw/pull/142508) - Include declared assets in untracked source-plugin builds [#142527](https://github.com/openclaw/openclaw/pull/142527) **Improvements** -- Develop Control UI plugins against a real Gateway with hot reload [#143052](https://github.com/openclaw/openclaw/pull/143052) — Thanks @shakkernerd. +- Develop Control UI plugins against a real Gateway with hot reload [#143052](https://github.com/openclaw/openclaw/pull/143052) — Thanks [@shakkernerd](https://github.com/shakkernerd). @@ -3421,13 +3421,13 @@ Requests using [model plugins](https://docs.openclaw.ai/plugins/sdk-runtime/mode - Keep local model resources through request cleanup [#143302](https://github.com/openclaw/openclaw/pull/143302) - Preserve plugin identity when tools are cancelled [#143305](https://github.com/openclaw/openclaw/pull/143305) - Keep isolated model calls alive through cleanup [#143414](https://github.com/openclaw/openclaw/pull/143414) -- Fix runtime-specific environment listing from the CLI [#143446](https://github.com/openclaw/openclaw/pull/143446) — Thanks @jalehman. +- Fix runtime-specific environment listing from the CLI [#143446](https://github.com/openclaw/openclaw/pull/143446) — Thanks [@jalehman](https://github.com/jalehman). - Keep plugin resources through late agent cleanup [#143490](https://github.com/openclaw/openclaw/pull/143490) - Release model-selected plugin resources after agent work [#143725](https://github.com/openclaw/openclaw/pull/143725) **Documentation** -- Split tool configuration references into focused pages [#142960](https://github.com/openclaw/openclaw/pull/142960) — Thanks @vincentkoc. +- Split tool configuration references into focused pages [#142960](https://github.com/openclaw/openclaw/pull/142960) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Improvements** @@ -3473,7 +3473,7 @@ Image, music, and video jobs can finish and save their results even when the plu **Documentation** -- Organize text-to-speech documentation by task [#142992](https://github.com/openclaw/openclaw/pull/142992) — Thanks @vincentkoc. +- Organize text-to-speech documentation by task [#142992](https://github.com/openclaw/openclaw/pull/142992) — Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3493,7 +3493,7 @@ Plugins with lots of saved data use less extra memory when listing it, helping r **Improvements** - Reduce database reads during plugin-state quota checks [#142318](https://github.com/openclaw/openclaw/pull/142318) -- Reduce temporary memory when listing plugin state [#142568](https://github.com/openclaw/openclaw/pull/142568) — Thanks @arcabotai. +- Reduce temporary memory when listing plugin state [#142568](https://github.com/openclaw/openclaw/pull/142568) — Thanks [@arcabotai](https://github.com/arcabotai). **Bug fixes** @@ -3517,7 +3517,7 @@ If you connect external tools through [MCP](https://docs.openclaw.ai/cli/mcp), l **Bug fixes** -- Finish MCP cleanup without waiting on stalled cancellation [#141289](https://github.com/openclaw/openclaw/pull/141289) — Thanks @hugenshen, @obviyus. +- Finish MCP cleanup without waiting on stalled cancellation [#141289](https://github.com/openclaw/openclaw/pull/141289) — Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). - Wait for MCP tool cleanup before resource release [#142632](https://github.com/openclaw/openclaw/pull/142632) - Keep MCP plugin resources available through shutdown cleanup [#143031](https://github.com/openclaw/openclaw/pull/143031) @@ -3527,7 +3527,7 @@ If you connect external tools through [MCP](https://docs.openclaw.ai/cli/mcp), l **Documentation** -- Split MCP documentation by task [#142995](https://github.com/openclaw/openclaw/pull/142995) — Thanks @vincentkoc. +- Split MCP documentation by task [#142995](https://github.com/openclaw/openclaw/pull/142995) — Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3546,15 +3546,15 @@ Commands on [connected devices](https://docs.openclaw.ai/cli/nodes) no longer ti **Bug fixes** -- Keep node command timeouts stable across clock changes [#137147](https://github.com/openclaw/openclaw/pull/137147) — Thanks @qingminglong, @obviyus. +- Keep node command timeouts stable across clock changes [#137147](https://github.com/openclaw/openclaw/pull/137147) — Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). **Limits and compatibility** -- Reject empty numeric node command options [#137311](https://github.com/openclaw/openclaw/pull/137311) — Thanks @Alix-007, @obviyus. +- Reject empty numeric node command options [#137311](https://github.com/openclaw/openclaw/pull/137311) — Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). **Documentation** -- Split Nodes documentation by task [#142779](https://github.com/openclaw/openclaw/pull/142779) — Thanks @vincentkoc. +- Split Nodes documentation by task [#142779](https://github.com/openclaw/openclaw/pull/142779) — Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3573,11 +3573,11 @@ Google Meet and voice sessions can now ask a [separately configured agent](https **Documentation** -- Organize Google Meet guidance by task [#142729](https://github.com/openclaw/openclaw/pull/142729) — Thanks @vincentkoc. +- Organize Google Meet guidance by task [#142729](https://github.com/openclaw/openclaw/pull/142729) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Bug fixes** -- Allow separate-agent consultations from model-locked sessions [#142736](https://github.com/openclaw/openclaw/pull/142736) — Thanks @RileyJJY, @jai-assistant, @jalehman. +- Allow separate-agent consultations from model-locked sessions [#142736](https://github.com/openclaw/openclaw/pull/142736) — Thanks [@RileyJJY](https://github.com/RileyJJY), [@jai-assistant](https://github.com/jai-assistant), [@jalehman](https://github.com/jalehman). - Clean up Google Meet audio after Chrome startup failure [#143408](https://github.com/openclaw/openclaw/pull/143408) @@ -3597,7 +3597,7 @@ If you use [A2A to connect agents](https://docs.openclaw.ai/channels/a2a), incom **Bug fixes** -- Honor A2A peer-to-agent bindings [#142485](https://github.com/openclaw/openclaw/pull/142485) — Thanks @eleqtrizit. +- Honor A2A peer-to-agent bindings [#142485](https://github.com/openclaw/openclaw/pull/142485) — Thanks [@eleqtrizit](https://github.com/eleqtrizit). @@ -3616,8 +3616,8 @@ Apps using OpenClaw through [Chat Completions](https://docs.openclaw.ai/gateway/ **Bug fixes** -- Report output-limited Chat Completions accurately [#141268](https://github.com/openclaw/openclaw/pull/141268) — Thanks @ooiuuii, @obviyus. -- Report output-limited Responses answers as incomplete [#142778](https://github.com/openclaw/openclaw/pull/142778) — Thanks @zhangguiping-xydt, @obviyus, @ooiuuii. +- Report output-limited Chat Completions accurately [#141268](https://github.com/openclaw/openclaw/pull/141268) — Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Report output-limited Responses answers as incomplete [#142778](https://github.com/openclaw/openclaw/pull/142778) — Thanks [@zhangguiping-xydt](https://github.com/zhangguiping-xydt), [@obviyus](https://github.com/obviyus), [@ooiuuii](https://github.com/ooiuuii). **Improvements** @@ -3625,9 +3625,9 @@ Apps using OpenClaw through [Chat Completions](https://docs.openclaw.ai/gateway/ **Documentation** -- Expose Gateway RPC method groups as headings [#143459](https://github.com/openclaw/openclaw/pull/143459) — Thanks @vincentkoc. -- Correct Gateway reference hierarchy and model-view link [#143472](https://github.com/openclaw/openclaw/pull/143472) — Thanks @vincentkoc. -- Split Gateway RPC guidance into focused topic pages [#143515](https://github.com/openclaw/openclaw/pull/143515) — Thanks @vincentkoc. +- Expose Gateway RPC method groups as headings [#143459](https://github.com/openclaw/openclaw/pull/143459) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct Gateway reference hierarchy and model-view link [#143472](https://github.com/openclaw/openclaw/pull/143472) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split Gateway RPC guidance into focused topic pages [#143515](https://github.com/openclaw/openclaw/pull/143515) — Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3648,7 +3648,7 @@ If you use separate Team Reports report or export links, change `/reports/...` t **Bug fixes** -- Make generated plugin panels readable by container runtime users [#142997](https://github.com/openclaw/openclaw/pull/142997) — Thanks @ylcn91, @obviyus, @Conan-Scott. +- Make generated plugin panels readable by container runtime users [#142997](https://github.com/openclaw/openclaw/pull/142997) — Thanks [@ylcn91](https://github.com/ylcn91), [@obviyus](https://github.com/obviyus), [@Conan-Scott](https://github.com/Conan-Scott). - Let embedded reports fill the content area [#143765](https://github.com/openclaw/openclaw/pull/143765) **Limits and compatibility** @@ -3765,7 +3765,7 @@ OpenClaw can automatically download a supported Crabbox tool when yours is missi **Documentation** - Correct Node requirements in cloud-worker setup guidance [#141871](https://github.com/openclaw/openclaw/pull/141871) -- Split Cloud Workers guidance into focused topic pages [#143158](https://github.com/openclaw/openclaw/pull/143158) — Thanks @vincentkoc. +- Split Cloud Workers guidance into focused topic pages [#143158](https://github.com/openclaw/openclaw/pull/143158) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Improvements** @@ -3821,7 +3821,7 @@ Supported cloud computers can also keep their files, installed tools, and deskto **Bug fixes** -- Keep accepted messages queued through worker setup and file sync [#137576](https://github.com/openclaw/openclaw/pull/137576) — Thanks @jalehman. +- Keep accepted messages queued through worker setup and file sync [#137576](https://github.com/openclaw/openclaw/pull/137576) — Thanks [@jalehman](https://github.com/jalehman). - Retain cloud-worker renewals after temporary heartbeat failures [#142194](https://github.com/openclaw/openclaw/pull/142194) - Keep configured cloud machines through updates [#143858](https://github.com/openclaw/openclaw/pull/143858) - Continue unstarted turns through worker updates [#143910](https://github.com/openclaw/openclaw/pull/143910) @@ -3892,7 +3892,7 @@ Owners and administrators can [search Codex plugins](https://docs.openclaw.ai/pl **Improvements** -- Find, connect and inspect Codex plugins [#132158](https://github.com/openclaw/openclaw/pull/132158) — Thanks @stevenlee-oai. +- Find, connect and inspect Codex plugins [#132158](https://github.com/openclaw/openclaw/pull/132158) — Thanks [@stevenlee-oai](https://github.com/stevenlee-oai). @@ -3945,21 +3945,21 @@ Your Claw's instructions also allow it to use existing login details for tasks y **Improvements** -- Clarify the existing scope of Read Only permissions in the English interface [#141283](https://github.com/openclaw/openclaw/pull/141283). Thanks @north-echo and @obviyus. +- Clarify the existing scope of Read Only permissions in the English interface [#141283](https://github.com/openclaw/openclaw/pull/141283). Thanks [@north-echo](https://github.com/north-echo) and [@obviyus](https://github.com/obviyus). **Bug fixes** -- Show usage for invalid approval decisions and accept unusual IDs with valid decisions [#137877](https://github.com/openclaw/openclaw/pull/137877). Thanks @teddytennant and @obviyus. -- Remove blanket credential-use refusals and correct setup routing [#143238](https://github.com/openclaw/openclaw/pull/143238). Thanks @ejc3, @Stephane-fci, and @Sedrak-Hovhannisyan. SDK callers should replace the legacy string argument to `buildCredentialSafetyPrompt` with `{ controlToolsAvailable }`; legacy strings remain accepted through November 30, 2026. +- Show usage for invalid approval decisions and accept unusual IDs with valid decisions [#137877](https://github.com/openclaw/openclaw/pull/137877). Thanks [@teddytennant](https://github.com/teddytennant) and [@obviyus](https://github.com/obviyus). +- Remove blanket credential-use refusals and correct setup routing [#143238](https://github.com/openclaw/openclaw/pull/143238). Thanks [@ejc3](https://github.com/ejc3), [@Stephane-fci](https://github.com/Stephane-fci), and [@Sedrak-Hovhannisyan](https://github.com/Sedrak-Hovhannisyan). SDK callers should replace the legacy string argument to `buildCredentialSafetyPrompt` with `{ controlToolsAvailable }`; legacy strings remain accepted through November 30, 2026. - Keep approval-reply interpretation resources until cleanup ends [#143307](https://github.com/openclaw/openclaw/pull/143307). **Security and trust** -- Preserve disabled tools across plugin handoffs [#142093](https://github.com/openclaw/openclaw/pull/142093). Thanks @pgondhi987. For [plugin authors](https://docs.openclaw.ai/plugins/sdk-agent-harness), an empty runtime `toolsAllow` list means deny all, while an empty configuration `allow` list remains unrestricted. +- Preserve disabled tools across plugin handoffs [#142093](https://github.com/openclaw/openclaw/pull/142093). Thanks [@pgondhi987](https://github.com/pgondhi987). For [plugin authors](https://docs.openclaw.ai/plugins/sdk-agent-harness), an empty runtime `toolsAllow` list means deny all, while an empty configuration `allow` list remains unrestricted. **Documentation** -- Clarify full-mode command approval, strict inline-code review, and waiting behavior [#142368](https://github.com/openclaw/openclaw/pull/142368). Thanks @Glucksberg, @obviyus, @JKamgang, and @russellweiss. This documents existing policy; strict inline evaluation remains off by default. +- Clarify full-mode command approval, strict inline-code review, and waiting behavior [#142368](https://github.com/openclaw/openclaw/pull/142368). Thanks [@Glucksberg](https://github.com/Glucksberg), [@obviyus](https://github.com/obviyus), [@JKamgang](https://github.com/JKamgang), and [@russellweiss](https://github.com/russellweiss). This documents existing policy; strict inline evaluation remains off by default. @@ -3985,13 +3985,13 @@ More model connections can use [protected API keys](https://docs.openclaw.ai/gat **Bug fixes** - Skip unused saved credentials for eligible password-only connections [#142290](https://github.com/openclaw/openclaw/pull/142290). This applies to signed clients using read-only local shared state, without an origin-specific credential scope or another credential type. -- Correct credential recovery notices [#142498](https://github.com/openclaw/openclaw/pull/142498). Thanks @obviyus. -- Restore WebSocket inference through managed secret egress, and synchronize bundled autoreview authentication handling and machine-readable status output [#143354](https://github.com/openclaw/openclaw/pull/143354). Thanks @fuller-stack-dev. The helper sync also removes the external credential-scanner dependency from autoreview. -- Recover legacy node tokens with `--no-scopes` [#143599](https://github.com/openclaw/openclaw/pull/143599). Thanks @obviyus and @matthewmoroz. The option cannot be combined with `--scope`; cleanup removes only the matching local legacy node credential. +- Correct credential recovery notices [#142498](https://github.com/openclaw/openclaw/pull/142498). Thanks [@obviyus](https://github.com/obviyus). +- Restore WebSocket inference through managed secret egress, and synchronize bundled autoreview authentication handling and machine-readable status output [#143354](https://github.com/openclaw/openclaw/pull/143354). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). The helper sync also removes the external credential-scanner dependency from autoreview. +- Recover legacy node tokens with `--no-scopes` [#143599](https://github.com/openclaw/openclaw/pull/143599). Thanks [@obviyus](https://github.com/obviyus) and [@matthewmoroz](https://github.com/matthewmoroz). The option cannot be combined with `--scope`; cleanup removes only the matching local legacy node credential. **Documentation** -- Split secrets guidance into focused runtime, SecretRef, store and egress, integration, and operations guides [#143520](https://github.com/openclaw/openclaw/pull/143520). Thanks @vincentkoc. +- Split secrets guidance into focused runtime, SecretRef, store and egress, integration, and operations guides [#143520](https://github.com/openclaw/openclaw/pull/143520). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -4012,14 +4012,14 @@ If you use [IPv4-mapped network rules](https://docs.openclaw.ai/gateway/trusted- **Security and trust** -- Enforce Slack HTTP webhook limits before processing, including a 1 MiB body limit and 30-second read deadline [c11ea063](https://github.com/openclaw/openclaw/commit/c11ea06355b094e29c9fe5fcfe309fdbaae6d17b). Thanks @drobison00. Contextual intent and review reference [#136508](https://github.com/openclaw/openclaw/pull/136508). -- Preserve IPv6 cloud metadata blocking with proxy compatibility enabled [#137684](https://github.com/openclaw/openclaw/pull/137684). Thanks @eleqtrizit. -- Reject malformed Tlon citations before authenticated lookups [#142041](https://github.com/openclaw/openclaw/pull/142041). Thanks @pgondhi987. -- Reject stale signed Feishu and Lark webhook callbacks outside the fixed one-hour clock window [#143484](https://github.com/openclaw/openclaw/pull/143484). Thanks @eleqtrizit. +- Enforce Slack HTTP webhook limits before processing, including a 1 MiB body limit and 30-second read deadline [c11ea063](https://github.com/openclaw/openclaw/commit/c11ea06355b094e29c9fe5fcfe309fdbaae6d17b). Thanks [@drobison00](https://github.com/drobison00). Contextual intent and review reference [#136508](https://github.com/openclaw/openclaw/pull/136508). +- Preserve IPv6 cloud metadata blocking with proxy compatibility enabled [#137684](https://github.com/openclaw/openclaw/pull/137684). Thanks [@eleqtrizit](https://github.com/eleqtrizit). +- Reject malformed Tlon citations before authenticated lookups [#142041](https://github.com/openclaw/openclaw/pull/142041). Thanks [@pgondhi987](https://github.com/pgondhi987). +- Reject stale signed Feishu and Lark webhook callbacks outside the fixed one-hour clock window [#143484](https://github.com/openclaw/openclaw/pull/143484). Thanks [@eleqtrizit](https://github.com/eleqtrizit). **Limits and compatibility** -- Honor IPv4-mapped network ranges in proxy and pairing rules [#137668](https://github.com/openclaw/openclaw/pull/137668). Thanks @elbourne12345 and @obviyus. Native IPv6 peers do not match these ranges, and catch-all proxy trust can still prevent correct client attribution. +- Honor IPv4-mapped network ranges in proxy and pairing rules [#137668](https://github.com/openclaw/openclaw/pull/137668). Thanks [@elbourne12345](https://github.com/elbourne12345) and [@obviyus](https://github.com/obviyus). Native IPv6 peers do not match these ranges, and catch-all proxy trust can still prevent correct client attribution. @@ -4040,16 +4040,16 @@ Changing a shared conversation to draft now also blocks new file requests from r **Security and trust** -- Prevent attachment reads from sibling sandboxes under workspace-only policy [#143521](https://github.com/openclaw/openclaw/pull/143521). Thanks @eleqtrizit, @yetval, and @yangxiansheng. +- Prevent attachment reads from sibling sandboxes under workspace-only policy [#143521](https://github.com/openclaw/openclaw/pull/143521). Thanks [@eleqtrizit](https://github.com/eleqtrizit), [@yetval](https://github.com/yetval), and [@yangxiansheng](https://github.com/yangxiansheng). **Bug fixes** -- Apply draft visibility to fresh artifact reads and downloads [#143873](https://github.com/openclaw/openclaw/pull/143873). Thanks @vincentkoc. +- Apply draft visibility to fresh artifact reads and downloads [#143873](https://github.com/openclaw/openclaw/pull/143873). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Split sandboxing guidance into focused backend, workspace, image, and setup pages [#143522](https://github.com/openclaw/openclaw/pull/143522). Thanks @vincentkoc. -- Document file-transfer approval migration and clarify SecretRef fields, the Moonshot model example, and plugin-reference navigation [#144029](https://github.com/openclaw/openclaw/pull/144029). Thanks @vincentkoc. +- Split sandboxing guidance into focused backend, workspace, image, and setup pages [#143522](https://github.com/openclaw/openclaw/pull/143522). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Document file-transfer approval migration and clarify SecretRef fields, the Moonshot model example, and plugin-reference navigation [#144029](https://github.com/openclaw/openclaw/pull/144029). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -4068,7 +4068,7 @@ If you have read-only access, opening an MCP App in a separate view no longer gi **Security and trust** -- Preserve read-only permissions in standalone MCP Apps [#142661](https://github.com/openclaw/openclaw/pull/142661). Thanks @eleqtrizit. Client tool permission is captured when the launch ticket is issued; the ongoing check concerns the live App grant. +- Preserve read-only permissions in standalone MCP Apps [#142661](https://github.com/openclaw/openclaw/pull/142661). Thanks [@eleqtrizit](https://github.com/eleqtrizit). Client tool permission is captured when the launch ticket is issued; the ongoing check concerns the live App grant. - Block queued MCP tool execution after rejected uploads on the authenticated loopback connection [#143724](https://github.com/openclaw/openclaw/pull/143724). @@ -4090,13 +4090,13 @@ If you have read-only access, opening an MCP App in a separate view no longer gi **Bug fixes** -- Preserve shared history and retryable cleanup during agent deletion [#141731](https://github.com/openclaw/openclaw/pull/141731). Thanks @andrea-kingautomation. +- Preserve shared history and retryable cleanup during agent deletion [#141731](https://github.com/openclaw/openclaw/pull/141731). Thanks [@andrea-kingautomation](https://github.com/andrea-kingautomation). - Clean up deleted agents on external state volumes, with the Gateway's same-parent workspace-symlink behavior described above [#142130](https://github.com/openclaw/openclaw/pull/142130). **Security and trust** -- Keep recognized private update captures out of backups and support exports [#143799](https://github.com/openclaw/openclaw/pull/143799). Thanks @fuller-stack-dev. -- Exclude moved private capture directories when their marker stays intact, and refuse invalid markers [#143899](https://github.com/openclaw/openclaw/pull/143899). Thanks @fuller-stack-dev. +- Keep recognized private update captures out of backups and support exports [#143799](https://github.com/openclaw/openclaw/pull/143799). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Exclude moved private capture directories when their marker stays intact, and refuse invalid markers [#143899](https://github.com/openclaw/openclaw/pull/143899). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). @@ -4115,7 +4115,7 @@ Running `openclaw security audit --fix` now keeps the WhatsApp group access list **Security and trust** -- Preserve WhatsApp group allowlists during security repair [#142589](https://github.com/openclaw/openclaw/pull/142589). Thanks @eleqtrizit. +- Preserve WhatsApp group allowlists during security repair [#142589](https://github.com/openclaw/openclaw/pull/142589). Thanks [@eleqtrizit](https://github.com/eleqtrizit). @@ -4134,15 +4134,15 @@ The [telemetry guide](https://docs.openclaw.ai/gateway/telemetry) now explains w **Bug fixes** -- Normalize public-provider names in optional statistics and their preview, while retaining the private-provider filter and existing consent settings [#141134](https://github.com/openclaw/openclaw/pull/141134). Thanks @vincentkoc. +- Normalize public-provider names in optional statistics and their preview, while retaining the private-provider filter and existing consent settings [#141134](https://github.com/openclaw/openclaw/pull/141134). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Organize Gateway security guidance into focused setup, trust, audit, and incident-response pages [#141162](https://github.com/openclaw/openclaw/pull/141162). Thanks @vincentkoc. -- Split policy command guidance into authoring, rules, scopes, checks, attestation, and findings guides [#142961](https://github.com/openclaw/openclaw/pull/142961). Thanks @vincentkoc. -- Explain approximate location in hosted update telemetry, preview limits, retention, and request controls [#143311](https://github.com/openclaw/openclaw/pull/143311). Thanks @vincentkoc. -- Organize the threat catalog into focused pages while retaining shared risk context [#143517](https://github.com/openclaw/openclaw/pull/143517). Thanks @vincentkoc. -- Clarify Anthropic setup-token login, secret scope, approvals upgrade guidance, shared rate limits, and proxy validation failures [#144030](https://github.com/openclaw/openclaw/pull/144030). Thanks @vincentkoc. +- Organize Gateway security guidance into focused setup, trust, audit, and incident-response pages [#141162](https://github.com/openclaw/openclaw/pull/141162). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split policy command guidance into authoring, rules, scopes, checks, attestation, and findings guides [#142961](https://github.com/openclaw/openclaw/pull/142961). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Explain approximate location in hosted update telemetry, preview limits, retention, and request controls [#143311](https://github.com/openclaw/openclaw/pull/143311). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize the threat catalog into focused pages while retaining shared risk context [#143517](https://github.com/openclaw/openclaw/pull/143517). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify Anthropic setup-token login, secret scope, approvals upgrade guidance, shared rate limits, and proxy validation failures [#144030](https://github.com/openclaw/openclaw/pull/144030). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -4171,7 +4171,7 @@ When your Claw needs an answer, you can now choose an option or type a response **Improvements** -- Answer agent questions and Gateway secret requests in the terminal [#143273](https://github.com/openclaw/openclaw/pull/143273). Thanks @Sedrak-Hovhannisyan. +- Answer agent questions and Gateway secret requests in the terminal [#143273](https://github.com/openclaw/openclaw/pull/143273). Thanks [@Sedrak-Hovhannisyan](https://github.com/Sedrak-Hovhannisyan). @@ -4195,8 +4195,8 @@ Long addresses and other text now wrap in terminal chat without gaining extra sp **Bug fixes** -- Keep progress indicators within narrow terminals [#141401](https://github.com/openclaw/openclaw/pull/141401). Thanks @ooiuuii. -- Restore native CLI progress indicators [#142071](https://github.com/openclaw/openclaw/pull/142071). Thanks @Xuxyyy, @obviyus. +- Keep progress indicators within narrow terminals [#141401](https://github.com/openclaw/openclaw/pull/141401). Thanks [@ooiuuii](https://github.com/ooiuuii). +- Restore native CLI progress indicators [#142071](https://github.com/openclaw/openclaw/pull/142071). Thanks [@Xuxyyy](https://github.com/Xuxyyy), [@obviyus](https://github.com/obviyus). - Suppress approvals write announcements in JSON output [#142152](https://github.com/openclaw/openclaw/pull/142152). - Preserve blank lines in multiline terminal tables [#142196](https://github.com/openclaw/openclaw/pull/142196). - Preserve long words and email addresses in terminal chat [#142210](https://github.com/openclaw/openclaw/pull/142210). @@ -4219,15 +4219,15 @@ Command errors do a better job of telling you what to do next, such as supplying **Bug fixes** -- Show accepted run IDs in connection-loss and timeout hints [#111899](https://github.com/openclaw/openclaw/pull/111899). Thanks @xialonglee, @MrNozz, @obviyus. +- Show accepted run IDs in connection-loss and timeout hints [#111899](https://github.com/openclaw/openclaw/pull/111899). Thanks [@xialonglee](https://github.com/xialonglee), [@MrNozz](https://github.com/MrNozz), [@obviyus](https://github.com/obviyus). - Distinguish command errors from CLI startup failures [#142109](https://github.com/openclaw/openclaw/pull/142109). -- Show direct credential guidance for Gateway overrides [#142112](https://github.com/openclaw/openclaw/pull/142112). Thanks @DasX, @obviyus. +- Show direct credential guidance for Gateway overrides [#142112](https://github.com/openclaw/openclaw/pull/142112). Thanks [@DasX](https://github.com/DasX), [@obviyus](https://github.com/obviyus). - Show available Gateway details in full status reports [#142174](https://github.com/openclaw/openclaw/pull/142174). - Explain when CLI commands require an explicit agent [#143266](https://github.com/openclaw/openclaw/pull/143266). **Documentation** -- Document system command port and password options [#139071](https://github.com/openclaw/openclaw/pull/139071). Thanks @qingminglong, @obviyus. +- Document system command port and password options [#139071](https://github.com/openclaw/openclaw/pull/139071). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). @@ -4247,11 +4247,11 @@ Command errors do a better job of telling you what to do next, such as supplying **Bug fixes** - Fit compact Code Mode results and show literal JSON [#141417](https://github.com/openclaw/openclaw/pull/141417). -- Keep recursive Code Mode cells recoverable [#141960](https://github.com/openclaw/openclaw/pull/141960). Thanks @vincentkoc. +- Keep recursive Code Mode cells recoverable [#141960](https://github.com/openclaw/openclaw/pull/141960). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Organize Code Mode guidance by task [#142425](https://github.com/openclaw/openclaw/pull/142425). Thanks @vincentkoc. +- Organize Code Mode guidance by task [#142425](https://github.com/openclaw/openclaw/pull/142425). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -4272,14 +4272,14 @@ Saved worktrees also restore changes that replaced a file with a folder, or a fo **Bug fixes** -- Validate worktree starting refs and preserve accepted commits [#135917](https://github.com/openclaw/openclaw/pull/135917). Thanks @RomneyDa. -- Accept surrounding spaces in managed-worktree IDs [#141373](https://github.com/openclaw/openclaw/pull/141373). Thanks @nocodet888-arch, @obviyus. +- Validate worktree starting refs and preserve accepted commits [#135917](https://github.com/openclaw/openclaw/pull/135917). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Accept surrounding spaces in managed-worktree IDs [#141373](https://github.com/openclaw/openclaw/pull/141373). Thanks [@nocodet888-arch](https://github.com/nocodet888-arch), [@obviyus](https://github.com/obviyus). - Keep worktree sessions available in repositories with many branches [#143205](https://github.com/openclaw/openclaw/pull/143205). - Preserve file and folder replacements in worktree recovery [#143324](https://github.com/openclaw/openclaw/pull/143324). **Documentation** -- Add worktree commands to the CLI index [#137422](https://github.com/openclaw/openclaw/pull/137422). Thanks @qingminglong, @obviyus. +- Add worktree commands to the CLI index [#137422](https://github.com/openclaw/openclaw/pull/137422). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). @@ -4304,17 +4304,17 @@ If you track model usage, completed `/btw` side answers can now include their re **Bug fixes** -- Preserve adjacent example framing in shortened instructions [#137974](https://github.com/openclaw/openclaw/pull/137974). Thanks @SunnyShu0925, @obviyus, @Hawk5150. +- Preserve adjacent example framing in shortened instructions [#137974](https://github.com/openclaw/openclaw/pull/137974). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus), [@Hawk5150](https://github.com/Hawk5150). - Report usage from direct /btw answers [#141620](https://github.com/openclaw/openclaw/pull/141620). -- Guide agents after rejected goal updates [#142808](https://github.com/openclaw/openclaw/pull/142808). Thanks @SunnyShu0925, @obviyus, @aminekhettat. -- Repair native Git attribution replay before its move to session instructions [#142869](https://github.com/openclaw/openclaw/pull/142869). Thanks @Marvinthebored, @obviyus. -- Retain Traditional Chinese rules in oversized instructions [#142915](https://github.com/openclaw/openclaw/pull/142915). Thanks @sunlit-deng, @obviyus, @igs-rogenlo. -- Keep eligible Git co-author guidance in conditional session instructions [#143198](https://github.com/openclaw/openclaw/pull/143198). Thanks @Marvinthebored. +- Guide agents after rejected goal updates [#142808](https://github.com/openclaw/openclaw/pull/142808). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus), [@aminekhettat](https://github.com/aminekhettat). +- Repair native Git attribution replay before its move to session instructions [#142869](https://github.com/openclaw/openclaw/pull/142869). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@obviyus](https://github.com/obviyus). +- Retain Traditional Chinese rules in oversized instructions [#142915](https://github.com/openclaw/openclaw/pull/142915). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@obviyus](https://github.com/obviyus), [@igs-rogenlo](https://github.com/igs-rogenlo). +- Keep eligible Git co-author guidance in conditional session instructions [#143198](https://github.com/openclaw/openclaw/pull/143198). Thanks [@Marvinthebored](https://github.com/Marvinthebored). - Keep side-question resources available through cleanup [#143366](https://github.com/openclaw/openclaw/pull/143366). **Documentation** -- Organize the session reference by operator task [#143082](https://github.com/openclaw/openclaw/pull/143082). Thanks @vincentkoc. +- Organize the session reference by operator task [#143082](https://github.com/openclaw/openclaw/pull/143082). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -4333,14 +4333,14 @@ If you track model usage, completed `/btw` side answers can now include their re **Bug fixes** -- Route restored subagent results to their saved requester [#141480](https://github.com/openclaw/openclaw/pull/141480). Thanks @aeoess, @obviyus, @laurenceputra, @toraiwa. -- Reject incomplete subagent continuation handoffs [#141901](https://github.com/openclaw/openclaw/pull/141901). Thanks @Takhoffman. -- Allow independent child runs to register from parent tools [#142652](https://github.com/openclaw/openclaw/pull/142652). Thanks @jalehman. -- Honor initial visible-subagent time limits [#142812](https://github.com/openclaw/openclaw/pull/142812). Thanks @fanyangCS, @obviyus. +- Route restored subagent results to their saved requester [#141480](https://github.com/openclaw/openclaw/pull/141480). Thanks [@aeoess](https://github.com/aeoess), [@obviyus](https://github.com/obviyus), [@laurenceputra](https://github.com/laurenceputra), [@toraiwa](https://github.com/toraiwa). +- Reject incomplete subagent continuation handoffs [#141901](https://github.com/openclaw/openclaw/pull/141901). Thanks [@Takhoffman](https://github.com/Takhoffman). +- Allow independent child runs to register from parent tools [#142652](https://github.com/openclaw/openclaw/pull/142652). Thanks [@jalehman](https://github.com/jalehman). +- Honor initial visible-subagent time limits [#142812](https://github.com/openclaw/openclaw/pull/142812). Thanks [@fanyangCS](https://github.com/fanyangCS), [@obviyus](https://github.com/obviyus). **Documentation** -- Split sub-agent guidance into focused linked pages [#142999](https://github.com/openclaw/openclaw/pull/142999). Thanks @vincentkoc. +- Split sub-agent guidance into focused linked pages [#142999](https://github.com/openclaw/openclaw/pull/142999). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -4359,35 +4359,35 @@ The [FAQ](https://docs.openclaw.ai/help/faq) is organized around the question yo **Bug fixes** -- Fix the troubleshooting link in automated support replies [#143194](https://github.com/openclaw/openclaw/pull/143194). Thanks @vincentkoc. -- Keep example headings out of documentation maps [#143299](https://github.com/openclaw/openclaw/pull/143299). Thanks @qingminglong, @obviyus. -- Repair documentation links in errors and troubleshooting [#143497](https://github.com/openclaw/openclaw/pull/143497). Thanks @vincentkoc. +- Fix the troubleshooting link in automated support replies [#143194](https://github.com/openclaw/openclaw/pull/143194). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Keep example headings out of documentation maps [#143299](https://github.com/openclaw/openclaw/pull/143299). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). +- Repair documentation links in errors and troubleshooting [#143497](https://github.com/openclaw/openclaw/pull/143497). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Correct Windows, ChromeOS, and durable-work maturity listings [#142066](https://github.com/openclaw/openclaw/pull/142066). Thanks @RomneyDa. -- Connect related plugin and provider guides [#143021](https://github.com/openclaw/openclaw/pull/143021). Thanks @vincentkoc. -- Add related-guide links and Chinese label translations [#143040](https://github.com/openclaw/openclaw/pull/143040). Thanks @vincentkoc. -- Organize the FAQ into focused topic pages [#143150](https://github.com/openclaw/openclaw/pull/143150). Thanks @vincentkoc. -- Improve links between guides and command references [#143157](https://github.com/openclaw/openclaw/pull/143157). Thanks @vincentkoc. -- Restore legacy documentation section links [#143586](https://github.com/openclaw/openclaw/pull/143586). Thanks @vincentkoc. -- Clarify setup guidance, pruning defaults, and Exa modes [#143770](https://github.com/openclaw/openclaw/pull/143770). Thanks @vincentkoc. -- Improve navigation between documentation guides [#143773](https://github.com/openclaw/openclaw/pull/143773). Thanks @vincentkoc. -- Reorganize CLI and tool documentation [#143775](https://github.com/openclaw/openclaw/pull/143775). Thanks @vincentkoc. -- Correct Gateway and provider setup documentation [#143796](https://github.com/openclaw/openclaw/pull/143796). Thanks @vincentkoc. -- Add bot-loop, transcripts, Copilot, Baseten, and incident-response guides to the sidebar [#143845](https://github.com/openclaw/openclaw/pull/143845). Thanks @vincentkoc. -- Improve Chinese documentation labels [#143853](https://github.com/openclaw/openclaw/pull/143853). Thanks @vincentkoc. -- Improve guide links and section navigation [#143855](https://github.com/openclaw/openclaw/pull/143855). Thanks @vincentkoc. -- Repair concept and troubleshooting links [#143923](https://github.com/openclaw/openclaw/pull/143923). Thanks @vincentkoc. -- Improve channel and plugin guide navigation [#143926](https://github.com/openclaw/openclaw/pull/143926). Thanks @vincentkoc. -- Simplify setup and concept documentation [#143931](https://github.com/openclaw/openclaw/pull/143931). Thanks @vincentkoc. -- Reorganize setup and operating guides [#143977](https://github.com/openclaw/openclaw/pull/143977). Thanks @vincentkoc. -- Clarify tool and channel reference prose [#143979](https://github.com/openclaw/openclaw/pull/143979). Thanks @vincentkoc. -- Improve documentation tabs and headings [#144021](https://github.com/openclaw/openclaw/pull/144021). Thanks @vincentkoc. -- Align Chinese release and contributor navigation [#144037](https://github.com/openclaw/openclaw/pull/144037). Thanks @RomneyDa, @vincentkoc. +- Correct Windows, ChromeOS, and durable-work maturity listings [#142066](https://github.com/openclaw/openclaw/pull/142066). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Connect related plugin and provider guides [#143021](https://github.com/openclaw/openclaw/pull/143021). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add related-guide links and Chinese label translations [#143040](https://github.com/openclaw/openclaw/pull/143040). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize the FAQ into focused topic pages [#143150](https://github.com/openclaw/openclaw/pull/143150). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve links between guides and command references [#143157](https://github.com/openclaw/openclaw/pull/143157). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Restore legacy documentation section links [#143586](https://github.com/openclaw/openclaw/pull/143586). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify setup guidance, pruning defaults, and Exa modes [#143770](https://github.com/openclaw/openclaw/pull/143770). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve navigation between documentation guides [#143773](https://github.com/openclaw/openclaw/pull/143773). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reorganize CLI and tool documentation [#143775](https://github.com/openclaw/openclaw/pull/143775). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct Gateway and provider setup documentation [#143796](https://github.com/openclaw/openclaw/pull/143796). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add bot-loop, transcripts, Copilot, Baseten, and incident-response guides to the sidebar [#143845](https://github.com/openclaw/openclaw/pull/143845). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve Chinese documentation labels [#143853](https://github.com/openclaw/openclaw/pull/143853). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve guide links and section navigation [#143855](https://github.com/openclaw/openclaw/pull/143855). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Repair concept and troubleshooting links [#143923](https://github.com/openclaw/openclaw/pull/143923). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve channel and plugin guide navigation [#143926](https://github.com/openclaw/openclaw/pull/143926). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Simplify setup and concept documentation [#143931](https://github.com/openclaw/openclaw/pull/143931). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reorganize setup and operating guides [#143977](https://github.com/openclaw/openclaw/pull/143977). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify tool and channel reference prose [#143979](https://github.com/openclaw/openclaw/pull/143979). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve documentation tabs and headings [#144021](https://github.com/openclaw/openclaw/pull/144021). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Align Chinese release and contributor navigation [#144037](https://github.com/openclaw/openclaw/pull/144037). Thanks [@RomneyDa](https://github.com/RomneyDa), [@vincentkoc](https://github.com/vincentkoc). - Restore Windows maturity section links [#144067](https://github.com/openclaw/openclaw/pull/144067). -- Clarify agent setup and Gateway concepts [#144086](https://github.com/openclaw/openclaw/pull/144086). Thanks @vincentkoc. -- Improve documentation home links and wording [#144089](https://github.com/openclaw/openclaw/pull/144089). Thanks @vincentkoc. +- Clarify agent setup and Gateway concepts [#144086](https://github.com/openclaw/openclaw/pull/144086). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve documentation home links and wording [#144089](https://github.com/openclaw/openclaw/pull/144089). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -4414,9 +4414,9 @@ Your Claw can recover a missing final reply in more cases where the work finishe **Bug fixes** -- Clarify text-only recovery for missing final answers [#141705](https://github.com/openclaw/openclaw/pull/141705). Thanks @fabiolr, @adinballew, @RomneyDa. -- Recover final replies after interrupted provider streams [#142168](https://github.com/openclaw/openclaw/pull/142168). Thanks @liuwqgit, @obviyus, @wpu911. -- Recover final answers after earlier tool errors [#143598](https://github.com/openclaw/openclaw/pull/143598). Thanks @harjothkhara, @obviyus, @CK-XYZ. +- Clarify text-only recovery for missing final answers [#141705](https://github.com/openclaw/openclaw/pull/141705). Thanks [@fabiolr](https://github.com/fabiolr), [@adinballew](https://github.com/adinballew), [@RomneyDa](https://github.com/RomneyDa). +- Recover final replies after interrupted provider streams [#142168](https://github.com/openclaw/openclaw/pull/142168). Thanks [@liuwqgit](https://github.com/liuwqgit), [@obviyus](https://github.com/obviyus), [@wpu911](https://github.com/wpu911). +- Recover final answers after earlier tool errors [#143598](https://github.com/openclaw/openclaw/pull/143598). Thanks [@harjothkhara](https://github.com/harjothkhara), [@obviyus](https://github.com/obviyus), [@CK-XYZ](https://github.com/CK-XYZ). @@ -4437,12 +4437,12 @@ Old plugin messages outside the current conversation no longer stop its history **Bug fixes** -- Retain failed partial-answer context for the next model request [989abf6](https://github.com/openclaw/openclaw/commit/989abf68703796dedcdd91d0ab7116684de69b8d), with contextual provenance in [#125977](https://github.com/openclaw/openclaw/pull/125977). Thanks @ayaangazali. +- Retain failed partial-answer context for the next model request [989abf6](https://github.com/openclaw/openclaw/commit/989abf68703796dedcdd91d0ab7116684de69b8d), with contextual provenance in [#125977](https://github.com/openclaw/openclaw/pull/125977). Thanks [@ayaangazali](https://github.com/ayaangazali). - Keep inactive custom messages from breaking session history [#125413](https://github.com/openclaw/openclaw/pull/125413). -- Keep long histories readable during yield cleanup [#137381](https://github.com/openclaw/openclaw/pull/137381), related to [issue #109638](https://github.com/openclaw/openclaw/issues/109638). Thanks @jalehman, @samrrr, @VACInc. +- Keep long histories readable during yield cleanup [#137381](https://github.com/openclaw/openclaw/pull/137381), related to [issue #109638](https://github.com/openclaw/openclaw/issues/109638). Thanks [@jalehman](https://github.com/jalehman), [@samrrr](https://github.com/samrrr), [@VACInc](https://github.com/VACInc). - Avoid thinking-lookup delays for standalone session resets [#143281](https://github.com/openclaw/openclaw/pull/143281). - Keep current history readable after a reset [#143726](https://github.com/openclaw/openclaw/pull/143726). -- Reduce repeated reset work while keeping child tasks stopped [#143916](https://github.com/openclaw/openclaw/pull/143916). Thanks @obviyus, @aleps001, @zhangguiping-xydt. +- Reduce repeated reset work while keeping child tasks stopped [#143916](https://github.com/openclaw/openclaw/pull/143916). Thanks [@obviyus](https://github.com/obviyus), [@aleps001](https://github.com/aleps001), [@zhangguiping-xydt](https://github.com/zhangguiping-xydt). @@ -4463,11 +4463,11 @@ On Linux, affected SSH commands can finish instead of being stopped too early. C **Bug fixes** -- Explain filesystem causes of failed workspace writes [#116378](https://github.com/openclaw/openclaw/pull/116378), related to [issue #115920](https://github.com/openclaw/openclaw/issues/115920). Thanks @sloptop-the-terrible, @obviyus, @609NFT, @geekforlife. -- Clean up adopted Linux processes after command timeouts [#139548](https://github.com/openclaw/openclaw/pull/139548), a partial repair for [issue #97616](https://github.com/openclaw/openclaw/issues/97616). Cleanup is best effort and stops after 30 seconds. Thanks @srikolagani, @obviyus, @avp717, @Grynn, @islandpreneur007, @jinngimk-lang. -- Let service-managed SSH commands finish normally after closing inherited file handles [#141463](https://github.com/openclaw/openclaw/pull/141463). The demonstrated repair is on Linux. Thanks @jjjhenriksen, @obviyus, @manumadrigal09, @ouioui33, @avcarp, @kaspnov. +- Explain filesystem causes of failed workspace writes [#116378](https://github.com/openclaw/openclaw/pull/116378), related to [issue #115920](https://github.com/openclaw/openclaw/issues/115920). Thanks [@sloptop-the-terrible](https://github.com/sloptop-the-terrible), [@obviyus](https://github.com/obviyus), [@609NFT](https://github.com/609NFT), [@geekforlife](https://github.com/geekforlife). +- Clean up adopted Linux processes after command timeouts [#139548](https://github.com/openclaw/openclaw/pull/139548), a partial repair for [issue #97616](https://github.com/openclaw/openclaw/issues/97616). Cleanup is best effort and stops after 30 seconds. Thanks [@srikolagani](https://github.com/srikolagani), [@obviyus](https://github.com/obviyus), [@avp717](https://github.com/avp717), [@Grynn](https://github.com/Grynn), [@islandpreneur007](https://github.com/islandpreneur007), [@jinngimk-lang](https://github.com/jinngimk-lang). +- Let service-managed SSH commands finish normally after closing inherited file handles [#141463](https://github.com/openclaw/openclaw/pull/141463). The demonstrated repair is on Linux. Thanks [@jjjhenriksen](https://github.com/jjjhenriksen), [@obviyus](https://github.com/obviyus), [@manumadrigal09](https://github.com/manumadrigal09), [@ouioui33](https://github.com/ouioui33), [@avcarp](https://github.com/avcarp), [@kaspnov](https://github.com/kaspnov). - Avoid false cleanup failures after successful POSIX commands [#143240](https://github.com/openclaw/openclaw/pull/143240). -- Preserve tool arguments beside empty wrappers [#143729](https://github.com/openclaw/openclaw/pull/143729). Thanks @xydigitLybnnnn, @obviyus, @nkdmike. +- Preserve tool arguments beside empty wrappers [#143729](https://github.com/openclaw/openclaw/pull/143729). Thanks [@xydigitLybnnnn](https://github.com/xydigitLybnnnn), [@obviyus](https://github.com/obviyus), [@nkdmike](https://github.com/nkdmike). @@ -4496,12 +4496,12 @@ Exported conversations keep file-read results that were incorrectly removed, inc **Bug fixes** -- Include fallback tool activity in trajectory exports [#114662](https://github.com/openclaw/openclaw/pull/114662), related to [issue #114602](https://github.com/openclaw/openclaw/issues/114602). Thanks @synthalorian, @obviyus, @jackatagenticforce. +- Include fallback tool activity in trajectory exports [#114662](https://github.com/openclaw/openclaw/pull/114662), related to [issue #114602](https://github.com/openclaw/openclaw/issues/114602). Thanks [@synthalorian](https://github.com/synthalorian), [@obviyus](https://github.com/obviyus), [@jackatagenticforce](https://github.com/jackatagenticforce). - Preserve SQLite fatal diagnostics from worker threads [#143039](https://github.com/openclaw/openclaw/pull/143039). -- Preserve partial debug captures and report shutdown storage failures [#143107](https://github.com/openclaw/openclaw/pull/143107). Thanks @vincentkoc. +- Preserve partial debug captures and report shutdown storage failures [#143107](https://github.com/openclaw/openclaw/pull/143107). Thanks [@vincentkoc](https://github.com/vincentkoc). - Preserve the initiating database error during cleanup [#143574](https://github.com/openclaw/openclaw/pull/143574). -- Wait for brief locks during state reads [#143908](https://github.com/openclaw/openclaw/pull/143908). Persistent locks can still fail. Thanks @pash-openai. -- Keep paginated file reads in session exports [#143930](https://github.com/openclaw/openclaw/pull/143930). Thanks @linhongyu510, @obviyus, @cp1369. +- Wait for brief locks during state reads [#143908](https://github.com/openclaw/openclaw/pull/143908). Persistent locks can still fail. Thanks [@pash-openai](https://github.com/pash-openai). +- Keep paginated file reads in session exports [#143930](https://github.com/openclaw/openclaw/pull/143930). Thanks [@linhongyu510](https://github.com/linhongyu510), [@obviyus](https://github.com/obviyus), [@cp1369](https://github.com/cp1369). @@ -4533,10 +4533,10 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Remove the fixed orphan-prompt strategy wrapper [746e53f2](https://github.com/openclaw/openclaw/commit/746e53f21fe9fa671030343545daf65588816dd0) - Simplify shared tool-summary formatting [#136181](https://github.com/openclaw/openclaw/pull/136181) - Remove the unused internal health-check execution path [#138211](https://github.com/openclaw/openclaw/pull/138211) -- Remove unused Doctor health-check arguments [#141475](https://github.com/openclaw/openclaw/pull/141475). Thanks @vincentkoc. -- Return cron activation state from its existing transaction [#141676](https://github.com/openclaw/openclaw/pull/141676). Thanks @RomneyDa. +- Remove unused Doctor health-check arguments [#141475](https://github.com/openclaw/openclaw/pull/141475). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Return cron activation state from its existing transaction [#141676](https://github.com/openclaw/openclaw/pull/141676). Thanks [@RomneyDa](https://github.com/RomneyDa). - Skip unused distance calculations for trailing wake names [#141683](https://github.com/openclaw/openclaw/pull/141683) -- Type incoming Reef versions as unverified input [#141687](https://github.com/openclaw/openclaw/pull/141687). Thanks @RomneyDa. +- Type incoming Reef versions as unverified input [#141687](https://github.com/openclaw/openclaw/pull/141687). Thanks [@RomneyDa](https://github.com/RomneyDa). - Separate cron script-result parsing from execution [#141688](https://github.com/openclaw/openclaw/pull/141688) - Separate transcript summary persistence from live capture [#141695](https://github.com/openclaw/openclaw/pull/141695) - Separate prepared-runtime snapshot construction [#141711](https://github.com/openclaw/openclaw/pull/141711) @@ -4547,37 +4547,37 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Unify Profile identity-save handling [#141730](https://github.com/openclaw/openclaw/pull/141730) - Share Slack reply preparation without changing delivery order [#141733](https://github.com/openclaw/openclaw/pull/141733) - Share the CLI local-onboarding decision [#141735](https://github.com/openclaw/openclaw/pull/141735) -- Centralize native approval adapter type handling [#141737](https://github.com/openclaw/openclaw/pull/141737). Thanks @RomneyDa. -- Centralize native WebKit bridge message types [#141764](https://github.com/openclaw/openclaw/pull/141764). Thanks @RomneyDa. -- Share the transcript idempotency-key reader [#141772](https://github.com/openclaw/openclaw/pull/141772). Thanks @vincentkoc. -- Remove unused UI text-formatting options [#141783](https://github.com/openclaw/openclaw/pull/141783). Thanks @vincentkoc. -- Reuse Doctor's shared legacy source-identity comparison [#141784](https://github.com/openclaw/openclaw/pull/141784). Thanks @vincentkoc. +- Centralize native approval adapter type handling [#141737](https://github.com/openclaw/openclaw/pull/141737). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Centralize native WebKit bridge message types [#141764](https://github.com/openclaw/openclaw/pull/141764). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share the transcript idempotency-key reader [#141772](https://github.com/openclaw/openclaw/pull/141772). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Remove unused UI text-formatting options [#141783](https://github.com/openclaw/openclaw/pull/141783). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse Doctor's shared legacy source-identity comparison [#141784](https://github.com/openclaw/openclaw/pull/141784). Thanks [@vincentkoc](https://github.com/vincentkoc). - Separate model-catalog source preparation [#141810](https://github.com/openclaw/openclaw/pull/141810) -- Share model-catalog presentation across local readers [#141815](https://github.com/openclaw/openclaw/pull/141815). Thanks @obviyus. +- Share model-catalog presentation across local readers [#141815](https://github.com/openclaw/openclaw/pull/141815). Thanks [@obviyus](https://github.com/obviyus). - Move cached turn replay into the dedupe module [#141824](https://github.com/openclaw/openclaw/pull/141824) -- Reuse Doctor's path-containment helper [#141828](https://github.com/openclaw/openclaw/pull/141828). Thanks @vincentkoc. +- Reuse Doctor's path-containment helper [#141828](https://github.com/openclaw/openclaw/pull/141828). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify built-in memory runtime delegation [#141847](https://github.com/openclaw/openclaw/pull/141847) -- Centralize memory dreaming types in the host SDK [#141873](https://github.com/openclaw/openclaw/pull/141873). Thanks @RomneyDa. -- Share ClawHub skill response types through the protocol [#141874](https://github.com/openclaw/openclaw/pull/141874). Thanks @RomneyDa. -- Derive conversation capability types from their resolver [#141878](https://github.com/openclaw/openclaw/pull/141878). Thanks @RomneyDa. -- Derive inbound hook context types from their producer [#141880](https://github.com/openclaw/openclaw/pull/141880). Thanks @RomneyDa. +- Centralize memory dreaming types in the host SDK [#141873](https://github.com/openclaw/openclaw/pull/141873). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share ClawHub skill response types through the protocol [#141874](https://github.com/openclaw/openclaw/pull/141874). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive conversation capability types from their resolver [#141878](https://github.com/openclaw/openclaw/pull/141878). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive inbound hook context types from their producer [#141880](https://github.com/openclaw/openclaw/pull/141880). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share provider request secret-field definitions [#141882](https://github.com/openclaw/openclaw/pull/141882) - Reuse channel setup configuration writers [#141929](https://github.com/openclaw/openclaw/pull/141929) -- Simplify Markdown span ordering bookkeeping [#141945](https://github.com/openclaw/openclaw/pull/141945). Thanks @vincentkoc. +- Simplify Markdown span ordering bookkeeping [#141945](https://github.com/openclaw/openclaw/pull/141945). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unreachable TUI streaming state [#141999](https://github.com/openclaw/openclaw/pull/141999) - Avoid duplicate validation when listing sessions [#142005](https://github.com/openclaw/openclaw/pull/142005) - Preserve plugin types during search setup [#142006](https://github.com/openclaw/openclaw/pull/142006) -- Derive UI session types from Gateway definitions [#142025](https://github.com/openclaw/openclaw/pull/142025). Thanks @RomneyDa. -- Derive Matrix configuration types from schemas [#142026](https://github.com/openclaw/openclaw/pull/142026). Thanks @RomneyDa. -- Derive Nextcloud Talk types from schemas [#142027](https://github.com/openclaw/openclaw/pull/142027). Thanks @RomneyDa. -- Derive Mattermost types from schemas [#142028](https://github.com/openclaw/openclaw/pull/142028). Thanks @RomneyDa. +- Derive UI session types from Gateway definitions [#142025](https://github.com/openclaw/openclaw/pull/142025). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive Matrix configuration types from schemas [#142026](https://github.com/openclaw/openclaw/pull/142026). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive Nextcloud Talk types from schemas [#142027](https://github.com/openclaw/openclaw/pull/142027). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive Mattermost types from schemas [#142028](https://github.com/openclaw/openclaw/pull/142028). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share activation configuration merging [#142045](https://github.com/openclaw/openclaw/pull/142045) - Remove an ineffective source-loader option [#142050](https://github.com/openclaw/openclaw/pull/142050) - Consolidate plugin install metadata classification [#142075](https://github.com/openclaw/openclaw/pull/142075) -- Remove unused plugin-loader cache bookkeeping [#142078](https://github.com/openclaw/openclaw/pull/142078). Thanks @vincentkoc. +- Remove unused plugin-loader cache bookkeeping [#142078](https://github.com/openclaw/openclaw/pull/142078). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unused board notice injection inputs [#142101](https://github.com/openclaw/openclaw/pull/142101) - Remove unused plugin install option forwarding [#142121](https://github.com/openclaw/openclaw/pull/142121) -- Remove unused configuration path from lock handles [#142127](https://github.com/openclaw/openclaw/pull/142127). Thanks @vincentkoc. +- Remove unused configuration path from lock handles [#142127](https://github.com/openclaw/openclaw/pull/142127). Thanks [@vincentkoc](https://github.com/vincentkoc). - Avoid recounting plugin state after quota eviction [#142148](https://github.com/openclaw/openclaw/pull/142148) - Share assignment detection across redaction outputs [#142183](https://github.com/openclaw/openclaw/pull/142183) - Remove redundant duplicate tracking from buffered replies [#142205](https://github.com/openclaw/openclaw/pull/142205) @@ -4601,10 +4601,10 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Reuse shared configuration scans in plugin planning [#142396](https://github.com/openclaw/openclaw/pull/142396) - Consolidate equivalent Nodes dispatch cases [#142402](https://github.com/openclaw/openclaw/pull/142402) - Skip unused Telegram draft prefix preparation [#142404](https://github.com/openclaw/openclaw/pull/142404) -- Derive Google Meet types from resolved settings [#142407](https://github.com/openclaw/openclaw/pull/142407). Thanks @RomneyDa. -- Derive IRC configuration types from its schema [#142408](https://github.com/openclaw/openclaw/pull/142408). Thanks @RomneyDa. -- Share plugin manifest and registry types [#142409](https://github.com/openclaw/openclaw/pull/142409). Thanks @RomneyDa. -- Reuse Gateway types for Workshop storage [#142410](https://github.com/openclaw/openclaw/pull/142410). Thanks @RomneyDa. +- Derive Google Meet types from resolved settings [#142407](https://github.com/openclaw/openclaw/pull/142407). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive IRC configuration types from its schema [#142408](https://github.com/openclaw/openclaw/pull/142408). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share plugin manifest and registry types [#142409](https://github.com/openclaw/openclaw/pull/142409). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Reuse Gateway types for Workshop storage [#142410](https://github.com/openclaw/openclaw/pull/142410). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share bounded web response-byte reading [#142413](https://github.com/openclaw/openclaw/pull/142413) - Avoid redundant chat code-block preparation [#142444](https://github.com/openclaw/openclaw/pull/142444) - Reduce temporary Discord formatting allocations [#142447](https://github.com/openclaw/openclaw/pull/142447) @@ -4613,26 +4613,26 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Simplify extra bootstrap file loading [#142469](https://github.com/openclaw/openclaw/pull/142469) - Reduce temporary Swarm roster collections [#142488](https://github.com/openclaw/openclaw/pull/142488) - Avoid unused display preparation during chat export [#142491](https://github.com/openclaw/openclaw/pull/142491) -- Remove unused setup callback authentication argument [#142494](https://github.com/openclaw/openclaw/pull/142494). Thanks @vincentkoc. +- Remove unused setup callback authentication argument [#142494](https://github.com/openclaw/openclaw/pull/142494). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unreachable Matrix forced-reset retry [#142495](https://github.com/openclaw/openclaw/pull/142495) -- Share diagnostic listener registration [#142499](https://github.com/openclaw/openclaw/pull/142499). Thanks @vincentkoc. +- Share diagnostic listener registration [#142499](https://github.com/openclaw/openclaw/pull/142499). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate Gateway restart health finalization [#142513](https://github.com/openclaw/openclaw/pull/142513) - Reuse prepared LINE table cells [#142542](https://github.com/openclaw/openclaw/pull/142542) - Reuse message preparation during chat renders [#142570](https://github.com/openclaw/openclaw/pull/142570) -- Share startup plugin membership checks [#142587](https://github.com/openclaw/openclaw/pull/142587). Thanks @vincentkoc. +- Share startup plugin membership checks [#142587](https://github.com/openclaw/openclaw/pull/142587). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify pending tool-result bookkeeping [#142599](https://github.com/openclaw/openclaw/pull/142599) - Centralize Apple Gateway error presentation overrides [#142601](https://github.com/openclaw/openclaw/pull/142601) -- Share Go and UV skill package validation [#142625](https://github.com/openclaw/openclaw/pull/142625). Thanks @vincentkoc. -- Extract Codex feature-list protocol types [#142648](https://github.com/openclaw/openclaw/pull/142648). Thanks @RomneyDa. +- Share Go and UV skill package validation [#142625](https://github.com/openclaw/openclaw/pull/142625). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Extract Codex feature-list protocol types [#142648](https://github.com/openclaw/openclaw/pull/142648). Thanks [@RomneyDa](https://github.com/RomneyDa). - Simplify internal status-report formatting [#142707](https://github.com/openclaw/openclaw/pull/142707) -- Share route restoration across Control UI pages [#142709](https://github.com/openclaw/openclaw/pull/142709). Thanks @vincentkoc. +- Share route restoration across Control UI pages [#142709](https://github.com/openclaw/openclaw/pull/142709). Thanks [@vincentkoc](https://github.com/vincentkoc). - Isolate model-policy integer parsing [#142804](https://github.com/openclaw/openclaw/pull/142804) - Reuse prepared provider ownership metadata [#142818](https://github.com/openclaw/openclaw/pull/142818) - Simplify outbound reply mirroring [#142819](https://github.com/openclaw/openclaw/pull/142819) - Simplify interactive SDK exports [#142824](https://github.com/openclaw/openclaw/pull/142824) - Reduce media-reference formatting overhead [#142836](https://github.com/openclaw/openclaw/pull/142836) - Render HTTP history without intermediate entry copies [#142856](https://github.com/openclaw/openclaw/pull/142856) -- Remove duplicate configuration tag preparation [#142864](https://github.com/openclaw/openclaw/pull/142864). Thanks @vincentkoc. +- Remove duplicate configuration tag preparation [#142864](https://github.com/openclaw/openclaw/pull/142864). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse plugin metadata during contribution discovery [#142975](https://github.com/openclaw/openclaw/pull/142975) - Remove unused plugin metadata discovery fallback [#143020](https://github.com/openclaw/openclaw/pull/143020) - Reuse prepared paths in Claude plugin manifest loading [#143027](https://github.com/openclaw/openclaw/pull/143027) @@ -4646,7 +4646,7 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Reuse shared dreaming statistics types [#143368](https://github.com/openclaw/openclaw/pull/143368) - Share Pi and Claude transcript range reading [#143374](https://github.com/openclaw/openclaw/pull/143374) - Share paired-node request assembly [#143380](https://github.com/openclaw/openclaw/pull/143380) -- Remove unused chat-history configuration argument [#143395](https://github.com/openclaw/openclaw/pull/143395). Thanks @vincentkoc. +- Remove unused chat-history configuration argument [#143395](https://github.com/openclaw/openclaw/pull/143395). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove duplicate Automations editor state [#143405](https://github.com/openclaw/openclaw/pull/143405) - Unify missing-command ownership resolution [#143411](https://github.com/openclaw/openclaw/pull/143411) - Share wizard prompt argument construction [#143430](https://github.com/openclaw/openclaw/pull/143430) @@ -4657,10 +4657,10 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Avoid an extra Code Mode diagnostic array copy [#143482](https://github.com/openclaw/openclaw/pull/143482) - Share Doctor session migration validation [#143507](https://github.com/openclaw/openclaw/pull/143507) - Reuse shared channel configuration writers [#143547](https://github.com/openclaw/openclaw/pull/143547) -- Derive sandbox settings types from validation schemas [#143551](https://github.com/openclaw/openclaw/pull/143551). Thanks @RomneyDa. -- Derive installation record types from validation schemas [#143552](https://github.com/openclaw/openclaw/pull/143552). Thanks @RomneyDa. -- Derive Codex configuration types from existing schemas [#143553](https://github.com/openclaw/openclaw/pull/143553). Thanks @RomneyDa. -- Share agent configuration schemas and types [#143554](https://github.com/openclaw/openclaw/pull/143554). Thanks @RomneyDa. +- Derive sandbox settings types from validation schemas [#143551](https://github.com/openclaw/openclaw/pull/143551). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive installation record types from validation schemas [#143552](https://github.com/openclaw/openclaw/pull/143552). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive Codex configuration types from existing schemas [#143553](https://github.com/openclaw/openclaw/pull/143553). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share agent configuration schemas and types [#143554](https://github.com/openclaw/openclaw/pull/143554). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share Memory Wiki report and index rendering [#143568](https://github.com/openclaw/openclaw/pull/143568) - Centralize Policy document validation [#143600](https://github.com/openclaw/openclaw/pull/143600) - Share Comfy workflow polling [#143653](https://github.com/openclaw/openclaw/pull/143653) @@ -4718,8 +4718,8 @@ Reported timings cover different local workloads and cannot be added into a rele **Improvements** - Reuse the deferred-promise helper in Gateway tests [2a4d6a10](https://github.com/openclaw/openclaw/commit/2a4d6a10ae6013ece39ae581762daf13b84ff1c9) -- Keep interactive preview actions consistent with fixture state [#138350](https://github.com/openclaw/openclaw/pull/138350). Thanks @vyctorbrzezowski. -- Disable unrelated catalog refreshes in isolated tests [#141266](https://github.com/openclaw/openclaw/pull/141266). Thanks @vincentkoc. +- Keep interactive preview actions consistent with fixture state [#138350](https://github.com/openclaw/openclaw/pull/138350). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Disable unrelated catalog refreshes in isolated tests [#141266](https://github.com/openclaw/openclaw/pull/141266). Thanks [@vincentkoc](https://github.com/vincentkoc). - Test the existing Parallels log-tail boundary [#141470](https://github.com/openclaw/openclaw/pull/141470) - Reuse provider registries in catalog-auth tests [#141682](https://github.com/openclaw/openclaw/pull/141682) - Avoid redundant waits in Kova authentication tests [#141693](https://github.com/openclaw/openclaw/pull/141693) @@ -4732,17 +4732,17 @@ Reported timings cover different local workloads and cannot be added into a rele - Make web-search validator fixtures independent of client defaults [#141792](https://github.com/openclaw/openclaw/pull/141792) - Simplify Discord recording test branches [#141804](https://github.com/openclaw/openclaw/pull/141804) - Keep the image-probe reply matcher private [#141823](https://github.com/openclaw/openclaw/pull/141823) -- Compact Code Mode source-validation test matrices [#141831](https://github.com/openclaw/openclaw/pull/141831). Thanks @RomneyDa. -- Compact CLI argument test matrices [#141832](https://github.com/openclaw/openclaw/pull/141832). Thanks @RomneyDa. -- Compact reasoning-tag test fixtures [#141833](https://github.com/openclaw/openclaw/pull/141833). Thanks @RomneyDa. -- Compact Control UI routing test fixtures [#141834](https://github.com/openclaw/openclaw/pull/141834). Thanks @RomneyDa. +- Compact Code Mode source-validation test matrices [#141831](https://github.com/openclaw/openclaw/pull/141831). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact CLI argument test matrices [#141832](https://github.com/openclaw/openclaw/pull/141832). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact reasoning-tag test fixtures [#141833](https://github.com/openclaw/openclaw/pull/141833). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact Control UI routing test fixtures [#141834](https://github.com/openclaw/openclaw/pull/141834). Thanks [@RomneyDa](https://github.com/RomneyDa). - Remove an unused Comfy test fixture option [#141844](https://github.com/openclaw/openclaw/pull/141844) -- Consolidate model-command policy tests [#141861](https://github.com/openclaw/openclaw/pull/141861). Thanks @RomneyDa. +- Consolidate model-command policy tests [#141861](https://github.com/openclaw/openclaw/pull/141861). Thanks [@RomneyDa](https://github.com/RomneyDa). - Test the HTML comparison script's actual response limit [#141877](https://github.com/openclaw/openclaw/pull/141877) -- Simplify Crabbox shell-detection test tables [#141888](https://github.com/openclaw/openclaw/pull/141888). Thanks @RomneyDa. -- Simplify Doctor plugin repair test tables [#141889](https://github.com/openclaw/openclaw/pull/141889). Thanks @RomneyDa. -- Simplify Active Memory policy test tables [#141890](https://github.com/openclaw/openclaw/pull/141890). Thanks @RomneyDa. -- Simplify message account-isolation test tables [#141891](https://github.com/openclaw/openclaw/pull/141891). Thanks @RomneyDa. +- Simplify Crabbox shell-detection test tables [#141888](https://github.com/openclaw/openclaw/pull/141888). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify Doctor plugin repair test tables [#141889](https://github.com/openclaw/openclaw/pull/141889). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify Active Memory policy test tables [#141890](https://github.com/openclaw/openclaw/pull/141890). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify message account-isolation test tables [#141891](https://github.com/openclaw/openclaw/pull/141891). Thanks [@RomneyDa](https://github.com/RomneyDa). - Consolidate Vitest project-loading checks [#141908](https://github.com/openclaw/openclaw/pull/141908) - Share fresh logger fixtures across core tests [#141911](https://github.com/openclaw/openclaw/pull/141911) - Remove implementation-specific configuration assertions [#141919](https://github.com/openclaw/openclaw/pull/141919) @@ -4750,18 +4750,18 @@ Reported timings cover different local workloads and cannot be added into a rele - Verify playback cache limits through writes [#141944](https://github.com/openclaw/openclaw/pull/141944) - Use runtime context in plugin compatibility tests [#141989](https://github.com/openclaw/openclaw/pull/141989) - Use controlled timing in fatal Git-outcome tests [#142009](https://github.com/openclaw/openclaw/pull/142009) -- Compact channel account-helper test tables [#142029](https://github.com/openclaw/openclaw/pull/142029). Thanks @RomneyDa. -- Compact execution-wrapper test fixtures [#142030](https://github.com/openclaw/openclaw/pull/142030). Thanks @RomneyDa. -- Compact secrets runtime test matrices [#142031](https://github.com/openclaw/openclaw/pull/142031). Thanks @RomneyDa. -- Simplify npm registry test tables [#142032](https://github.com/openclaw/openclaw/pull/142032). Thanks @RomneyDa. +- Compact channel account-helper test tables [#142029](https://github.com/openclaw/openclaw/pull/142029). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact execution-wrapper test fixtures [#142030](https://github.com/openclaw/openclaw/pull/142030). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact secrets runtime test matrices [#142031](https://github.com/openclaw/openclaw/pull/142031). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify npm registry test tables [#142032](https://github.com/openclaw/openclaw/pull/142032). Thanks [@RomneyDa](https://github.com/RomneyDa). - Test scroll reset within the existing preview [#142044](https://github.com/openclaw/openclaw/pull/142044) - Reuse text tool-result fixtures in agent tests [#142051](https://github.com/openclaw/openclaw/pull/142051) -- Add an Android branch-switching test scene [#142057](https://github.com/openclaw/openclaw/pull/142057). Thanks @vincentkoc. +- Add an Android branch-switching test scene [#142057](https://github.com/openclaw/openclaw/pull/142057). Thanks [@vincentkoc](https://github.com/vincentkoc). - Test watcher shutdown with real default intervals [#142079](https://github.com/openclaw/openclaw/pull/142079) -- Simplify inline-command test tables [#142081](https://github.com/openclaw/openclaw/pull/142081). Thanks @RomneyDa. -- Compact Gateway network-policy tests [#142082](https://github.com/openclaw/openclaw/pull/142082). Thanks @RomneyDa. -- Compact CLI configuration-guard tests [#142083](https://github.com/openclaw/openclaw/pull/142083). Thanks @RomneyDa. -- Compact WhatsApp formatting tests [#142084](https://github.com/openclaw/openclaw/pull/142084). Thanks @RomneyDa. +- Simplify inline-command test tables [#142081](https://github.com/openclaw/openclaw/pull/142081). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact Gateway network-policy tests [#142082](https://github.com/openclaw/openclaw/pull/142082). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact CLI configuration-guard tests [#142083](https://github.com/openclaw/openclaw/pull/142083). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact WhatsApp formatting tests [#142084](https://github.com/openclaw/openclaw/pull/142084). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share timestamped tool-result fixtures [#142094](https://github.com/openclaw/openclaw/pull/142094) - Align Mac script tests with system Bash [#142096](https://github.com/openclaw/openclaw/pull/142096) - Reuse deferred promises in chat lifecycle tests [#142098](https://github.com/openclaw/openclaw/pull/142098) @@ -4780,20 +4780,20 @@ Reported timings cover different local workloads and cannot be added into a rele - Reduce the Telegram Markdown chunking test fixture [#142365](https://github.com/openclaw/openclaw/pull/142365) - Consolidate duplicate group-policy resolver tests [#142366](https://github.com/openclaw/openclaw/pull/142366) - Share cloud-agent fixtures across New Session tests [#142376](https://github.com/openclaw/openclaw/pull/142376) -- Report successful installation in Docker test logs [#142405](https://github.com/openclaw/openclaw/pull/142405). Thanks @vincentkoc. +- Report successful installation in Docker test logs [#142405](https://github.com/openclaw/openclaw/pull/142405). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unused Telegram edit-test branches [#142411](https://github.com/openclaw/openclaw/pull/142411) -- Share plugin installation test path checks [#142448](https://github.com/openclaw/openclaw/pull/142448). Thanks @vincentkoc. +- Share plugin installation test path checks [#142448](https://github.com/openclaw/openclaw/pull/142448). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove an unreachable process-poll test branch [#142466](https://github.com/openclaw/openclaw/pull/142466) - Consolidate memory-flush test coverage [#142478](https://github.com/openclaw/openclaw/pull/142478) - Reuse compiled CLI code in message-cleanup tests [#142503](https://github.com/openclaw/openclaw/pull/142503) - Remove unused Doctor configuration test mocks [#142507](https://github.com/openclaw/openclaw/pull/142507) -- Settle composer animations before alignment tests [#142509](https://github.com/openclaw/openclaw/pull/142509). Thanks @RomneyDa. +- Settle composer animations before alignment tests [#142509](https://github.com/openclaw/openclaw/pull/142509). Thanks [@RomneyDa](https://github.com/RomneyDa). - Remove redundant Matrix QA scenario forwarding [#142546](https://github.com/openclaw/openclaw/pull/142546) - Remove real timeout waits from Telegram observation tests [#142602](https://github.com/openclaw/openclaw/pull/142602) - Remove unused terminal mocks from skills tests [#142604](https://github.com/openclaw/openclaw/pull/142604) - Remove duplicate deep-transcript import stress coverage [#142614](https://github.com/openclaw/openclaw/pull/142614) - Share changelog fixtures in release-note verifier tests [#142659](https://github.com/openclaw/openclaw/pull/142659) -- Clarify generated markers in live file-read tests [#142685](https://github.com/openclaw/openclaw/pull/142685). Thanks @RomneyDa. +- Clarify generated markers in live file-read tests [#142685](https://github.com/openclaw/openclaw/pull/142685). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share Discord action expectations across tests [#142690](https://github.com/openclaw/openclaw/pull/142690) - Share Codex lifecycle test fixtures [#142732](https://github.com/openclaw/openclaw/pull/142732) - Remove idle delay from cleanup regression testing [#142733](https://github.com/openclaw/openclaw/pull/142733) @@ -4808,62 +4808,62 @@ Reported timings cover different local workloads and cannot be added into a rele - Simplify session tests and expose early rollback setup failures [#142833](https://github.com/openclaw/openclaw/pull/142833) - Share reply-dispatch test expectations [#142845](https://github.com/openclaw/openclaw/pull/142845) - Simplify worker lifecycle test gates [#142865](https://github.com/openclaw/openclaw/pull/142865) -- Remove real deadline waits from Swift polling tests [#142882](https://github.com/openclaw/openclaw/pull/142882). Thanks @vincentkoc. -- Remove real-time waits from Mermaid timeout tests [#142886](https://github.com/openclaw/openclaw/pull/142886). Thanks @vincentkoc. +- Remove real deadline waits from Swift polling tests [#142882](https://github.com/openclaw/openclaw/pull/142882). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Remove real-time waits from Mermaid timeout tests [#142886](https://github.com/openclaw/openclaw/pull/142886). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse deferred fixtures in cron lifecycle tests [#142887](https://github.com/openclaw/openclaw/pull/142887) -- Remove duplicate OpenCode Go metadata testing [#142894](https://github.com/openclaw/openclaw/pull/142894). Thanks @vincentkoc. +- Remove duplicate OpenCode Go metadata testing [#142894](https://github.com/openclaw/openclaw/pull/142894). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate duplicate setup inference tests [#142899](https://github.com/openclaw/openclaw/pull/142899) - Advance ngrok startup deadlines in process tests [#142903](https://github.com/openclaw/openclaw/pull/142903) -- Reuse builds in service-worker update tests [#142904](https://github.com/openclaw/openclaw/pull/142904). Thanks @vincentkoc. -- Reduce repeated compilation in worker-cache tests [#142911](https://github.com/openclaw/openclaw/pull/142911). Thanks @vincentkoc. +- Reuse builds in service-worker update tests [#142904](https://github.com/openclaw/openclaw/pull/142904). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reduce repeated compilation in worker-cache tests [#142911](https://github.com/openclaw/openclaw/pull/142911). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reduce startup work for focused fast tests [#142912](https://github.com/openclaw/openclaw/pull/142912) -- Reduce upgrade-test configuration launches [#142917](https://github.com/openclaw/openclaw/pull/142917). Thanks @vincentkoc. +- Reduce upgrade-test configuration launches [#142917](https://github.com/openclaw/openclaw/pull/142917). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse shared response-cancellation fixtures [#142919](https://github.com/openclaw/openclaw/pull/142919) - Share Google web-search test options [#142928](https://github.com/openclaw/openclaw/pull/142928) - Reuse Memory Wiki source-state fixtures [#142934](https://github.com/openclaw/openclaw/pull/142934) - Share agent-turn test input fixtures [#142962](https://github.com/openclaw/openclaw/pull/142962) -- Reuse package fixtures in security-scan tests [#142982](https://github.com/openclaw/openclaw/pull/142982). Thanks @vincentkoc. +- Reuse package fixtures in security-scan tests [#142982](https://github.com/openclaw/openclaw/pull/142982). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share cron context-window test fixtures [#142985](https://github.com/openclaw/openclaw/pull/142985) -- Remove duplicate model-usage aggregation testing [#142990](https://github.com/openclaw/openclaw/pull/142990). Thanks @vincentkoc. +- Remove duplicate model-usage aggregation testing [#142990](https://github.com/openclaw/openclaw/pull/142990). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove redundant worker-transform test compilation [#143009](https://github.com/openclaw/openclaw/pull/143009) -- Reuse isolated Git fixtures in release-evidence tests [#143014](https://github.com/openclaw/openclaw/pull/143014). Thanks @vincentkoc. +- Reuse isolated Git fixtures in release-evidence tests [#143014](https://github.com/openclaw/openclaw/pull/143014). Thanks [@vincentkoc](https://github.com/vincentkoc). - Serialize worker-transform test sequences [#143034](https://github.com/openclaw/openclaw/pull/143034) - Share Codex context-engine test setup [#143035](https://github.com/openclaw/openclaw/pull/143035) -- Build phone recovery test fixture once per suite [#143046](https://github.com/openclaw/openclaw/pull/143046). Thanks @vincentkoc. +- Build phone recovery test fixture once per suite [#143046](https://github.com/openclaw/openclaw/pull/143046). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse Doctor plugin-repair success fixtures [#143047](https://github.com/openclaw/openclaw/pull/143047) - Consolidate duplicate QA Lab image-result coverage [#143048](https://github.com/openclaw/openclaw/pull/143048) - Remove duplicate warm chat metadata coverage [#143059](https://github.com/openclaw/openclaw/pull/143059) -- Reuse compiled feature-plugin test fixtures [#143062](https://github.com/openclaw/openclaw/pull/143062). Thanks @vincentkoc. +- Reuse compiled feature-plugin test fixtures [#143062](https://github.com/openclaw/openclaw/pull/143062). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate xAI credential-reference test fixtures [#143075](https://github.com/openclaw/openclaw/pull/143075) - Share Doctor routing-warning fixtures [#143076](https://github.com/openclaw/openclaw/pull/143076) - Share Memory Wiki session-search fixtures [#143084](https://github.com/openclaw/openclaw/pull/143084) -- Remove obsolete WhatsApp session snapshot coverage [#143104](https://github.com/openclaw/openclaw/pull/143104). Thanks @vincentkoc. +- Remove obsolete WhatsApp session snapshot coverage [#143104](https://github.com/openclaw/openclaw/pull/143104). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse remaining xAI secret-reference test fixtures [#143108](https://github.com/openclaw/openclaw/pull/143108) - Consolidate proof-policy identity test setup [#143112](https://github.com/openclaw/openclaw/pull/143112) -- Reuse the diagnostics installation test package [#143116](https://github.com/openclaw/openclaw/pull/143116). Thanks @vincentkoc. +- Reuse the diagnostics installation test package [#143116](https://github.com/openclaw/openclaw/pull/143116). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate provider authentication precedence tests [#143117](https://github.com/openclaw/openclaw/pull/143117) -- Remove duplicate MiniMax M2.7 input coverage [#143122](https://github.com/openclaw/openclaw/pull/143122). Thanks @vincentkoc. +- Remove duplicate MiniMax M2.7 input coverage [#143122](https://github.com/openclaw/openclaw/pull/143122). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share status-rendering test fixtures [#143124](https://github.com/openclaw/openclaw/pull/143124) -- Shorten deliberate SQLite timeout test waits [#143130](https://github.com/openclaw/openclaw/pull/143130). Thanks @vincentkoc. -- Reuse Git seed setup in Testbox tests [#143154](https://github.com/openclaw/openclaw/pull/143154). Thanks @vincentkoc. +- Shorten deliberate SQLite timeout test waits [#143130](https://github.com/openclaw/openclaw/pull/143130). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse Git seed setup in Testbox tests [#143154](https://github.com/openclaw/openclaw/pull/143154). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share agent-turn execution test defaults [#143166](https://github.com/openclaw/openclaw/pull/143166) -- Remove redundant Mistral cache-cost arithmetic coverage [#143172](https://github.com/openclaw/openclaw/pull/143172). Thanks @vincentkoc. +- Remove redundant Mistral cache-cost arithmetic coverage [#143172](https://github.com/openclaw/openclaw/pull/143172). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Memory Wiki visibility test callbacks [#143181](https://github.com/openclaw/openclaw/pull/143181) -- Reduce Telegram policy test startup overhead [#143192](https://github.com/openclaw/openclaw/pull/143192). Thanks @vincentkoc. +- Reduce Telegram policy test startup overhead [#143192](https://github.com/openclaw/openclaw/pull/143192). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share mcporter security-audit test inputs [#143209](https://github.com/openclaw/openclaw/pull/143209) - Share Codex migration request fixtures [#143221](https://github.com/openclaw/openclaw/pull/143221) -- Remove duplicate xAI stream tests [#143222](https://github.com/openclaw/openclaw/pull/143222). Thanks @vincentkoc. -- Reuse initial certificates in proxy lifecycle tests [#143247](https://github.com/openclaw/openclaw/pull/143247). Thanks @vincentkoc. -- Reuse prepared CLI artifacts in Telegram QA tests [#143253](https://github.com/openclaw/openclaw/pull/143253). Thanks @vincentkoc. +- Remove duplicate xAI stream tests [#143222](https://github.com/openclaw/openclaw/pull/143222). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse initial certificates in proxy lifecycle tests [#143247](https://github.com/openclaw/openclaw/pull/143247). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse prepared CLI artifacts in Telegram QA tests [#143253](https://github.com/openclaw/openclaw/pull/143253). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share ACP metadata-update test setup [#143261](https://github.com/openclaw/openclaw/pull/143261) - Reduce repeated manifest searches during test-worker preparation [#143271](https://github.com/openclaw/openclaw/pull/143271) -- Remove unused Doctor catalog test setup [#143272](https://github.com/openclaw/openclaw/pull/143272). Thanks @vincentkoc. -- Reuse certificate setup in proxy tests [#143298](https://github.com/openclaw/openclaw/pull/143298). Thanks @vincentkoc. +- Remove unused Doctor catalog test setup [#143272](https://github.com/openclaw/openclaw/pull/143272). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse certificate setup in proxy tests [#143298](https://github.com/openclaw/openclaw/pull/143298). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Codex conversation test clients [#143300](https://github.com/openclaw/openclaw/pull/143300) - Share Docker timeout test fixtures [#143309](https://github.com/openclaw/openclaw/pull/143309) - Check authoritative restart state in update tests [#143316](https://github.com/openclaw/openclaw/pull/143316) -- Remove redundant usage-cost coverage [#143318](https://github.com/openclaw/openclaw/pull/143318). Thanks @vincentkoc. -- Reduce media QA startup overhead [#143326](https://github.com/openclaw/openclaw/pull/143326). Thanks @vincentkoc. +- Remove redundant usage-cost coverage [#143318](https://github.com/openclaw/openclaw/pull/143318). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reduce media QA startup overhead [#143326](https://github.com/openclaw/openclaw/pull/143326). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Feishu reply account test fixtures [#143336](https://github.com/openclaw/openclaw/pull/143336) - Share Docker package-builder fixtures [#143338](https://github.com/openclaw/openclaw/pull/143338) - Test archive installation with real workspaces [#143339](https://github.com/openclaw/openclaw/pull/143339) @@ -4871,7 +4871,7 @@ Reported timings cover different local workloads and cannot be added into a rele - Share Meta and Xiaomi test guards [#143358](https://github.com/openclaw/openclaw/pull/143358) - Share Feishu fetched-message fixtures [#143362](https://github.com/openclaw/openclaw/pull/143362) - Reuse Slack approval test configuration [#143370](https://github.com/openclaw/openclaw/pull/143370) -- Remove unused channel catalog fixtures [#143373](https://github.com/openclaw/openclaw/pull/143373). Thanks @vincentkoc. +- Remove unused channel catalog fixtures [#143373](https://github.com/openclaw/openclaw/pull/143373). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify Chutes test responses [#143382](https://github.com/openclaw/openclaw/pull/143382) - Share deferred fixtures in routing tests [#143383](https://github.com/openclaw/openclaw/pull/143383) - Avoid cold plugin loading in fallback tests [#143392](https://github.com/openclaw/openclaw/pull/143392) @@ -4879,23 +4879,23 @@ Reported timings cover different local workloads and cannot be added into a rele - Exercise real inbound orchestration in Signal tests [#143412](https://github.com/openclaw/openclaw/pull/143412) - Reuse compiled SDK fixtures in MCP tests [#143415](https://github.com/openclaw/openclaw/pull/143415) - Reuse prepared CLI in JSON-error tests [#143427](https://github.com/openclaw/openclaw/pull/143427) -- Remove duplicate Discord presence coverage [#143435](https://github.com/openclaw/openclaw/pull/143435). Thanks @vincentkoc. +- Remove duplicate Discord presence coverage [#143435](https://github.com/openclaw/openclaw/pull/143435). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share image resource test setup [#143443](https://github.com/openclaw/openclaw/pull/143443) -- Reuse pristine Git seeds in worktree tests [#143469](https://github.com/openclaw/openclaw/pull/143469). Thanks @RomneyDa. +- Reuse pristine Git seeds in worktree tests [#143469](https://github.com/openclaw/openclaw/pull/143469). Thanks [@RomneyDa](https://github.com/RomneyDa). - Run isolated CLI cleanup tests concurrently [#143481](https://github.com/openclaw/openclaw/pull/143481) - Reuse TypeScript transforms in update tests [#143487](https://github.com/openclaw/openclaw/pull/143487) -- Remove unnecessary diagnostic timeout test waiting [#143514](https://github.com/openclaw/openclaw/pull/143514). Thanks @RomneyDa. +- Remove unnecessary diagnostic timeout test waiting [#143514](https://github.com/openclaw/openclaw/pull/143514). Thanks [@RomneyDa](https://github.com/RomneyDa). - Reuse source transforms in proxy exit tests [#143527](https://github.com/openclaw/openclaw/pull/143527) - Simplify exec-host approval test fixtures [#143529](https://github.com/openclaw/openclaw/pull/143529) - Share Signal quote test inputs [#143532](https://github.com/openclaw/openclaw/pull/143532) -- Compact shell-completion test tables [#143533](https://github.com/openclaw/openclaw/pull/143533). Thanks @RomneyDa. -- Compact reply-payload test matrices [#143534](https://github.com/openclaw/openclaw/pull/143534). Thanks @RomneyDa. -- Compact CI concurrency test cases [#143535](https://github.com/openclaw/openclaw/pull/143535). Thanks @RomneyDa. -- Compact Labs configuration tests [#143536](https://github.com/openclaw/openclaw/pull/143536). Thanks @RomneyDa. +- Compact shell-completion test tables [#143533](https://github.com/openclaw/openclaw/pull/143533). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact reply-payload test matrices [#143534](https://github.com/openclaw/openclaw/pull/143534). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact CI concurrency test cases [#143535](https://github.com/openclaw/openclaw/pull/143535). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact Labs configuration tests [#143536](https://github.com/openclaw/openclaw/pull/143536). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share Discord REST proxy test spies [#143537](https://github.com/openclaw/openclaw/pull/143537) - Share empty plugin metadata fixtures [#143544](https://github.com/openclaw/openclaw/pull/143544) - Reuse transforms across cron output tests [#143559](https://github.com/openclaw/openclaw/pull/143559) -- Exercise Teams timeout handling through Gateway send [#143572](https://github.com/openclaw/openclaw/pull/143572). Thanks @RomneyDa. +- Exercise Teams timeout handling through Gateway send [#143572](https://github.com/openclaw/openclaw/pull/143572). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share QA mock-provider decisions [#143603](https://github.com/openclaw/openclaw/pull/143603) - Strengthen optional plugin-tool environment coverage [#143613](https://github.com/openclaw/openclaw/pull/143613) - Reuse transformed code across native Gateway tests [#143628](https://github.com/openclaw/openclaw/pull/143628) @@ -4913,67 +4913,67 @@ Reported timings cover different local workloads and cannot be added into a rele - Reuse storage fixtures in sidebar tests [#143697](https://github.com/openclaw/openclaw/pull/143697) - Remove obsolete Venice test environment overrides [#143720](https://github.com/openclaw/openclaw/pull/143720) - Share SQLite index-drift test setup [#143749](https://github.com/openclaw/openclaw/pull/143749) -- Speed up SQLite snapshot test byte comparisons [#143751](https://github.com/openclaw/openclaw/pull/143751). Thanks @RomneyDa. +- Speed up SQLite snapshot test byte comparisons [#143751](https://github.com/openclaw/openclaw/pull/143751). Thanks [@RomneyDa](https://github.com/RomneyDa). - Simplify configuration test environment fixtures [#143815](https://github.com/openclaw/openclaw/pull/143815) - Remove Responses transport test globals [#143850](https://github.com/openclaw/openclaw/pull/143850) - Remove model planner test hooks [#143851](https://github.com/openclaw/openclaw/pull/143851) - Simplify image-generation test fixtures [#143862](https://github.com/openclaw/openclaw/pull/143862) -- Remove duplicate Signal access test [#143870](https://github.com/openclaw/openclaw/pull/143870). Thanks @vincentkoc. +- Remove duplicate Signal access test [#143870](https://github.com/openclaw/openclaw/pull/143870). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove models-writer test plumbing [#143874](https://github.com/openclaw/openclaw/pull/143874) -- Cover update permission loss during discovery [#143877](https://github.com/openclaw/openclaw/pull/143877). Thanks @fuller-stack-dev. +- Cover update permission loss during discovery [#143877](https://github.com/openclaw/openclaw/pull/143877). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). - Move type contracts to compiler-owned checks [#143888](https://github.com/openclaw/openclaw/pull/143888) - Share sidebar drag-data fixtures [#143901](https://github.com/openclaw/openclaw/pull/143901) -- Remove duplicate Telegram history coverage [#143904](https://github.com/openclaw/openclaw/pull/143904). Thanks @vincentkoc. +- Remove duplicate Telegram history coverage [#143904](https://github.com/openclaw/openclaw/pull/143904). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify configuration environment fixtures [#143925](https://github.com/openclaw/openclaw/pull/143925) -- Remove duplicate WhatsApp listener tests [#143962](https://github.com/openclaw/openclaw/pull/143962). Thanks @vincentkoc. +- Remove duplicate WhatsApp listener tests [#143962](https://github.com/openclaw/openclaw/pull/143962). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Memory Wiki deferred fixtures [#143978](https://github.com/openclaw/openclaw/pull/143978) -- Remove duplicate inbound-audio coverage [#143996](https://github.com/openclaw/openclaw/pull/143996). Thanks @vincentkoc. +- Remove duplicate inbound-audio coverage [#143996](https://github.com/openclaw/openclaw/pull/143996). Thanks [@vincentkoc](https://github.com/vincentkoc). - Test usage authentication through owning helpers [#143997](https://github.com/openclaw/openclaw/pull/143997) - Reuse auto-reply promise fixtures [#144004](https://github.com/openclaw/openclaw/pull/144004) - Exercise shared HTTP behavior in media tests [#144024](https://github.com/openclaw/openclaw/pull/144024) -- Remove duplicate reply cancellation coverage [#144028](https://github.com/openclaw/openclaw/pull/144028). Thanks @vincentkoc. +- Remove duplicate reply cancellation coverage [#144028](https://github.com/openclaw/openclaw/pull/144028). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify Discord directory fixtures [#144033](https://github.com/openclaw/openclaw/pull/144033) - Decouple UI behavior tests from class lists [#144050](https://github.com/openclaw/openclaw/pull/144050) -- Remove duplicate login-shell PATH test [#144051](https://github.com/openclaw/openclaw/pull/144051). Thanks @vincentkoc. +- Remove duplicate login-shell PATH test [#144051](https://github.com/openclaw/openclaw/pull/144051). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse terminal deferred fixtures [#144058](https://github.com/openclaw/openclaw/pull/144058) -- Remove duplicate metadata scope test [#144072](https://github.com/openclaw/openclaw/pull/144072). Thanks @vincentkoc. +- Remove duplicate metadata scope test [#144072](https://github.com/openclaw/openclaw/pull/144072). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Slack approval configuration fixtures [#144076](https://github.com/openclaw/openclaw/pull/144076) - Simplify source-reply test inputs [#144080](https://github.com/openclaw/openclaw/pull/144080) - Reuse ClawHub HTTP test helpers [#144090](https://github.com/openclaw/openclaw/pull/144090) -- Remove duplicate missing-exporter test [#144091](https://github.com/openclaw/openclaw/pull/144091). Thanks @vincentkoc. +- Remove duplicate missing-exporter test [#144091](https://github.com/openclaw/openclaw/pull/144091). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate package-source update tests [#144097](https://github.com/openclaw/openclaw/pull/144097) -- Remove duplicate realtime authentication test [#144105](https://github.com/openclaw/openclaw/pull/144105). Thanks @vincentkoc. +- Remove duplicate realtime authentication test [#144105](https://github.com/openclaw/openclaw/pull/144105). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse compiled source in startup tests [#144110](https://github.com/openclaw/openclaw/pull/144110) - Reuse terminal upload and queue fixtures [#144116](https://github.com/openclaw/openclaw/pull/144116) - Consolidate Brave startup fixtures [#144117](https://github.com/openclaw/openclaw/pull/144117) - Simplify Firecrawl credential fixtures [#144122](https://github.com/openclaw/openclaw/pull/144122) -- Remove duplicate CLI session-cleanup coverage [#144126](https://github.com/openclaw/openclaw/pull/144126). Thanks @vincentkoc. +- Remove duplicate CLI session-cleanup coverage [#144126](https://github.com/openclaw/openclaw/pull/144126). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify Quick Chat test inputs [#144135](https://github.com/openclaw/openclaw/pull/144135) **Bug fixes** -- Load browser cleanup before ACP test deadlines [441f69b2](https://github.com/openclaw/openclaw/commit/441f69b21fd77839345dfe247d82cbba8135984f). Thanks @Baumus. -- Require completed installation in Claw export fixtures [#120843](https://github.com/openclaw/openclaw/pull/120843). Thanks @vincentkoc. -- Find Slack QA presentations by exact message timestamp [#127300](https://github.com/openclaw/openclaw/pull/127300). Thanks @RomneyDa. +- Load browser cleanup before ACP test deadlines [441f69b2](https://github.com/openclaw/openclaw/commit/441f69b21fd77839345dfe247d82cbba8135984f). Thanks [@Baumus](https://github.com/Baumus). +- Require completed installation in Claw export fixtures [#120843](https://github.com/openclaw/openclaw/pull/120843). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Find Slack QA presentations by exact message timestamp [#127300](https://github.com/openclaw/openclaw/pull/127300). Thanks [@RomneyDa](https://github.com/RomneyDa). - Require completed serving evidence in managed upgrade tests [#141663](https://github.com/openclaw/openclaw/pull/141663) - Set explicit permissions for Doctor test state [#141672](https://github.com/openclaw/openclaw/pull/141672) - Restore the resize observer after multi-select tests [#141673](https://github.com/openclaw/openclaw/pull/141673) - Synchronize containment tests with real process stops [#141681](https://github.com/openclaw/openclaw/pull/141681) -- Preserve onboarding-test installation failure diagnostics [#141689](https://github.com/openclaw/openclaw/pull/141689). Thanks @vincentkoc and @RomneyDa. +- Preserve onboarding-test installation failure diagnostics [#141689](https://github.com/openclaw/openclaw/pull/141689). Thanks [@vincentkoc](https://github.com/vincentkoc) and [@RomneyDa](https://github.com/RomneyDa). - Preserve Doctor-written configuration in secret-reference tests [#141768](https://github.com/openclaw/openclaw/pull/141768) - Complete manifest fixtures in capability-provider tests [#141855](https://github.com/openclaw/openclaw/pull/141855) - Isolate plugin artifact loader test fixtures [#141887](https://github.com/openclaw/openclaw/pull/141887) - Preserve inbound references on queued QA replies [#141905](https://github.com/openclaw/openclaw/pull/141905) -- Align plugin install and removal QA expectations [#141964](https://github.com/openclaw/openclaw/pull/141964). Thanks @RomneyDa. -- Prepare Docker images for sandbox QA [#141965](https://github.com/openclaw/openclaw/pull/141965). Thanks @RomneyDa. -- Remove QA credentials through Gateway logout [#141974](https://github.com/openclaw/openclaw/pull/141974). Thanks @RomneyDa. -- Align Claude QA fixture with session initialization [#141978](https://github.com/openclaw/openclaw/pull/141978). Thanks @RomneyDa. -- Select compact progress for Slack draft QA [#141980](https://github.com/openclaw/openclaw/pull/141980). Thanks @RomneyDa. -- Target Teams QA timeouts at message activities [#141985](https://github.com/openclaw/openclaw/pull/141985). Thanks @RomneyDa. +- Align plugin install and removal QA expectations [#141964](https://github.com/openclaw/openclaw/pull/141964). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Prepare Docker images for sandbox QA [#141965](https://github.com/openclaw/openclaw/pull/141965). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Remove QA credentials through Gateway logout [#141974](https://github.com/openclaw/openclaw/pull/141974). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Align Claude QA fixture with session initialization [#141978](https://github.com/openclaw/openclaw/pull/141978). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Select compact progress for Slack draft QA [#141980](https://github.com/openclaw/openclaw/pull/141980). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Target Teams QA timeouts at message activities [#141985](https://github.com/openclaw/openclaw/pull/141985). Thanks [@RomneyDa](https://github.com/RomneyDa). - Drain heartbeat wakes before plugin test teardown [#142036](https://github.com/openclaw/openclaw/pull/142036) - Isolate keyless model tests from host credentials [#142049](https://github.com/openclaw/openclaw/pull/142049) -- Finish mock-provider continuations after settled work [#142060](https://github.com/openclaw/openclaw/pull/142060). Thanks @RomneyDa. -- Remove port-reuse races from probe tests [#142088](https://github.com/openclaw/openclaw/pull/142088). Thanks @RomneyDa. +- Finish mock-provider continuations after settled work [#142060](https://github.com/openclaw/openclaw/pull/142060). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Remove port-reuse races from probe tests [#142088](https://github.com/openclaw/openclaw/pull/142088). Thanks [@RomneyDa](https://github.com/RomneyDa). - Correct core session status in browser fixtures [#142097](https://github.com/openclaw/openclaw/pull/142097) - Isolate fresh mock write scenarios from earlier completions [#142137](https://github.com/openclaw/openclaw/pull/142137) - Isolate mocked Chromium selection from host settings [#142150](https://github.com/openclaw/openclaw/pull/142150) @@ -4986,27 +4986,27 @@ Reported timings cover different local workloads and cannot be added into a rele - Avoid unnecessary provider discovery in sticker tests [#142281](https://github.com/openclaw/openclaw/pull/142281) - Finish Activity test imports before teardown [#142282](https://github.com/openclaw/openclaw/pull/142282) - Wait for Gateway event-log test cleanup [#142314](https://github.com/openclaw/openclaw/pull/142314) -- Wait for startup completion in first-run recovery tests [#142339](https://github.com/openclaw/openclaw/pull/142339). Thanks @vyctorbrzezowski. -- Keep upgrade-test registry helpers on the same version [#142353](https://github.com/openclaw/openclaw/pull/142353). Thanks @RomneyDa. +- Wait for startup completion in first-run recovery tests [#142339](https://github.com/openclaw/openclaw/pull/142339). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Keep upgrade-test registry helpers on the same version [#142353](https://github.com/openclaw/openclaw/pull/142353). Thanks [@RomneyDa](https://github.com/RomneyDa). - Refresh Telegram QA button lookup after menu edits [#142473](https://github.com/openclaw/openclaw/pull/142473) -- Stabilize Windows Claude CLI test fixtures [#142520](https://github.com/openclaw/openclaw/pull/142520). Thanks @vincentkoc. -- Recognize unavailable upstream models in live tests [#142561](https://github.com/openclaw/openclaw/pull/142561). Thanks @RomneyDa. -- Show nested onboarding failures in validation logs [#142645](https://github.com/openclaw/openclaw/pull/142645). Thanks @vincentkoc. +- Stabilize Windows Claude CLI test fixtures [#142520](https://github.com/openclaw/openclaw/pull/142520). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Recognize unavailable upstream models in live tests [#142561](https://github.com/openclaw/openclaw/pull/142561). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Show nested onboarding failures in validation logs [#142645](https://github.com/openclaw/openclaw/pull/142645). Thanks [@vincentkoc](https://github.com/vincentkoc). - Wait for settled attachment test geometry [#142728](https://github.com/openclaw/openclaw/pull/142728) -- Stabilize Android image-decoding tests on Linux [#142752](https://github.com/openclaw/openclaw/pull/142752). Thanks @vincentkoc. +- Stabilize Android image-decoding tests on Linux [#142752](https://github.com/openclaw/openclaw/pull/142752). Thanks [@vincentkoc](https://github.com/vincentkoc). - Synchronize cloud-worker settings browser tests [#142763](https://github.com/openclaw/openclaw/pull/142763) -- Wait for Signal delivery completion in tests [#142775](https://github.com/openclaw/openclaw/pull/142775). Thanks @vincentkoc. +- Wait for Signal delivery completion in tests [#142775](https://github.com/openclaw/openclaw/pull/142775). Thanks [@vincentkoc](https://github.com/vincentkoc). - Exercise same-version candidates in upgrade tests [#142811](https://github.com/openclaw/openclaw/pull/142811) -- Run packaged QA commands with the selected candidate [#142925](https://github.com/openclaw/openclaw/pull/142925). Thanks @vincentkoc. +- Run packaged QA commands with the selected candidate [#142925](https://github.com/openclaw/openclaw/pull/142925). Thanks [@vincentkoc](https://github.com/vincentkoc). - Close reloaded database caches in token tests [#142978](https://github.com/openclaw/openclaw/pull/142978) -- Isolate managed-update tests from host system services [#143013](https://github.com/openclaw/openclaw/pull/143013). Thanks @vincentkoc. +- Isolate managed-update tests from host system services [#143013](https://github.com/openclaw/openclaw/pull/143013). Thanks [@vincentkoc](https://github.com/vincentkoc). - Close Gateway test databases across module resets [#143045](https://github.com/openclaw/openclaw/pull/143045) - Close skill-upload test databases during cleanup [#143071](https://github.com/openclaw/openclaw/pull/143071) - Stabilize Gateway compaction race test synchronization [#143072](https://github.com/openclaw/openclaw/pull/143072) -- Prepare Gateway test startup and preserve Cron cleanup errors [#143102](https://github.com/openclaw/openclaw/pull/143102). Thanks @vincentkoc. +- Prepare Gateway test startup and preserve Cron cleanup errors [#143102](https://github.com/openclaw/openclaw/pull/143102). Thanks [@vincentkoc](https://github.com/vincentkoc). - Measure attachment layout within one browser frame [#143103](https://github.com/openclaw/openclaw/pull/143103) - Wait for socket closure before stream-test cleanup finishes [#143133](https://github.com/openclaw/openclaw/pull/143133) -- Allow more startup time for systemd test fixtures [#143134](https://github.com/openclaw/openclaw/pull/143134). Thanks @vincentkoc. +- Allow more startup time for systemd test fixtures [#143134](https://github.com/openclaw/openclaw/pull/143134). Thanks [@vincentkoc](https://github.com/vincentkoc). - Isolate the Gateway prewarm test repository [#143161](https://github.com/openclaw/openclaw/pull/143161) - Close paired-device test databases before deleting files [#143168](https://github.com/openclaw/openclaw/pull/143168) - Clean up chat preview listeners in UI tests [#143191](https://github.com/openclaw/openclaw/pull/143191) @@ -5016,32 +5016,32 @@ Reported timings cover different local workloads and cannot be added into a rele - Isolate subagent announcement tests [#143251](https://github.com/openclaw/openclaw/pull/143251) - Stabilize Doctor source-isolation tests on tmpfs [#143258](https://github.com/openclaw/openclaw/pull/143258) - Restore empty-transcript compaction coverage [#143317](https://github.com/openclaw/openclaw/pull/143317) -- Allow subpixel rounding in attachment layout tests [#143333](https://github.com/openclaw/openclaw/pull/143333). Thanks @vincentkoc. +- Allow subpixel rounding in attachment layout tests [#143333](https://github.com/openclaw/openclaw/pull/143333). Thanks [@vincentkoc](https://github.com/vincentkoc). - Close Control UI test databases before cleanup [#143398](https://github.com/openclaw/openclaw/pull/143398) - Close pairing test databases before cleanup [#143401](https://github.com/openclaw/openclaw/pull/143401) - Close token-store test databases before cleanup [#143409](https://github.com/openclaw/openclaw/pull/143409) - Close node-pairing test databases before cleanup [#143418](https://github.com/openclaw/openclaw/pull/143418) -- Complete bundled plugin directory test mock [#143444](https://github.com/openclaw/openclaw/pull/143444). Thanks @RomneyDa. -- Synchronize model catalog browser tests [#143445](https://github.com/openclaw/openclaw/pull/143445). Thanks @RomneyDa. -- Allow Chrome tab indexing time in extension tests [#143447](https://github.com/openclaw/openclaw/pull/143447). Thanks @RomneyDa. -- Recognize expected MCP resolver test diagnostics [#143450](https://github.com/openclaw/openclaw/pull/143450). Thanks @RomneyDa. -- Isolate announcement test dependencies [#143465](https://github.com/openclaw/openclaw/pull/143465). Thanks @vincentkoc. -- Recognize Slack card progress in QA checks [#143562](https://github.com/openclaw/openclaw/pull/143562). Thanks @RomneyDa. -- Correct Telegram QA receipt and preview expectations [#143563](https://github.com/openclaw/openclaw/pull/143563). Thanks @RomneyDa. -- Run repository CLI health scenarios exclusively [#143564](https://github.com/openclaw/openclaw/pull/143564). Thanks @RomneyDa. -- Correct package uninstall assertions [#143565](https://github.com/openclaw/openclaw/pull/143565). Thanks @RomneyDa. -- Accept intentional memory preparation diagnostics in QA [#143570](https://github.com/openclaw/openclaw/pull/143570). Thanks @RomneyDa. -- Coordinate Matrix QA progress with command completion [#143573](https://github.com/openclaw/openclaw/pull/143573). Thanks @RomneyDa. -- Isolate CLI announcement checks and await transcript replies [#143576](https://github.com/openclaw/openclaw/pull/143576). Thanks @RomneyDa. -- Bundle Telegram QA evidence helpers [#143582](https://github.com/openclaw/openclaw/pull/143582). Thanks @RomneyDa. +- Complete bundled plugin directory test mock [#143444](https://github.com/openclaw/openclaw/pull/143444). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Synchronize model catalog browser tests [#143445](https://github.com/openclaw/openclaw/pull/143445). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Allow Chrome tab indexing time in extension tests [#143447](https://github.com/openclaw/openclaw/pull/143447). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Recognize expected MCP resolver test diagnostics [#143450](https://github.com/openclaw/openclaw/pull/143450). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Isolate announcement test dependencies [#143465](https://github.com/openclaw/openclaw/pull/143465). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Recognize Slack card progress in QA checks [#143562](https://github.com/openclaw/openclaw/pull/143562). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct Telegram QA receipt and preview expectations [#143563](https://github.com/openclaw/openclaw/pull/143563). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Run repository CLI health scenarios exclusively [#143564](https://github.com/openclaw/openclaw/pull/143564). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct package uninstall assertions [#143565](https://github.com/openclaw/openclaw/pull/143565). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Accept intentional memory preparation diagnostics in QA [#143570](https://github.com/openclaw/openclaw/pull/143570). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Coordinate Matrix QA progress with command completion [#143573](https://github.com/openclaw/openclaw/pull/143573). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Isolate CLI announcement checks and await transcript replies [#143576](https://github.com/openclaw/openclaw/pull/143576). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Bundle Telegram QA evidence helpers [#143582](https://github.com/openclaw/openclaw/pull/143582). Thanks [@RomneyDa](https://github.com/RomneyDa). - Isolate Codex auth-refresh integration providers [#143585](https://github.com/openclaw/openclaw/pull/143585) - Close heartbeat test databases before fixture deletion [#143606](https://github.com/openclaw/openclaw/pull/143606) - Repair worker setup browser fixtures [#143666](https://github.com/openclaw/openclaw/pull/143666) - Align QA Lab OpenAI defaults with canonical model IDs [#143674](https://github.com/openclaw/openclaw/pull/143674) -- Correct Discord transcript provider assertions [#143689](https://github.com/openclaw/openclaw/pull/143689). Thanks @RomneyDa. -- Refresh model catalogs before ClawRouter assertions [#143692](https://github.com/openclaw/openclaw/pull/143692). Thanks @RomneyDa. -- Align timeout tests with direct Claude CLI execution [#143696](https://github.com/openclaw/openclaw/pull/143696). Thanks @RomneyDa. -- Correct Telegram model-picker recovery tests [#143704](https://github.com/openclaw/openclaw/pull/143704). Thanks @RomneyDa. +- Correct Discord transcript provider assertions [#143689](https://github.com/openclaw/openclaw/pull/143689). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Refresh model catalogs before ClawRouter assertions [#143692](https://github.com/openclaw/openclaw/pull/143692). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Align timeout tests with direct Claude CLI execution [#143696](https://github.com/openclaw/openclaw/pull/143696). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct Telegram model-picker recovery tests [#143704](https://github.com/openclaw/openclaw/pull/143704). Thanks [@RomneyDa](https://github.com/RomneyDa). - Wait for updater process-group cleanup in tests [#143705](https://github.com/openclaw/openclaw/pull/143705) - Stabilize concurrent ClawHub catalog assertions [#143710](https://github.com/openclaw/openclaw/pull/143710) - Consolidate config environments and isolate Doctor fixtures [#143762](https://github.com/openclaw/openclaw/pull/143762) @@ -5055,7 +5055,7 @@ Reported timings cover different local workloads and cannot be added into a rele - Keep hardlink fixtures on one filesystem [#143945](https://github.com/openclaw/openclaw/pull/143945) - Drain transcript indexing before test cleanup [#143964](https://github.com/openclaw/openclaw/pull/143964) - Align dependency-locking navigation tests [#144002](https://github.com/openclaw/openclaw/pull/144002) -- Stabilize Telegram replacement-session tests [#144049](https://github.com/openclaw/openclaw/pull/144049). Thanks @crash2kx. +- Stabilize Telegram replacement-session tests [#144049](https://github.com/openclaw/openclaw/pull/144049). Thanks [@crash2kx](https://github.com/crash2kx). - Coordinate update-ledger test shutdown [#144054](https://github.com/openclaw/openclaw/pull/144054) - Restore complete navigation regression guards [#144075](https://github.com/openclaw/openclaw/pull/144075) - Drain session fixtures before state removal [#144087](https://github.com/openclaw/openclaw/pull/144087) @@ -5082,38 +5082,38 @@ The later historical 2026.7.33 evaluator pin restores its 250% status allowance **Improvements** -- Add opt-in runtime memory attribution to CLI benchmarks [#127746](https://github.com/openclaw/openclaw/pull/127746). Thanks @vincentkoc. -- Reuse verified runner archives and handle CI inventory growth [#140680](https://github.com/openclaw/openclaw/pull/140680). Thanks @vincentkoc. -- Move macOS CodeQL to GitHub-hosted runners [#141761](https://github.com/openclaw/openclaw/pull/141761). Thanks @vincentkoc. -- Advance the historical evaluator before its calibration correction [#142058](https://github.com/openclaw/openclaw/pull/142058). Thanks @RomneyDa. +- Add opt-in runtime memory attribution to CLI benchmarks [#127746](https://github.com/openclaw/openclaw/pull/127746). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse verified runner archives and handle CI inventory growth [#140680](https://github.com/openclaw/openclaw/pull/140680). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Move macOS CodeQL to GitHub-hosted runners [#141761](https://github.com/openclaw/openclaw/pull/141761). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Advance the historical evaluator before its calibration correction [#142058](https://github.com/openclaw/openclaw/pull/142058). Thanks [@RomneyDa](https://github.com/RomneyDa). - Skip unrelated upgrade checks for test-only changes [#142154](https://github.com/openclaw/openclaw/pull/142154) - Skip unrelated UI E2E jobs for isolated unit-test changes [#142350](https://github.com/openclaw/openclaw/pull/142350) - Move TUI test typechecking into the command shard [#142385](https://github.com/openclaw/openclaw/pull/142385) - Reuse prerequisite decisions in CI test planning [#142630](https://github.com/openclaw/openclaw/pull/142630) -- Reuse verified Bun archives in Linux CI [#142849](https://github.com/openclaw/openclaw/pull/142849). Thanks @vincentkoc. +- Reuse verified Bun archives in Linux CI [#142849](https://github.com/openclaw/openclaw/pull/142849). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse Android build timestamps across CI tests and lint [#143207](https://github.com/openclaw/openclaw/pull/143207) **Bug fixes** -- Update the evaluator for late-discovered processes [#141675](https://github.com/openclaw/openclaw/pull/141675). Thanks @RomneyDa. +- Update the evaluator for late-discovered processes [#141675](https://github.com/openclaw/openclaw/pull/141675). Thanks [@RomneyDa](https://github.com/RomneyDa). - Provision ripgrep for filesystem contract tests [#141794](https://github.com/openclaw/openclaw/pull/141794) -- Let macOS security scans finish within hosted runner limits [#141851](https://github.com/openclaw/openclaw/pull/141851). Thanks @vincentkoc. -- Preserve heap settings across scorecard builds [#141915](https://github.com/openclaw/openclaw/pull/141915). Thanks @RomneyDa. -- Scope historical status CPU allowance to July release [#141935](https://github.com/openclaw/openclaw/pull/141935). Thanks @RomneyDa. -- Update performance evaluator CPU measurement pin [#142053](https://github.com/openclaw/openclaw/pull/142053). Thanks @RomneyDa. -- Update Gateway startup CPU accounting [#142085](https://github.com/openclaw/openclaw/pull/142085). Thanks @RomneyDa. -- Update performance evaluator startup discovery [#142104](https://github.com/openclaw/openclaw/pull/142104). Thanks @RomneyDa. -- Retry failed performance artifact uploads once [#142344](https://github.com/openclaw/openclaw/pull/142344). Thanks @RomneyDa. -- Correct the historical 2026.7.33 Kova benchmark pin [#142348](https://github.com/openclaw/openclaw/pull/142348). Thanks @RomneyDa. -- Bound TypeScript preflight resources on constrained CI [#142472](https://github.com/openclaw/openclaw/pull/142472). Thanks @RomneyDa. -- Use corrected release CPU calibration [#142537](https://github.com/openclaw/openclaw/pull/142537). Thanks @RomneyDa. -- Retain test timing estimates across inventory changes [#142719](https://github.com/openclaw/openclaw/pull/142719). Thanks @RomneyDa and @vincentkoc. -- Reject stale or unusable CI timing samples [#143182](https://github.com/openclaw/openclaw/pull/143182). Thanks @vincentkoc. -- Budget deferred translation catalogs separately in CI [#143219](https://github.com/openclaw/openclaw/pull/143219). Thanks @vincentkoc. -- Enforce one deferred bundle per language [#143297](https://github.com/openclaw/openclaw/pull/143297). Thanks @vincentkoc. +- Let macOS security scans finish within hosted runner limits [#141851](https://github.com/openclaw/openclaw/pull/141851). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Preserve heap settings across scorecard builds [#141915](https://github.com/openclaw/openclaw/pull/141915). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Scope historical status CPU allowance to July release [#141935](https://github.com/openclaw/openclaw/pull/141935). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Update performance evaluator CPU measurement pin [#142053](https://github.com/openclaw/openclaw/pull/142053). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Update Gateway startup CPU accounting [#142085](https://github.com/openclaw/openclaw/pull/142085). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Update performance evaluator startup discovery [#142104](https://github.com/openclaw/openclaw/pull/142104). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Retry failed performance artifact uploads once [#142344](https://github.com/openclaw/openclaw/pull/142344). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct the historical 2026.7.33 Kova benchmark pin [#142348](https://github.com/openclaw/openclaw/pull/142348). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Bound TypeScript preflight resources on constrained CI [#142472](https://github.com/openclaw/openclaw/pull/142472). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Use corrected release CPU calibration [#142537](https://github.com/openclaw/openclaw/pull/142537). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Retain test timing estimates across inventory changes [#142719](https://github.com/openclaw/openclaw/pull/142719). Thanks [@RomneyDa](https://github.com/RomneyDa) and [@vincentkoc](https://github.com/vincentkoc). +- Reject stale or unusable CI timing samples [#143182](https://github.com/openclaw/openclaw/pull/143182). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Budget deferred translation catalogs separately in CI [#143219](https://github.com/openclaw/openclaw/pull/143219). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Enforce one deferred bundle per language [#143297](https://github.com/openclaw/openclaw/pull/143297). Thanks [@vincentkoc](https://github.com/vincentkoc). - Preserve timing identities for expanded test chunks [#143639](https://github.com/openclaw/openclaw/pull/143639) - Correct CPU measurement bounds in release validation [#143808](https://github.com/openclaw/openclaw/pull/143808) -- Install search test prerequisites [#143835](https://github.com/openclaw/openclaw/pull/143835). Thanks @fuller-stack-dev. +- Install search test prerequisites [#143835](https://github.com/openclaw/openclaw/pull/143835). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). @@ -5134,19 +5134,19 @@ Preparation uses the frozen source manifests where required; installed-package v **Improvements** -- Use pnpm's override parser in npm lock generation [#141862](https://github.com/openclaw/openclaw/pull/141862). Thanks @RomneyDa. -- Simplify package import scanning [#142859](https://github.com/openclaw/openclaw/pull/142859). Thanks @vincentkoc. +- Use pnpm's override parser in npm lock generation [#141862](https://github.com/openclaw/openclaw/pull/141862). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify package import scanning [#142859](https://github.com/openclaw/openclaw/pull/142859). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify package dependency path resolution [#143063](https://github.com/openclaw/openclaw/pull/143063) **Bug fixes** -- Recognize extension-owned package dependencies [#141647](https://github.com/openclaw/openclaw/pull/141647). Thanks @RomneyDa. -- Preserve version comparisons in npm dependency evidence [#141800](https://github.com/openclaw/openclaw/pull/141800). Thanks @RomneyDa. -- Verify dependency ownership for built plugin chunks [#141876](https://github.com/openclaw/openclaw/pull/141876). Thanks @RomneyDa. -- Use source companion manifests in package verification [#142033](https://github.com/openclaw/openclaw/pull/142033). Thanks @RomneyDa. +- Recognize extension-owned package dependencies [#141647](https://github.com/openclaw/openclaw/pull/141647). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Preserve version comparisons in npm dependency evidence [#141800](https://github.com/openclaw/openclaw/pull/141800). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Verify dependency ownership for built plugin chunks [#141876](https://github.com/openclaw/openclaw/pull/141876). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Use source companion manifests in package verification [#142033](https://github.com/openclaw/openclaw/pull/142033). Thanks [@RomneyDa](https://github.com/RomneyDa). - Handle nested optional plugin dependencies [#142126](https://github.com/openclaw/openclaw/pull/142126) - Initialize ClawHub bootstrap packaging dependencies [#142191](https://github.com/openclaw/openclaw/pull/142191) -- Recognize Bun built-ins in package checks [#143436](https://github.com/openclaw/openclaw/pull/143436). Thanks @RomneyDa. +- Recognize Bun built-ins in package checks [#143436](https://github.com/openclaw/openclaw/pull/143436). Thanks [@RomneyDa](https://github.com/RomneyDa). - Allow shipped Markdown guides in npm checks [#143699](https://github.com/openclaw/openclaw/pull/143699) @@ -5168,103 +5168,103 @@ A recovered dispatch or collected publication status is an observation, not a pa **Improvements** -- Prepare package artifacts before release publication [#136466](https://github.com/openclaw/openclaw/pull/136466). Thanks @vincentkoc. -- Add the Node smoke path later replaced by runtime selection [#142034](https://github.com/openclaw/openclaw/pull/142034). Thanks @RomneyDa. +- Prepare package artifacts before release publication [#136466](https://github.com/openclaw/openclaw/pull/136466). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add the Node smoke path later replaced by runtime selection [#142034](https://github.com/openclaw/openclaw/pull/142034). Thanks [@RomneyDa](https://github.com/RomneyDa). - Add published 2026.9.3 to the Mac update feed [#142235](https://github.com/openclaw/openclaw/pull/142235) - Align main with published 2026.9.3 metadata [#142240](https://github.com/openclaw/openclaw/pull/142240) -- Match default Telegram package tests to frozen source capabilities [#142378](https://github.com/openclaw/openclaw/pull/142378). Thanks @RomneyDa. -- Add a manual Android emulator diagnostic [#142780](https://github.com/openclaw/openclaw/pull/142780). Thanks @vincentkoc. -- Capture emulator boot diagnostics [#142809](https://github.com/openclaw/openclaw/pull/142809). Thanks @vincentkoc. -- Retain diagnostics after emulator readiness timeout [#142835](https://github.com/openclaw/openclaw/pull/142835). Thanks @vincentkoc. -- Complete emulator cold-boot diagnostics [#142891](https://github.com/openclaw/openclaw/pull/142891). Thanks @vincentkoc. -- Recover release-validation dispatches after lost responses [#142927](https://github.com/openclaw/openclaw/pull/142927). Thanks @vincentkoc. -- Move Android emulator workflows to Ubuntu KVM [#142979](https://github.com/openclaw/openclaw/pull/142979). Thanks @vincentkoc. -- Show publication observations alongside release validation status [#143171](https://github.com/openclaw/openclaw/pull/143171). Thanks @vincentkoc. +- Match default Telegram package tests to frozen source capabilities [#142378](https://github.com/openclaw/openclaw/pull/142378). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Add a manual Android emulator diagnostic [#142780](https://github.com/openclaw/openclaw/pull/142780). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Capture emulator boot diagnostics [#142809](https://github.com/openclaw/openclaw/pull/142809). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Retain diagnostics after emulator readiness timeout [#142835](https://github.com/openclaw/openclaw/pull/142835). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Complete emulator cold-boot diagnostics [#142891](https://github.com/openclaw/openclaw/pull/142891). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Recover release-validation dispatches after lost responses [#142927](https://github.com/openclaw/openclaw/pull/142927). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Move Android emulator workflows to Ubuntu KVM [#142979](https://github.com/openclaw/openclaw/pull/142979). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Show publication observations alongside release validation status [#143171](https://github.com/openclaw/openclaw/pull/143171). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reject releases with beta tags older than stable [#143669](https://github.com/openclaw/openclaw/pull/143669) -- Validate frozen release targets from committed source [#144023](https://github.com/openclaw/openclaw/pull/144023). Thanks @vincentkoc. +- Validate frozen release targets from committed source [#144023](https://github.com/openclaw/openclaw/pull/144023). Thanks [@vincentkoc](https://github.com/vincentkoc). **Bug fixes** -- Use established session tests for historical Node checks [#141640](https://github.com/openclaw/openclaw/pull/141640). Thanks @RomneyDa. -- Accept opted-in historical same-version updater results [#141652](https://github.com/openclaw/openclaw/pull/141652). Thanks @RomneyDa. +- Use established session tests for historical Node checks [#141640](https://github.com/openclaw/openclaw/pull/141640). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Accept opted-in historical same-version updater results [#141652](https://github.com/openclaw/openclaw/pull/141652). Thanks [@RomneyDa](https://github.com/RomneyDa). - Correct release source checks and upgrade-test selection [#141746](https://github.com/openclaw/openclaw/pull/141746) -- Validate frozen releases with their shipped scenarios [#141774](https://github.com/openclaw/openclaw/pull/141774). Thanks @RomneyDa. -- Preserve frozen-release Gateway test client imports [#141814](https://github.com/openclaw/openclaw/pull/141814). Thanks @RomneyDa. -- Place frozen-release test clients beside installed dependencies [#141827](https://github.com/openclaw/openclaw/pull/141827). Thanks @RomneyDa. -- Install dependencies for the trusted native live-test harness [#141829](https://github.com/openclaw/openclaw/pull/141829). Thanks @RomneyDa. -- Fetch release-candidate history through its canonical branch [#141840](https://github.com/openclaw/openclaw/pull/141840). Thanks @RomneyDa. -- Recognize the July filesystem validation contract [#141892](https://github.com/openclaw/openclaw/pull/141892). Thanks @RomneyDa. -- Keep historical Docker validation scenarios consistent [#141893](https://github.com/openclaw/openclaw/pull/141893). Thanks @RomneyDa. -- Add maturity-result completeness checks [#141931](https://github.com/openclaw/openclaw/pull/141931). Thanks @RomneyDa. +- Validate frozen releases with their shipped scenarios [#141774](https://github.com/openclaw/openclaw/pull/141774). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Preserve frozen-release Gateway test client imports [#141814](https://github.com/openclaw/openclaw/pull/141814). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Place frozen-release test clients beside installed dependencies [#141827](https://github.com/openclaw/openclaw/pull/141827). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Install dependencies for the trusted native live-test harness [#141829](https://github.com/openclaw/openclaw/pull/141829). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Fetch release-candidate history through its canonical branch [#141840](https://github.com/openclaw/openclaw/pull/141840). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Recognize the July filesystem validation contract [#141892](https://github.com/openclaw/openclaw/pull/141892). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Keep historical Docker validation scenarios consistent [#141893](https://github.com/openclaw/openclaw/pull/141893). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Add maturity-result completeness checks [#141931](https://github.com/openclaw/openclaw/pull/141931). Thanks [@RomneyDa](https://github.com/RomneyDa). - Repair Gateway release-test capacity and scenario selection [#141954](https://github.com/openclaw/openclaw/pull/141954) -- Keep frozen upgrade tests with matching helpers [#142007](https://github.com/openclaw/openclaw/pull/142007). Thanks @RomneyDa. -- Record authorized unsupported Docker lanes as no-ops [#142020](https://github.com/openclaw/openclaw/pull/142020). Thanks @RomneyDa. -- Publish diagnostic scorecards before reporting QA failure [#142040](https://github.com/openclaw/openclaw/pull/142040). Thanks @RomneyDa. -- Use trusted tooling for preflight plugin plans [#142055](https://github.com/openclaw/openclaw/pull/142055). Thanks @RomneyDa. -- Omit unsupported historical corrupt-plugin checks [#142061](https://github.com/openclaw/openclaw/pull/142061). Thanks @RomneyDa. -- Bound ClawHub ancestry verification responses [#142072](https://github.com/openclaw/openclaw/pull/142072). Thanks @vincentkoc. +- Keep frozen upgrade tests with matching helpers [#142007](https://github.com/openclaw/openclaw/pull/142007). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Record authorized unsupported Docker lanes as no-ops [#142020](https://github.com/openclaw/openclaw/pull/142020). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Publish diagnostic scorecards before reporting QA failure [#142040](https://github.com/openclaw/openclaw/pull/142040). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Use trusted tooling for preflight plugin plans [#142055](https://github.com/openclaw/openclaw/pull/142055). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Omit unsupported historical corrupt-plugin checks [#142061](https://github.com/openclaw/openclaw/pull/142061). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Bound ClawHub ancestry verification responses [#142072](https://github.com/openclaw/openclaw/pull/142072). Thanks [@vincentkoc](https://github.com/vincentkoc). - Install trusted tooling dependencies for plugin previews [#142103](https://github.com/openclaw/openclaw/pull/142103) -- Keep release helpers from dirtying mobile source checks [#142115](https://github.com/openclaw/openclaw/pull/142115). Thanks @vincentkoc. +- Keep release helpers from dirtying mobile source checks [#142115](https://github.com/openclaw/openclaw/pull/142115). Thanks [@vincentkoc](https://github.com/vincentkoc). - Keep Docker approval waits outside the publication queue [#142250](https://github.com/openclaw/openclaw/pull/142250) -- Keep changelog credit within verified release history [#142261](https://github.com/openclaw/openclaw/pull/142261). Thanks @vincentkoc. +- Keep changelog credit within verified release history [#142261](https://github.com/openclaw/openclaw/pull/142261). Thanks [@vincentkoc](https://github.com/vincentkoc). - Keep Docker upgrade tests on an older starting version [#142273](https://github.com/openclaw/openclaw/pull/142273) - Verify closeout after separate npm and Docker recovery runs [#142291](https://github.com/openclaw/openclaw/pull/142291) - Restore Sparkle build-number output from symlinked checkouts [#142315](https://github.com/openclaw/openclaw/pull/142315) -- Handle large tooling archives during mobile beta authorization [#142360](https://github.com/openclaw/openclaw/pull/142360). Thanks @vincentkoc. -- Restore Bun execution in installation smoke checks [#142428](https://github.com/openclaw/openclaw/pull/142428). Thanks @RomneyDa. -- Supply the release Node version to frozen installer tests [#142431](https://github.com/openclaw/openclaw/pull/142431). Thanks @RomneyDa. -- Keep mobile beta authorization valid as main advances [#142432](https://github.com/openclaw/openclaw/pull/142432). Thanks @vincentkoc. -- Repair helper loading for historical upgrade checks [#142441](https://github.com/openclaw/openclaw/pull/142441). Thanks @RomneyDa. -- Align frozen 2026.7.33 Docker validation [#142456](https://github.com/openclaw/openclaw/pull/142456). Thanks @RomneyDa. -- Match frozen onboarding tests to release helpers [#142467](https://github.com/openclaw/openclaw/pull/142467). Thanks @RomneyDa. -- Record the reviewed Codex test scan finding [#142474](https://github.com/openclaw/openclaw/pull/142474). Thanks @vincentkoc. -- Set mobile beta screenshot prerequisites [#142523](https://github.com/openclaw/openclaw/pull/142523). Thanks @vincentkoc. -- Match ClawHub fixture requests to frozen candidates [#142551](https://github.com/openclaw/openclaw/pull/142551). Thanks @RomneyDa. -- Forward release Node version to Rocky installer probes [#142562](https://github.com/openclaw/openclaw/pull/142562). Thanks @RomneyDa. -- Select a supported runtime for Bun install checks [#142563](https://github.com/openclaw/openclaw/pull/142563). Thanks @RomneyDa. -- Repair frozen-package update validation fixtures [#142573](https://github.com/openclaw/openclaw/pull/142573). Thanks @RomneyDa. -- Fetch release ancestry branches independently [#142643](https://github.com/openclaw/openclaw/pull/142643). Thanks @RomneyDa. -- Derive frozen-release expectations from selected source [#142683](https://github.com/openclaw/openclaw/pull/142683). Thanks @RomneyDa. -- Preserve Git selection in frozen-release tests [#142686](https://github.com/openclaw/openclaw/pull/142686). Thanks @RomneyDa. -- Match frozen-package Telegram tests to supported scenarios [#142687](https://github.com/openclaw/openclaw/pull/142687). Thanks @RomneyDa. -- Correct frozen dirty-checkout exit expectations [#142727](https://github.com/openclaw/openclaw/pull/142727). Thanks @RomneyDa. -- Qualify Telegram progress tests against frozen source [#142731](https://github.com/openclaw/openclaw/pull/142731). Thanks @RomneyDa. -- Prepare Watch Rust tools for iOS beta builds [#142762](https://github.com/openclaw/openclaw/pull/142762). Thanks @vincentkoc. -- Isolate iOS release signing keys [#142846](https://github.com/openclaw/openclaw/pull/142846). Thanks @vincentkoc. -- Identify incompatible release-validation evidence [#142906](https://github.com/openclaw/openclaw/pull/142906). Thanks @vincentkoc. -- Check image size limits before Vercel copying [#142908](https://github.com/openclaw/openclaw/pull/142908). Thanks @vincentkoc. -- Match frozen bundle validation clients to source [#142926](https://github.com/openclaw/openclaw/pull/142926). Thanks @vincentkoc. -- Stop frozen checks on committed-source read errors [#142930](https://github.com/openclaw/openclaw/pull/142930). Thanks @vincentkoc. -- Isolate frozen-suite compatibility checks [#142935](https://github.com/openclaw/openclaw/pull/142935). Thanks @vincentkoc. -- Accept native iOS signing keychain filenames [#142968](https://github.com/openclaw/openclaw/pull/142968). Thanks @vincentkoc. -- Preserve the iOS signing tool environment [#143301](https://github.com/openclaw/openclaw/pull/143301). Thanks @vincentkoc. -- Match validation runs with omitted empty inputs [#143421](https://github.com/openclaw/openclaw/pull/143421). Thanks @RomneyDa. -- Include required plugins in candidate preparation [#143452](https://github.com/openclaw/openclaw/pull/143452). Thanks @RomneyDa. -- Validate Anthropic cache behavior against candidate capabilities [#143508](https://github.com/openclaw/openclaw/pull/143508). Thanks @RomneyDa. -- Match Telegram release checks to package source [#143510](https://github.com/openclaw/openclaw/pull/143510). Thanks @RomneyDa. -- Exclude unpublished same-version upgrade baselines [#143567](https://github.com/openclaw/openclaw/pull/143567). Thanks @RomneyDa. +- Handle large tooling archives during mobile beta authorization [#142360](https://github.com/openclaw/openclaw/pull/142360). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Restore Bun execution in installation smoke checks [#142428](https://github.com/openclaw/openclaw/pull/142428). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Supply the release Node version to frozen installer tests [#142431](https://github.com/openclaw/openclaw/pull/142431). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Keep mobile beta authorization valid as main advances [#142432](https://github.com/openclaw/openclaw/pull/142432). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Repair helper loading for historical upgrade checks [#142441](https://github.com/openclaw/openclaw/pull/142441). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Align frozen 2026.7.33 Docker validation [#142456](https://github.com/openclaw/openclaw/pull/142456). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Match frozen onboarding tests to release helpers [#142467](https://github.com/openclaw/openclaw/pull/142467). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Record the reviewed Codex test scan finding [#142474](https://github.com/openclaw/openclaw/pull/142474). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Set mobile beta screenshot prerequisites [#142523](https://github.com/openclaw/openclaw/pull/142523). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Match ClawHub fixture requests to frozen candidates [#142551](https://github.com/openclaw/openclaw/pull/142551). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Forward release Node version to Rocky installer probes [#142562](https://github.com/openclaw/openclaw/pull/142562). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Select a supported runtime for Bun install checks [#142563](https://github.com/openclaw/openclaw/pull/142563). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Repair frozen-package update validation fixtures [#142573](https://github.com/openclaw/openclaw/pull/142573). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Fetch release ancestry branches independently [#142643](https://github.com/openclaw/openclaw/pull/142643). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive frozen-release expectations from selected source [#142683](https://github.com/openclaw/openclaw/pull/142683). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Preserve Git selection in frozen-release tests [#142686](https://github.com/openclaw/openclaw/pull/142686). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Match frozen-package Telegram tests to supported scenarios [#142687](https://github.com/openclaw/openclaw/pull/142687). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct frozen dirty-checkout exit expectations [#142727](https://github.com/openclaw/openclaw/pull/142727). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Qualify Telegram progress tests against frozen source [#142731](https://github.com/openclaw/openclaw/pull/142731). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Prepare Watch Rust tools for iOS beta builds [#142762](https://github.com/openclaw/openclaw/pull/142762). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Isolate iOS release signing keys [#142846](https://github.com/openclaw/openclaw/pull/142846). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Identify incompatible release-validation evidence [#142906](https://github.com/openclaw/openclaw/pull/142906). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Check image size limits before Vercel copying [#142908](https://github.com/openclaw/openclaw/pull/142908). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Match frozen bundle validation clients to source [#142926](https://github.com/openclaw/openclaw/pull/142926). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Stop frozen checks on committed-source read errors [#142930](https://github.com/openclaw/openclaw/pull/142930). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Isolate frozen-suite compatibility checks [#142935](https://github.com/openclaw/openclaw/pull/142935). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Accept native iOS signing keychain filenames [#142968](https://github.com/openclaw/openclaw/pull/142968). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Preserve the iOS signing tool environment [#143301](https://github.com/openclaw/openclaw/pull/143301). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Match validation runs with omitted empty inputs [#143421](https://github.com/openclaw/openclaw/pull/143421). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Include required plugins in candidate preparation [#143452](https://github.com/openclaw/openclaw/pull/143452). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Validate Anthropic cache behavior against candidate capabilities [#143508](https://github.com/openclaw/openclaw/pull/143508). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Match Telegram release checks to package source [#143510](https://github.com/openclaw/openclaw/pull/143510). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Exclude unpublished same-version upgrade baselines [#143567](https://github.com/openclaw/openclaw/pull/143567). Thanks [@RomneyDa](https://github.com/RomneyDa). - Use published plugins for correction-version upgrade baselines [#143681](https://github.com/openclaw/openclaw/pull/143681) - Register the 2026.9.4 plugin scan policy [#143807](https://github.com/openclaw/openclaw/pull/143807) -- Load older candidates in Anthropic cache checks [#143810](https://github.com/openclaw/openclaw/pull/143810). Thanks @RomneyDa. -- Match Telegram queue validation to candidate capabilities [#143811](https://github.com/openclaw/openclaw/pull/143811). Thanks @RomneyDa. -- Validate contracts for omitted Docker test aliases [#144129](https://github.com/openclaw/openclaw/pull/144129). Thanks @vincentkoc. +- Load older candidates in Anthropic cache checks [#143810](https://github.com/openclaw/openclaw/pull/143810). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Match Telegram queue validation to candidate capabilities [#143811](https://github.com/openclaw/openclaw/pull/143811). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Validate contracts for omitted Docker test aliases [#144129](https://github.com/openclaw/openclaw/pull/144129). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** - Refresh release summaries and contribution records [685ae1b0](https://github.com/openclaw/openclaw/commit/685ae1b0c81ca9dec95e3c10f3d4b4ffffe69d46) - Add the 2026.9.4 changelog section [dd178db5](https://github.com/openclaw/openclaw/commit/dd178db54d088b3ee251f5e99e4081bad0f8fc51) - Document qualification with final release notes already committed [#141786](https://github.com/openclaw/openclaw/pull/141786) -- Add the v2026.9.3 release documentation page [#142277](https://github.com/openclaw/openclaw/pull/142277). Thanks @hannesrudolph. -- Align v2026.9.3 release-page framing with its announcement [#142307](https://github.com/openclaw/openclaw/pull/142307). Thanks @hannesrudolph. +- Add the v2026.9.3 release documentation page [#142277](https://github.com/openclaw/openclaw/pull/142277). Thanks [@hannesrudolph](https://github.com/hannesrudolph). +- Align v2026.9.3 release-page framing with its announcement [#142307](https://github.com/openclaw/openclaw/pull/142307). Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Align release validation guidance with notes preparation [#142328](https://github.com/openclaw/openclaw/pull/142328) -- Temporarily rename the v2026.9.3 statistics label [#142437](https://github.com/openclaw/openclaw/pull/142437). Thanks @hannesrudolph. +- Temporarily rename the v2026.9.3 statistics label [#142437](https://github.com/openclaw/openclaw/pull/142437). Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Correct ClawHub release-verification instructions [#142458](https://github.com/openclaw/openclaw/pull/142458) -- Correct extended-stable validation instructions [#142538](https://github.com/openclaw/openclaw/pull/142538). Thanks @RomneyDa. -- Restore the v2026.9.3 statistics label [#142541](https://github.com/openclaw/openclaw/pull/142541). Thanks @hannesrudolph. -- Organize release validation guidance by task [#142774](https://github.com/openclaw/openclaw/pull/142774). Thanks @vincentkoc. -- Split release-validation documentation into focused guides [#143163](https://github.com/openclaw/openclaw/pull/143163). Thanks @vincentkoc. -- Use HTTP liveness for unauthenticated release checks [#143709](https://github.com/openclaw/openclaw/pull/143709). Thanks @vincentkoc. -- Record landed repairs and contributor credit [#144440](https://github.com/openclaw/openclaw/pull/144440). Thanks @vincentkoc. +- Correct extended-stable validation instructions [#142538](https://github.com/openclaw/openclaw/pull/142538). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Restore the v2026.9.3 statistics label [#142541](https://github.com/openclaw/openclaw/pull/142541). Thanks [@hannesrudolph](https://github.com/hannesrudolph). +- Organize release validation guidance by task [#142774](https://github.com/openclaw/openclaw/pull/142774). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split release-validation documentation into focused guides [#143163](https://github.com/openclaw/openclaw/pull/143163). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Use HTTP liveness for unauthenticated release checks [#143709](https://github.com/openclaw/openclaw/pull/143709). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Record landed repairs and contributor credit [#144440](https://github.com/openclaw/openclaw/pull/144440). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -5292,22 +5292,22 @@ The dependency-install guard is bypassed when lifecycle scripts are disabled and - Add tooling for captioned and zoomed PR videos without audio [#142259](https://github.com/openclaw/openclaw/pull/142259) - Refresh selected translations with native context and retained aliases [#142260](https://github.com/openclaw/openclaw/pull/142260) - Load the compiler only when development checks need it [#142338](https://github.com/openclaw/openclaw/pull/142338) -- Remove unused update-triage result metadata [#142345](https://github.com/openclaw/openclaw/pull/142345). Thanks @vincentkoc. -- Reduce documentation sync source downloads [#142400](https://github.com/openclaw/openclaw/pull/142400). Thanks @hannesrudolph. +- Remove unused update-triage result metadata [#142345](https://github.com/openclaw/openclaw/pull/142345). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reduce documentation sync source downloads [#142400](https://github.com/openclaw/openclaw/pull/142400). Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Remove obsolete people-loading translation data [#142420](https://github.com/openclaw/openclaw/pull/142420) - Combine duplicate architecture-checker scans [#142451](https://github.com/openclaw/openclaw/pull/142451) -- Reuse documentation checks and validate after rebase [#142475](https://github.com/openclaw/openclaw/pull/142475). Thanks @hannesrudolph. +- Reuse documentation checks and validate after rebase [#142475](https://github.com/openclaw/openclaw/pull/142475). Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Reduce repeated lint startup for larger changes [#142691](https://github.com/openclaw/openclaw/pull/142691) - Synchronize a screenshot-fixture translation label [#142714](https://github.com/openclaw/openclaw/pull/142714) -- Consolidate QA Lab YAML validation diagnostics [#143016](https://github.com/openclaw/openclaw/pull/143016). Thanks @vincentkoc. -- Route session-history HTTP tests without full build prerequisites [#143096](https://github.com/openclaw/openclaw/pull/143096). Thanks @vincentkoc. +- Consolidate QA Lab YAML validation diagnostics [#143016](https://github.com/openclaw/openclaw/pull/143016). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Route session-history HTTP tests without full build prerequisites [#143096](https://github.com/openclaw/openclaw/pull/143096). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unused global documentation audit indexes [#143164](https://github.com/openclaw/openclaw/pull/143164) - Reuse numeric flag parsing in performance tests [#143237](https://github.com/openclaw/openclaw/pull/143237) - Clarify CI watcher progress and timeout output [#143320](https://github.com/openclaw/openclaw/pull/143320) - Avoid repeated SDK export traversal [#143393](https://github.com/openclaw/openclaw/pull/143393) -- Skip unnecessary SDK guard parsing [#143513](https://github.com/openclaw/openclaw/pull/143513). Thanks @RomneyDa. -- Share task audit summary counting [#143682](https://github.com/openclaw/openclaw/pull/143682). Thanks @vincentkoc. -- Share dead-code scan orchestration [#143745](https://github.com/openclaw/openclaw/pull/143745). Thanks @vincentkoc. +- Skip unnecessary SDK guard parsing [#143513](https://github.com/openclaw/openclaw/pull/143513). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share task audit summary counting [#143682](https://github.com/openclaw/openclaw/pull/143682). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Share dead-code scan orchestration [#143745](https://github.com/openclaw/openclaw/pull/143745). Thanks [@vincentkoc](https://github.com/vincentkoc). - Refresh translation records for Skills screens [#143806](https://github.com/openclaw/openclaw/pull/143806) - Refresh snapshot translation records [#143914](https://github.com/openclaw/openclaw/pull/143914) - Reuse plugin metadata during docs generation [#144120](https://github.com/openclaw/openclaw/pull/144120) @@ -5316,34 +5316,34 @@ The dependency-install guard is bypassed when lifecycle scripts are disabled and - Keep local test worker counts consistent across projects [#141716](https://github.com/openclaw/openclaw/pull/141716) - Prevent source installs from modifying another checkout's dependencies [#141719](https://github.com/openclaw/openclaw/pull/141719) -- Label pull requests editing split documentation pages [#142677](https://github.com/openclaw/openclaw/pull/142677). Thanks @vincentkoc. -- Extend plugin documentation label coverage [#142735](https://github.com/openclaw/openclaw/pull/142735). Thanks @vincentkoc. -- Track shared native-translation inputs [#142786](https://github.com/openclaw/openclaw/pull/142786). Thanks @vincentkoc. -- Distinguish declared ClawHub routes from unverified headings in audits [#143002](https://github.com/openclaw/openclaw/pull/143002). Thanks @vincentkoc. -- Allow the approved historical pnpm pin in isolated checks [#143129](https://github.com/openclaw/openclaw/pull/143129). Thanks @vincentkoc. +- Label pull requests editing split documentation pages [#142677](https://github.com/openclaw/openclaw/pull/142677). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Extend plugin documentation label coverage [#142735](https://github.com/openclaw/openclaw/pull/142735). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Track shared native-translation inputs [#142786](https://github.com/openclaw/openclaw/pull/142786). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Distinguish declared ClawHub routes from unverified headings in audits [#143002](https://github.com/openclaw/openclaw/pull/143002). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Allow the approved historical pnpm pin in isolated checks [#143129](https://github.com/openclaw/openclaw/pull/143129). Thanks [@vincentkoc](https://github.com/vincentkoc). - Audit unused exports after script and root-test changes [#143268](https://github.com/openclaw/openclaw/pull/143268) - Preserve fenced examples during documentation formatting [#143394](https://github.com/openclaw/openclaw/pull/143394) - Report original source lines in documentation errors [#143404](https://github.com/openclaw/openclaw/pull/143404) - Detect overdue documentation during steady edits [#143455](https://github.com/openclaw/openclaw/pull/143455) -- Distinguish interrupted development runners from completed stops [#143676](https://github.com/openclaw/openclaw/pull/143676). Thanks @shakkernerd. +- Distinguish interrupted development runners from completed stops [#143676](https://github.com/openclaw/openclaw/pull/143676). Thanks [@shakkernerd](https://github.com/shakkernerd). - Recover locale imports after source errors [#143776](https://github.com/openclaw/openclaw/pull/143776) **Documentation** -- Organize testing guidance by task [#141221](https://github.com/openclaw/openclaw/pull/141221). Thanks @vincentkoc. +- Organize testing guidance by task [#141221](https://github.com/openclaw/openclaw/pull/141221). Thanks [@vincentkoc](https://github.com/vincentkoc). - Refresh maturity evidence and coverage reports [#141910](https://github.com/openclaw/openclaw/pull/141910) -- Split testing guidance into focused pages [#141968](https://github.com/openclaw/openclaw/pull/141968). Thanks @vincentkoc. -- Validate maturity documentation routes and anchors [#141977](https://github.com/openclaw/openclaw/pull/141977). Thanks @RomneyDa. +- Split testing guidance into focused pages [#141968](https://github.com/openclaw/openclaw/pull/141968). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Validate maturity documentation routes and anchors [#141977](https://github.com/openclaw/openclaw/pull/141977). Thanks [@RomneyDa](https://github.com/RomneyDa). - Refresh maturity scorecard evidence [#142114](https://github.com/openclaw/openclaw/pull/142114) -- Split QA automation guidance into focused pages [#142426](https://github.com/openclaw/openclaw/pull/142426). Thanks @vincentkoc. -- Link live-test filtering guidance to its current page [#142560](https://github.com/openclaw/openclaw/pull/142560). Thanks @vincentkoc. +- Split QA automation guidance into focused pages [#142426](https://github.com/openclaw/openclaw/pull/142426). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Link live-test filtering guidance to its current page [#142560](https://github.com/openclaw/openclaw/pull/142560). Thanks [@vincentkoc](https://github.com/vincentkoc). - Keep SDK alias removal pending review [#142708](https://github.com/openclaw/openclaw/pull/142708) -- Keep routine repository output inline [#142946](https://github.com/openclaw/openclaw/pull/142946). Thanks @vincentkoc. -- Organize live-testing documentation by test task [#143042](https://github.com/openclaw/openclaw/pull/143042). Thanks @vincentkoc. -- Split CI routing guidance into focused pages [#143053](https://github.com/openclaw/openclaw/pull/143053). Thanks @vincentkoc. +- Keep routine repository output inline [#142946](https://github.com/openclaw/openclaw/pull/142946). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize live-testing documentation by test task [#143042](https://github.com/openclaw/openclaw/pull/143042). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split CI routing guidance into focused pages [#143053](https://github.com/openclaw/openclaw/pull/143053). Thanks [@vincentkoc](https://github.com/vincentkoc). - Refresh CI and plugin validation guidance [#143287](https://github.com/openclaw/openclaw/pull/143287) - Document temporary defensive-work model routing [#143698](https://github.com/openclaw/openclaw/pull/143698) -- Consolidate contributor guidance and subsystem ownership [#143785](https://github.com/openclaw/openclaw/pull/143785). Thanks @obviyus and @vincentkoc. +- Consolidate contributor guidance and subsystem ownership [#143785](https://github.com/openclaw/openclaw/pull/143785). Thanks [@obviyus](https://github.com/obviyus) and [@vincentkoc](https://github.com/vincentkoc). @@ -5362,11 +5362,11 @@ A change to conversation-marker spacing was undone. Both changes are listed belo **Improvements** -- Record the reverted conversation rail spacing adjustment [#142667](https://github.com/openclaw/openclaw/pull/142667). Thanks @Patrick-Erichsen. +- Record the reverted conversation rail spacing adjustment [#142667](https://github.com/openclaw/openclaw/pull/142667). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Revert the canceled conversation rail spacing adjustment [#142684](https://github.com/openclaw/openclaw/pull/142684). Thanks @Patrick-Erichsen. +- Revert the canceled conversation rail spacing adjustment [#142684](https://github.com/openclaw/openclaw/pull/142684). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). diff --git a/docs/releases/2026.9.4.md b/docs/releases/2026.9.4.md index 49f619359d83..39757c8572c8 100644 --- a/docs/releases/2026.9.4.md +++ b/docs/releases/2026.9.4.md @@ -40,15 +40,15 @@ _A way past startup trouble without changing Node for your other apps. Conceptua **Improvements** - Avoid loading error diagnostics during healthy startup [#142371](https://github.com/openclaw/openclaw/pull/142371). -- Offer a private Node.js update when the CLI cannot start [#142742](https://github.com/openclaw/openclaw/pull/142742). Thanks @jason-allen-oneal, @morrow-bluedot, @jialele. +- Offer a private Node.js update when the CLI cannot start [#142742](https://github.com/openclaw/openclaw/pull/142742). Thanks [@jason-allen-oneal](https://github.com/jason-allen-oneal), [@morrow-bluedot](https://github.com/morrow-bluedot), [@jialele](https://github.com/jialele). **Bug fixes** - Explain unusable macOS SQLite overrides [#141948](https://github.com/openclaw/openclaw/pull/141948). - Check the selected SQLite library during Bun installation and diagnostics [#142186](https://github.com/openclaw/openclaw/pull/142186). -- Repair stale Gateway service Node runtimes without forcing reinstall [#143159](https://github.com/openclaw/openclaw/pull/143159). Thanks @jialele, @TheAngryPit. +- Repair stale Gateway service Node runtimes without forcing reinstall [#143159](https://github.com/openclaw/openclaw/pull/143159). Thanks [@jialele](https://github.com/jialele), [@TheAngryPit](https://github.com/TheAngryPit). - Restore diagnostics on unsupported Node runtimes [#143344](https://github.com/openclaw/openclaw/pull/143344). -- Reuse compatible installed Node during startup and upgrades [#143464](https://github.com/openclaw/openclaw/pull/143464). Thanks @aeoess. +- Reuse compatible installed Node during startup and upgrades [#143464](https://github.com/openclaw/openclaw/pull/143464). Thanks [@aeoess](https://github.com/aeoess). - Allow short help and version flags during Node recovery [#143485](https://github.com/openclaw/openclaw/pull/143485). - Preserve macOS Bun SQLite settings in managed services [#143651](https://github.com/openclaw/openclaw/pull/143651). @@ -59,7 +59,7 @@ _A way past startup trouble without changing Node for your other apps. Conceptua **Limits and compatibility** -- Check SQLite behavior before accepting Node runtimes [#143312](https://github.com/openclaw/openclaw/pull/143312). Thanks @aeoess. +- Check SQLite behavior before accepting Node runtimes [#143312](https://github.com/openclaw/openclaw/pull/143312). Thanks [@aeoess](https://github.com/aeoess). @@ -75,16 +75,16 @@ Mac installation no longer gets stuck in the affected Homebrew Bash setups, and **Bug fixes** - Prevent installer hangs with newer Homebrew Bash [#141884](https://github.com/openclaw/openclaw/pull/141884). -- Restore Docker source dependency installation [#142073](https://github.com/openclaw/openclaw/pull/142073). Thanks @vincentkoc. -- Preserve portable shell completion hooks during installation [#143282](https://github.com/openclaw/openclaw/pull/143282). Thanks @LiuwqGit, @obviyus, @jlapenna. +- Restore Docker source dependency installation [#142073](https://github.com/openclaw/openclaw/pull/142073). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Preserve portable shell completion hooks during installation [#143282](https://github.com/openclaw/openclaw/pull/143282). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@jlapenna](https://github.com/jlapenna). **Documentation** -- Clarify the Node 26 recommendation for package installs [#135539](https://github.com/openclaw/openclaw/pull/135539). Thanks @kvnloo, @obviyus. -- Clarify Gateway service account and shutdown guidance [#136266](https://github.com/openclaw/openclaw/pull/136266). Thanks @yetval, @obviyus, @abacha. -- Explain startup and restart effects before service installation [#139562](https://github.com/openclaw/openclaw/pull/139562). Thanks @TheCrazyLex, @obviyus. +- Clarify the Node 26 recommendation for package installs [#135539](https://github.com/openclaw/openclaw/pull/135539). Thanks [@kvnloo](https://github.com/kvnloo), [@obviyus](https://github.com/obviyus). +- Clarify Gateway service account and shutdown guidance [#136266](https://github.com/openclaw/openclaw/pull/136266). Thanks [@yetval](https://github.com/yetval), [@obviyus](https://github.com/obviyus), [@abacha](https://github.com/abacha). +- Explain startup and restart effects before service installation [#139562](https://github.com/openclaw/openclaw/pull/139562). Thanks [@TheCrazyLex](https://github.com/TheCrazyLex), [@obviyus](https://github.com/obviyus). - Clarify automatic system-Bash handling for installers [#142038](https://github.com/openclaw/openclaw/pull/142038). -- Split Docker reference material into focused guides [#143087](https://github.com/openclaw/openclaw/pull/143087). Thanks @vincentkoc. +- Split Docker reference material into focused guides [#143087](https://github.com/openclaw/openclaw/pull/143087). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -101,18 +101,18 @@ An empty background memory check no longer makes a fresh Claw think setup is alr **Improvements** -- Explain mobile setup codes pasted into browser sign-in [#141717](https://github.com/openclaw/openclaw/pull/141717). Thanks @DonnieFi. +- Explain mobile setup codes pasted into browser sign-in [#141717](https://github.com/openclaw/openclaw/pull/141717). Thanks [@DonnieFi](https://github.com/DonnieFi). **Bug fixes** -- Use protected provider keys in New Agent setup [#141586](https://github.com/openclaw/openclaw/pull/141586). Thanks @miguelbranco80, @IWhatsskill, @wenbiyou, @lisheguo. -- Preserve first-run setup after empty dreaming sweeps [#141808](https://github.com/openclaw/openclaw/pull/141808). Thanks @SunnyShu0925, @obviyus, @dh-js, @ayaangazali. -- Stop Moonshot China authentication reinstall loops [#143742](https://github.com/openclaw/openclaw/pull/143742). Thanks @zwyhmcn. +- Use protected provider keys in New Agent setup [#141586](https://github.com/openclaw/openclaw/pull/141586). Thanks [@miguelbranco80](https://github.com/miguelbranco80), [@IWhatsskill](https://github.com/IWhatsskill), [@wenbiyou](https://github.com/wenbiyou), [@lisheguo](https://github.com/lisheguo). +- Preserve first-run setup after empty dreaming sweeps [#141808](https://github.com/openclaw/openclaw/pull/141808). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus), [@dh-js](https://github.com/dh-js), [@ayaangazali](https://github.com/ayaangazali). +- Stop Moonshot China authentication reinstall loops [#143742](https://github.com/openclaw/openclaw/pull/143742). Thanks [@zwyhmcn](https://github.com/zwyhmcn). **Documentation** - Align setup and rotation guidance around one Gateway secret [#141723](https://github.com/openclaw/openclaw/pull/141723). -- Correct Gateway-host provider setup instructions [#143983](https://github.com/openclaw/openclaw/pull/143983). Thanks @vincentkoc. +- Correct Gateway-host provider setup instructions [#143983](https://github.com/openclaw/openclaw/pull/143983). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -127,14 +127,14 @@ If you have several agents, guided messaging setup now lets you choose whose wor **Bug fixes** -- Choose an agent workspace during guided channel setup [#128738](https://github.com/openclaw/openclaw/pull/128738). Thanks @Leon-SK668, @obviyus, @JunfXiao. -- Select an agent for onboarding recommendations [#141775](https://github.com/openclaw/openclaw/pull/141775). Thanks @ChrisCantwell, @obviyus. +- Choose an agent workspace during guided channel setup [#128738](https://github.com/openclaw/openclaw/pull/128738). Thanks [@Leon-SK668](https://github.com/Leon-SK668), [@obviyus](https://github.com/obviyus), [@JunfXiao](https://github.com/JunfXiao). +- Select an agent for onboarding recommendations [#141775](https://github.com/openclaw/openclaw/pull/141775). Thanks [@ChrisCantwell](https://github.com/ChrisCantwell), [@obviyus](https://github.com/obviyus). - Resolve environment values for channel setup checks [#141781](https://github.com/openclaw/openclaw/pull/141781). -- Accept agent selection after recommendation subcommands [#142019](https://github.com/openclaw/openclaw/pull/142019). Thanks @obviyus. +- Accept agent selection after recommendation subcommands [#142019](https://github.com/openclaw/openclaw/pull/142019). Thanks [@obviyus](https://github.com/obviyus). **Documentation** -- Complete node setup and command-approval instructions [#136268](https://github.com/openclaw/openclaw/pull/136268). Thanks @yetval, @obviyus, @ccaprani. +- Complete node setup and command-approval instructions [#136268](https://github.com/openclaw/openclaw/pull/136268). Thanks [@yetval](https://github.com/yetval), [@obviyus](https://github.com/obviyus), [@ccaprani](https://github.com/ccaprani). @@ -149,8 +149,8 @@ Phone setup help now points you to [`openclaw qr`](/cli/qr), and the [Android in **Documentation** -- Correct Android pairing and browser access guidance [4ccdd7e](https://github.com/openclaw/openclaw/commit/4ccdd7e005754b426483d78d2c00064df14216a6). Thanks @yetval. -- Point mobile setup users to the QR command in CLI help [#141756](https://github.com/openclaw/openclaw/pull/141756). Thanks @chelsealong, @obviyus, @tomdailey55. +- Correct Android pairing and browser access guidance [4ccdd7e](https://github.com/openclaw/openclaw/commit/4ccdd7e005754b426483d78d2c00064df14216a6). Thanks [@yetval](https://github.com/yetval). +- Point mobile setup users to the QR command in CLI help [#141756](https://github.com/openclaw/openclaw/pull/141756). Thanks [@chelsealong](https://github.com/chelsealong), [@obviyus](https://github.com/obviyus), [@tomdailey55](https://github.com/tomdailey55). @@ -200,18 +200,18 @@ The [first-run help](/help/faq-first-run/quick-start) separates getting started **Documentation** -- Correct setup routing, Gateway port spacing, logging styles, and existing Windows, channel, Codex, and provider guidance [#141214](https://github.com/openclaw/openclaw/pull/141214). Thanks @vincentkoc. -- Split Why OpenClaw architecture and comparison references into focused pages [#142989](https://github.com/openclaw/openclaw/pull/142989). Thanks @vincentkoc. -- Link workspace templates, macOS Skills, and related setup guides directly [#143022](https://github.com/openclaw/openclaw/pull/143022). Thanks @vincentkoc. -- Correct copied setup commands, token-display instructions, memory examples, and retry and heartbeat guidance [#143029](https://github.com/openclaw/openclaw/pull/143029). Thanks @vincentkoc. -- Split first-run FAQ into focused setup and hosting pages [#143148](https://github.com/openclaw/openclaw/pull/143148). Thanks @vincentkoc. -- Correct Diffs installation, Ollama credentials, IMAP account examples, and CLI and tool guidance [#143179](https://github.com/openclaw/openclaw/pull/143179). Thanks @vincentkoc. +- Correct setup routing, Gateway port spacing, logging styles, and existing Windows, channel, Codex, and provider guidance [#141214](https://github.com/openclaw/openclaw/pull/141214). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split Why OpenClaw architecture and comparison references into focused pages [#142989](https://github.com/openclaw/openclaw/pull/142989). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Link workspace templates, macOS Skills, and related setup guides directly [#143022](https://github.com/openclaw/openclaw/pull/143022). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct copied setup commands, token-display instructions, memory examples, and retry and heartbeat guidance [#143029](https://github.com/openclaw/openclaw/pull/143029). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split first-run FAQ into focused setup and hosting pages [#143148](https://github.com/openclaw/openclaw/pull/143148). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct Diffs installation, Ollama credentials, IMAP account examples, and CLI and tool guidance [#143179](https://github.com/openclaw/openclaw/pull/143179). Thanks [@vincentkoc](https://github.com/vincentkoc). - Clarify explicit ClawHub skill selection [#143371](https://github.com/openclaw/openclaw/pull/143371). -- Clarify voice-call and acpx prerequisites, text-model validation, memory setup, and delegate examples [#143927](https://github.com/openclaw/openclaw/pull/143927). Thanks @vincentkoc. -- Correct transcription models, camera flags, Matrix defaults, Signal checks, and existing media-migration guidance [#143950](https://github.com/openclaw/openclaw/pull/143950). Thanks @vincentkoc. -- Complete remote Mac, Arcee, and plugin SDK examples and clarify documented version history [#144032](https://github.com/openclaw/openclaw/pull/144032). Thanks @vincentkoc. -- Clarify memory CLI defaults, stop/backup/start migration steps, Reef setup, and status and group links [#144083](https://github.com/openclaw/openclaw/pull/144083). Thanks @vincentkoc. -- Add installation prerequisites and clarify Render troubleshooting, Ollama credentials, Mac version matching, and existing client controls [#144085](https://github.com/openclaw/openclaw/pull/144085). Thanks @vincentkoc. +- Clarify voice-call and acpx prerequisites, text-model validation, memory setup, and delegate examples [#143927](https://github.com/openclaw/openclaw/pull/143927). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct transcription models, camera flags, Matrix defaults, Signal checks, and existing media-migration guidance [#143950](https://github.com/openclaw/openclaw/pull/143950). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Complete remote Mac, Arcee, and plugin SDK examples and clarify documented version history [#144032](https://github.com/openclaw/openclaw/pull/144032). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify memory CLI defaults, stop/backup/start migration steps, Reef setup, and status and group links [#144083](https://github.com/openclaw/openclaw/pull/144083). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add installation prerequisites and clarify Render troubleshooting, Ollama credentials, Mac version matching, and existing client controls [#144085](https://github.com/openclaw/openclaw/pull/144085). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -238,21 +238,21 @@ _Recognizable conversations for the garden opening. Published 2026.9.4 interface **Improvements** -- Start ungrouped sessions from the Other heading [#142544](https://github.com/openclaw/openclaw/pull/142544). Thanks @Patrick-Erichsen. +- Start ungrouped sessions from the Other heading [#142544](https://github.com/openclaw/openclaw/pull/142544). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Recover stale remembered chats when opening the web UI [#133653](https://github.com/openclaw/openclaw/pull/133653). Thanks @RomneyDa. -- Keep readable chat titles and preserve manual names [#141600](https://github.com/openclaw/openclaw/pull/141600). Thanks @DonnieFi, @IWhatsskill, @jjjhenriksen. -- Align sidebar session counts [#141924](https://github.com/openclaw/openclaw/pull/141924). Thanks @RomneyDa. -- Prevent overlapping sidebar session controls [#142042](https://github.com/openclaw/openclaw/pull/142042). Thanks @RomneyDa. +- Recover stale remembered chats when opening the web UI [#133653](https://github.com/openclaw/openclaw/pull/133653). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Keep readable chat titles and preserve manual names [#141600](https://github.com/openclaw/openclaw/pull/141600). Thanks [@DonnieFi](https://github.com/DonnieFi), [@IWhatsskill](https://github.com/IWhatsskill), [@jjjhenriksen](https://github.com/jjjhenriksen). +- Align sidebar session counts [#141924](https://github.com/openclaw/openclaw/pull/141924). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Prevent overlapping sidebar session controls [#142042](https://github.com/openclaw/openclaw/pull/142042). Thanks [@RomneyDa](https://github.com/RomneyDa). - Clear previous session timing when a new run starts [#142187](https://github.com/openclaw/openclaw/pull/142187). -- Remove unintended underlines from Online sidebar names [#142217](https://github.com/openclaw/openclaw/pull/142217). Thanks @vyctorbrzezowski. -- Remove phantom sidebar children after subagent deletion [#142438](https://github.com/openclaw/openclaw/pull/142438). Thanks @jalehman, @vyctorbrzezowski. -- Finish opening the mobile sidebar after a swipe [#142578](https://github.com/openclaw/openclaw/pull/142578). Thanks @jalehman. +- Remove unintended underlines from Online sidebar names [#142217](https://github.com/openclaw/openclaw/pull/142217). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Remove phantom sidebar children after subagent deletion [#142438](https://github.com/openclaw/openclaw/pull/142438). Thanks [@jalehman](https://github.com/jalehman), [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Finish opening the mobile sidebar after a swipe [#142578](https://github.com/openclaw/openclaw/pull/142578). Thanks [@jalehman](https://github.com/jalehman). - Keep session details, child breadcrumbs and history retries consistent [#143049](https://github.com/openclaw/openclaw/pull/143049). - Restore multi-agent session lists after model fallback [#143337](https://github.com/openclaw/openclaw/pull/143337). -- Preserve native session actions after adoption [#143342](https://github.com/openclaw/openclaw/pull/143342). Thanks @sunlit-deng, @obviyus, @bricelb. +- Preserve native session actions after adoption [#143342](https://github.com/openclaw/openclaw/pull/143342). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@obviyus](https://github.com/obviyus), [@bricelb](https://github.com/bricelb). - Name device and cloud sessions before their first turn [#143760](https://github.com/openclaw/openclaw/pull/143760). @@ -268,13 +268,13 @@ A slim [message navigator](/web/control-ui/chat) on the left lets you preview a **Improvements** -- Navigate long chats with a compact per-message rail [#142227](https://github.com/openclaw/openclaw/pull/142227). Thanks @vyctorbrzezowski. -- Show senders in shared-chat navigation previews [#143486](https://github.com/openclaw/openclaw/pull/143486). Thanks @vyctorbrzezowski. +- Navigate long chats with a compact per-message rail [#142227](https://github.com/openclaw/openclaw/pull/142227). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Show senders in shared-chat navigation previews [#143486](https://github.com/openclaw/openclaw/pull/143486). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). **Bug fixes** -- Render Markdown in conversation rail previews [#142442](https://github.com/openclaw/openclaw/pull/142442). Thanks @jalehman. -- Smooth the Scroll to latest transition [#142720](https://github.com/openclaw/openclaw/pull/142720). Thanks @vyctorbrzezowski. +- Render Markdown in conversation rail previews [#142442](https://github.com/openclaw/openclaw/pull/142442). Thanks [@jalehman](https://github.com/jalehman). +- Smooth the Scroll to latest transition [#142720](https://github.com/openclaw/openclaw/pull/142720). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). @@ -291,9 +291,9 @@ If you use the same web address to connect to several Gateways, a conversation s **Improvements** -- Delay and fade conversation loading placeholders [3c322522](https://github.com/openclaw/openclaw/commit/3c322522d8413702c8bfed211fb02a443e047906). Context [#134868](https://github.com/openclaw/openclaw/pull/134868). Thanks @jesse-merhi. +- Delay and fade conversation loading placeholders [3c322522](https://github.com/openclaw/openclaw/commit/3c322522d8413702c8bfed211fb02a443e047906). Context [#134868](https://github.com/openclaw/openclaw/pull/134868). Thanks [@jesse-merhi](https://github.com/jesse-merhi). - Show cached chat and sidebar content while reconnecting [#141121](https://github.com/openclaw/openclaw/pull/141121). Context [#141690](https://github.com/openclaw/openclaw/issues/141690). -- Reduce startup JavaScript while retaining translated Settings help [#143376](https://github.com/openclaw/openclaw/pull/143376). Thanks @vincentkoc. +- Reduce startup JavaScript while retaining translated Settings help [#143376](https://github.com/openclaw/openclaw/pull/143376). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -312,15 +312,15 @@ _The selected welcome text appears in the composer and remains unsent. Published **Improvements** -- Add selected text to the main chat draft [#142543](https://github.com/openclaw/openclaw/pull/142543). Thanks @Patrick-Erichsen. +- Add selected text to the main chat draft [#142543](https://github.com/openclaw/openclaw/pull/142543). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). - Translate Add to chat across 20 existing locales [#142576](https://github.com/openclaw/openclaw/pull/142576). **Bug fixes** -- Fix mobile chat spacing, scrolling previews, and keyboard focus [#142143](https://github.com/openclaw/openclaw/pull/142143). Thanks @IWhatsskill, @vyctorbrzezowski. +- Fix mobile chat spacing, scrolling previews, and keyboard focus [#142143](https://github.com/openclaw/openclaw/pull/142143). Thanks [@IWhatsskill](https://github.com/IWhatsskill), [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Refresh attachment overflow cues after changes and resizing [#142577](https://github.com/openclaw/openclaw/pull/142577). -- Align composer attachments with draft text [#142658](https://github.com/openclaw/openclaw/pull/142658). Thanks @vyctorbrzezowski. -- Keep long drafts readable while typing [#142955](https://github.com/openclaw/openclaw/pull/142955). Thanks @jalehman. +- Align composer attachments with draft text [#142658](https://github.com/openclaw/openclaw/pull/142658). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Keep long drafts readable while typing [#142955](https://github.com/openclaw/openclaw/pull/142955). Thanks [@jalehman](https://github.com/jalehman). - Refresh shared-chat previews when a tab stops typing [#143400](https://github.com/openclaw/openclaw/pull/143400). @@ -336,16 +336,16 @@ Images you send stay visible while the conversation updates, and scrolling back **Improvements** -- Place file cards above text and align participant media [#142671](https://github.com/openclaw/openclaw/pull/142671). Thanks @vyctorbrzezowski. +- Place file cards above text and align participant media [#142671](https://github.com/openclaw/openclaw/pull/142671). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). **Bug fixes** -- Keep loaded images visible when scrolling back through chat [#138303](https://github.com/openclaw/openclaw/pull/138303). Context [#138301](https://github.com/openclaw/openclaw/issues/138301). Thanks @vyctorbrzezowski. -- Make chat attachment spacing consistent [#142246](https://github.com/openclaw/openclaw/pull/142246). Thanks @vyctorbrzezowski. -- Prevent duplicate final replies as chat history loads [#142422](https://github.com/openclaw/openclaw/pull/142422). Thanks @jalehman. -- Show loading progress while attachment previews resolve [#142613](https://github.com/openclaw/openclaw/pull/142613). Thanks @vyctorbrzezowski. -- Align attachment placeholders with Open buttons [#142665](https://github.com/openclaw/openclaw/pull/142665). Thanks @vyctorbrzezowski. -- Align sender avatars with attachment text [#142694](https://github.com/openclaw/openclaw/pull/142694). Thanks @vyctorbrzezowski. +- Keep loaded images visible when scrolling back through chat [#138303](https://github.com/openclaw/openclaw/pull/138303). Context [#138301](https://github.com/openclaw/openclaw/issues/138301). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Make chat attachment spacing consistent [#142246](https://github.com/openclaw/openclaw/pull/142246). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Prevent duplicate final replies as chat history loads [#142422](https://github.com/openclaw/openclaw/pull/142422). Thanks [@jalehman](https://github.com/jalehman). +- Show loading progress while attachment previews resolve [#142613](https://github.com/openclaw/openclaw/pull/142613). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Align attachment placeholders with Open buttons [#142665](https://github.com/openclaw/openclaw/pull/142665). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Align sender avatars with attachment text [#142694](https://github.com/openclaw/openclaw/pull/142694). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Prevent duplicate bubbles after CLI history refresh [#142725](https://github.com/openclaw/openclaw/pull/142725). - Keep sent images visible during history loading [#143407](https://github.com/openclaw/openclaw/pull/143407). @@ -362,8 +362,8 @@ Selected videos can now show a still image in the message box, so you can tell s **Improvements** -- Preview selected videos before sending [#142623](https://github.com/openclaw/openclaw/pull/142623). Thanks @vyctorbrzezowski. -- Show user video previews above chat text [#142639](https://github.com/openclaw/openclaw/pull/142639). Thanks @vyctorbrzezowski. +- Preview selected videos before sending [#142623](https://github.com/openclaw/openclaw/pull/142623). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Show user video previews above chat text [#142639](https://github.com/openclaw/openclaw/pull/142639). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). @@ -384,11 +384,11 @@ _A fictional welcome brief opens in Review beside its conversation. Published 20 **Bug fixes** -- Protect newer workspace edits from stale editor saves [#135865](https://github.com/openclaw/openclaw/pull/135865). Context [#127592](https://github.com/openclaw/openclaw/issues/127592). Thanks @yetval, @obviyus. +- Protect newer workspace edits from stale editor saves [#135865](https://github.com/openclaw/openclaw/pull/135865). Context [#127592](https://github.com/openclaw/openclaw/issues/127592). Thanks [@yetval](https://github.com/yetval), [@obviyus](https://github.com/obviyus). - Correct expanded file-preview tooltips [#142039](https://github.com/openclaw/openclaw/pull/142039). -- Compact phone file previews and retain fullscreen identity [#142536](https://github.com/openclaw/openclaw/pull/142536). Thanks @vyctorbrzezowski. +- Compact phone file previews and retain fullscreen identity [#142536](https://github.com/openclaw/openclaw/pull/142536). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Browse long file lists with search and filters [#143854](https://github.com/openclaw/openclaw/pull/143854). -- Show why a file could not open [#143958](https://github.com/openclaw/openclaw/pull/143958). Thanks @Marvinthebored, @Peetiegonzalez, @obviyus. +- Show why a file could not open [#143958](https://github.com/openclaw/openclaw/pull/143958). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@Peetiegonzalez](https://github.com/Peetiegonzalez), [@obviyus](https://github.com/obviyus). @@ -423,12 +423,12 @@ Finished and cancelled helper tasks stop showing their old working messages, whi **Bug fixes** -- Clear stale activity text when subagent tasks finish [#129610](https://github.com/openclaw/openclaw/pull/129610). Thanks @jalehman. -- Keep tool commentary single and visible after refresh [#140834](https://github.com/openclaw/openclaw/pull/140834). Thanks @leapdragon, @obviyus. +- Clear stale activity text when subagent tasks finish [#129610](https://github.com/openclaw/openclaw/pull/129610). Thanks [@jalehman](https://github.com/jalehman). +- Keep tool commentary single and visible after refresh [#140834](https://github.com/openclaw/openclaw/pull/140834). Thanks [@leapdragon](https://github.com/leapdragon), [@obviyus](https://github.com/obviyus). - Preserve paragraphs and code blocks in displayed reasoning [#142231](https://github.com/openclaw/openclaw/pull/142231). -- Keep subagent reports above the view-only footer [#142275](https://github.com/openclaw/openclaw/pull/142275). Thanks @vyctorbrzezowski. +- Keep subagent reports above the view-only footer [#142275](https://github.com/openclaw/openclaw/pull/142275). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Preserve literal text in tool activity previews [#142436](https://github.com/openclaw/openclaw/pull/142436). -- Discourage progress cards for quick requests [#142696](https://github.com/openclaw/openclaw/pull/142696). Thanks @vyctorbrzezowski. +- Discourage progress cards for quick requests [#142696](https://github.com/openclaw/openclaw/pull/142696). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Make subagent activity previews readable [#143741](https://github.com/openclaw/openclaw/pull/143741). @@ -444,11 +444,11 @@ Click the [Dashboard](/web/dashboards) tab to give it the full task area, then c **Improvements** -- Expand Dashboard and restore the original split [#143579](https://github.com/openclaw/openclaw/pull/143579). Thanks @fuller-stack-dev. +- Expand Dashboard and restore the original split [#143579](https://github.com/openclaw/openclaw/pull/143579). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). **Bug fixes** -- Show activity for the dashboard widget's target session [#137255](https://github.com/openclaw/openclaw/pull/137255). Context [#137188](https://github.com/openclaw/openclaw/issues/137188). Thanks @sunlit-deng, @obviyus, @Richard355168, @benjaml4. +- Show activity for the dashboard widget's target session [#137255](https://github.com/openclaw/openclaw/pull/137255). Context [#137188](https://github.com/openclaw/openclaw/issues/137188). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@obviyus](https://github.com/obviyus), [@Richard355168](https://github.com/Richard355168), [@benjaml4](https://github.com/benjaml4). @@ -465,9 +465,9 @@ If uploads remain blocked after a crash, follow the [terminal recovery steps](/w **Bug fixes** -- Recover terminal uploads after failed lock release [#141250](https://github.com/openclaw/openclaw/pull/141250). Context [#137116](https://github.com/openclaw/openclaw/issues/137116). Thanks @shakkernerd. -- Insert uploaded paths into paired-node coding terminals [#142001](https://github.com/openclaw/openclaw/pull/142001). Thanks @shakkernerd. -- Keep terminal tabs during interrupted restoration [#144015](https://github.com/openclaw/openclaw/pull/144015). Thanks @vincentkoc. +- Recover terminal uploads after failed lock release [#141250](https://github.com/openclaw/openclaw/pull/141250). Context [#137116](https://github.com/openclaw/openclaw/issues/137116). Thanks [@shakkernerd](https://github.com/shakkernerd). +- Insert uploaded paths into paired-node coding terminals [#142001](https://github.com/openclaw/openclaw/pull/142001). Thanks [@shakkernerd](https://github.com/shakkernerd). +- Keep terminal tabs during interrupted restoration [#144015](https://github.com/openclaw/openclaw/pull/144015). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** @@ -490,13 +490,13 @@ _Searching for appearance narrows navigation to the real theme and accent contro **Improvements** -- Open Agents settings on Overview [#142884](https://github.com/openclaw/openclaw/pull/142884). Thanks @jalehman. +- Open Agents settings on Overview [#142884](https://github.com/openclaw/openclaw/pull/142884). Thanks [@jalehman](https://github.com/jalehman). **Bug fixes** -- Match Web search controls to the global disable setting [#121557](https://github.com/openclaw/openclaw/pull/121557). Context [#121401](https://github.com/openclaw/openclaw/issues/121401). Thanks @zyw02, @obviyus. -- Distinguish Mac and iPad browser labels [#136545](https://github.com/openclaw/openclaw/pull/136545). Context [#136544](https://github.com/openclaw/openclaw/issues/136544). Thanks @TheAngryPit, @obviyus. -- Keep shortened account labels valid Unicode [#137686](https://github.com/openclaw/openclaw/pull/137686). Thanks @ly85206559, @obviyus. +- Match Web search controls to the global disable setting [#121557](https://github.com/openclaw/openclaw/pull/121557). Context [#121401](https://github.com/openclaw/openclaw/issues/121401). Thanks [@zyw02](https://github.com/zyw02), [@obviyus](https://github.com/obviyus). +- Distinguish Mac and iPad browser labels [#136545](https://github.com/openclaw/openclaw/pull/136545). Context [#136544](https://github.com/openclaw/openclaw/issues/136544). Thanks [@TheAngryPit](https://github.com/TheAngryPit), [@obviyus](https://github.com/obviyus). +- Keep shortened account labels valid Unicode [#137686](https://github.com/openclaw/openclaw/pull/137686). Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). - Start empty numeric settings at the first allowed value [#142201](https://github.com/openclaw/openclaw/pull/142201). - Keep unfinished Settings edits when list rows move [#142564](https://github.com/openclaw/openclaw/pull/142564). - Preserve Settings phrase matches around tag filters [#142618](https://github.com/openclaw/openclaw/pull/142618). @@ -515,17 +515,17 @@ The mention picker keeps suggestions available while you refine a search, making **Improvements** -- Simplify mention labels and improve picker layout [#142274](https://github.com/openclaw/openclaw/pull/142274). Thanks @vyctorbrzezowski. +- Simplify mention labels and improve picker layout [#142274](https://github.com/openclaw/openclaw/pull/142274). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Reduce repeated presence reads across watched sessions [#142612](https://github.com/openclaw/openclaw/pull/142612). **Bug fixes** -- Restore picker avatars on authenticated Gateways [#140954](https://github.com/openclaw/openclaw/pull/140954). Context [#140879](https://github.com/openclaw/openclaw/issues/140879). Thanks @LiuwqGit, @obviyus, @dimonnld, @rondavis007. +- Restore picker avatars on authenticated Gateways [#140954](https://github.com/openclaw/openclaw/pull/140954). Context [#140879](https://github.com/openclaw/openclaw/issues/140879). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@dimonnld](https://github.com/dimonnld), [@rondavis007](https://github.com/rondavis007). - Label shared Gateway owner presence in the web UI [#141863](https://github.com/openclaw/openclaw/pull/141863). -- Restore saved avatars in agent settings [#142015](https://github.com/openclaw/openclaw/pull/142015). Thanks @LiuwqGit, @obviyus, @lei-happy. -- Keep person mention suggestions available while typing [#142332](https://github.com/openclaw/openclaw/pull/142332). Thanks @vyctorbrzezowski. -- Refresh open-chat identity after agent edits [#142581](https://github.com/openclaw/openclaw/pull/142581). Thanks @aim9sour. -- Save smaller replacement agent avatars without size-drop rejection [#143147](https://github.com/openclaw/openclaw/pull/143147). Thanks @LiuwqGit, @obviyus, @skaneta. +- Restore saved avatars in agent settings [#142015](https://github.com/openclaw/openclaw/pull/142015). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@lei-happy](https://github.com/lei-happy). +- Keep person mention suggestions available while typing [#142332](https://github.com/openclaw/openclaw/pull/142332). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Refresh open-chat identity after agent edits [#142581](https://github.com/openclaw/openclaw/pull/142581). Thanks [@aimansour](https://github.com/aimansour). +- Save smaller replacement agent avatars without size-drop rejection [#143147](https://github.com/openclaw/openclaw/pull/143147). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@skaneta](https://github.com/skaneta). @@ -557,10 +557,10 @@ If a reply has finished but the screen still shows Stop, clicking it can bring b **Bug fixes** -- Keep chat delivery recovery controls visible on mobile [#141798](https://github.com/openclaw/openclaw/pull/141798). Thanks @Takhoffman. -- Keep no-reply timeout notices in conversation history [#142135](https://github.com/openclaw/openclaw/pull/142135). Thanks @chelsealong, @obviyus, @von8794. +- Keep chat delivery recovery controls visible on mobile [#141798](https://github.com/openclaw/openclaw/pull/141798). Thanks [@Takhoffman](https://github.com/Takhoffman). +- Keep no-reply timeout notices in conversation history [#142135](https://github.com/openclaw/openclaw/pull/142135). Thanks [@chelsealong](https://github.com/chelsealong), [@obviyus](https://github.com/obviyus), [@von8794](https://github.com/von8794). - Ask for a Gateway token after remembered device credentials fail [#143156](https://github.com/openclaw/openclaw/pull/143156). -- Restore Send when Stop finds a finished run [#143437](https://github.com/openclaw/openclaw/pull/143437). Thanks @ylcn91, @obviyus, @YanHE1169. +- Restore Send when Stop finds a finished run [#143437](https://github.com/openclaw/openclaw/pull/143437). Thanks [@ylcn91](https://github.com/ylcn91), [@obviyus](https://github.com/obviyus), [@YanHE1169](https://github.com/YanHE1169). **Documentation** @@ -579,25 +579,25 @@ Opening the command palette no longer blurs the conversation behind it, so you c **Improvements** -- Use a neutral border around user avatars [#138285](https://github.com/openclaw/openclaw/pull/138285). Context [#138277](https://github.com/openclaw/openclaw/issues/138277). Thanks @vyctorbrzezowski. -- Prepare the Inbox panel before opening [#142316](https://github.com/openclaw/openclaw/pull/142316). Thanks @vyctorbrzezowski. -- Keep background text readable behind the command palette [#142944](https://github.com/openclaw/openclaw/pull/142944). Thanks @jalehman. -- Remove first-reply confetti from chat [#143167](https://github.com/openclaw/openclaw/pull/143167). Thanks @Patrick-Erichsen. +- Use a neutral border around user avatars [#138285](https://github.com/openclaw/openclaw/pull/138285). Context [#138277](https://github.com/openclaw/openclaw/issues/138277). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Prepare the Inbox panel before opening [#142316](https://github.com/openclaw/openclaw/pull/142316). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Keep background text readable behind the command palette [#142944](https://github.com/openclaw/openclaw/pull/142944). Thanks [@jalehman](https://github.com/jalehman). +- Remove first-reply confetti from chat [#143167](https://github.com/openclaw/openclaw/pull/143167). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Offer automatic host selection in the exec picker [#137565](https://github.com/openclaw/openclaw/pull/137565). Thanks @jalehman. -- Preserve Unicode when shortening Mermaid errors [#137669](https://github.com/openclaw/openclaw/pull/137669). Thanks @ly85206559, @obviyus. -- Keep unavailable GitHub previews quiet [#141896](https://github.com/openclaw/openclaw/pull/141896). Thanks @RomneyDa. +- Offer automatic host selection in the exec picker [#137565](https://github.com/openclaw/openclaw/pull/137565). Thanks [@jalehman](https://github.com/jalehman). +- Preserve Unicode when shortening Mermaid errors [#137669](https://github.com/openclaw/openclaw/pull/137669). Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). +- Keep unavailable GitHub previews quiet [#141896](https://github.com/openclaw/openclaw/pull/141896). Thanks [@RomneyDa](https://github.com/RomneyDa). - Skip rejected read updates in restricted chats [#142043](https://github.com/openclaw/openclaw/pull/142043). -- Match menu highlights to the active theme [#142243](https://github.com/openclaw/openclaw/pull/142243). Thanks @vyctorbrzezowski. +- Match menu highlights to the active theme [#142243](https://github.com/openclaw/openclaw/pull/142243). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Release temporary focus handlers after using chat pickers [#142258](https://github.com/openclaw/openclaw/pull/142258). -- Remove unintended underlines from button links [#142335](https://github.com/openclaw/openclaw/pull/142335). Thanks @vyctorbrzezowski. +- Remove unintended underlines from button links [#142335](https://github.com/openclaw/openclaw/pull/142335). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Reject invalid custom chat message widths [#142635](https://github.com/openclaw/openclaw/pull/142635). -- Remove duplicate tooltips from GitHub preview links [#142637](https://github.com/openclaw/openclaw/pull/142637). Thanks @vyctorbrzezowski. -- Preserve Mac text-editing Control shortcuts [#142674](https://github.com/openclaw/openclaw/pull/142674). Thanks @jalehman. -- Show the correct Option/Alt+Click session-selection shortcut [#143051](https://github.com/openclaw/openclaw/pull/143051). Thanks @vincentkoc. -- Align chat actions and retain green copy confirmation [#143425](https://github.com/openclaw/openclaw/pull/143425). Thanks @Patrick-Erichsen. +- Remove duplicate tooltips from GitHub preview links [#142637](https://github.com/openclaw/openclaw/pull/142637). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Preserve Mac text-editing Control shortcuts [#142674](https://github.com/openclaw/openclaw/pull/142674). Thanks [@jalehman](https://github.com/jalehman). +- Show the correct Option/Alt+Click session-selection shortcut [#143051](https://github.com/openclaw/openclaw/pull/143051). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Align chat actions and retain green copy confirmation [#143425](https://github.com/openclaw/openclaw/pull/143425). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). @@ -643,14 +643,14 @@ More labels and help text are translated in Settings, plugin browsing, Files, an **Bug fixes** -- Apply available translations to core Settings fields [#137192](https://github.com/openclaw/openclaw/pull/137192). Context [#137190](https://github.com/openclaw/openclaw/issues/137190). Thanks @husodrn46, @obviyus. +- Apply available translations to core Settings fields [#137192](https://github.com/openclaw/openclaw/pull/137192). Context [#137190](https://github.com/openclaw/openclaw/issues/137190). Thanks [@husodrn46](https://github.com/husodrn46), [@obviyus](https://github.com/obviyus). - Localize the picker's No matches message [#142255](https://github.com/openclaw/openclaw/pull/142255). - Correct parent-session and dashboard translations [#142327](https://github.com/openclaw/openclaw/pull/142327). **Documentation** - Refresh translated Gateway connection guidance [#141803](https://github.com/openclaw/openclaw/pull/141803). -- Align maturity documentation with current product names [#142065](https://github.com/openclaw/openclaw/pull/142065). Thanks @RomneyDa. +- Align maturity documentation with current product names [#142065](https://github.com/openclaw/openclaw/pull/142065). Thanks [@RomneyDa](https://github.com/RomneyDa). @@ -673,17 +673,17 @@ Updates from recent stable releases can get past failures that prevented them fr **Bug fixes** -- Let older updaters finish and restart the Gateway [#142195](https://github.com/openclaw/openclaw/pull/142195) Thanks @Newsstand. -- Check Node compatibility before dev-update installation [#142248](https://github.com/openclaw/openclaw/pull/142248) Thanks @TheAngryPit, @jialele, @obviyus. -- Correct Node compatibility advice during updates [#142322](https://github.com/openclaw/openclaw/pull/142322) Thanks @SunnyShu0925, @guarismo. -- Allow update checks while agent databases are busy [#142419](https://github.com/openclaw/openclaw/pull/142419) Thanks @jalehman. -- Restore restart launch after updates from the 2026.9.1 Git build 0229a108 [#142631](https://github.com/openclaw/openclaw/pull/142631) Thanks @jason-allen-oneal. -- Follow the activated package directory during managed pnpm updates [#143137](https://github.com/openclaw/openclaw/pull/143137) Thanks @timetrvlr. -- Preserve bundled-plugin trust during update trials [#143190](https://github.com/openclaw/openclaw/pull/143190) Thanks @DonnieFi. +- Let older updaters finish and restart the Gateway [#142195](https://github.com/openclaw/openclaw/pull/142195) Thanks [@Newsstand](https://github.com/Newsstand). +- Check Node compatibility before dev-update installation [#142248](https://github.com/openclaw/openclaw/pull/142248) Thanks [@TheAngryPit](https://github.com/TheAngryPit), [@jialele](https://github.com/jialele), [@obviyus](https://github.com/obviyus). +- Correct Node compatibility advice during updates [#142322](https://github.com/openclaw/openclaw/pull/142322) Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@guarismo](https://github.com/guarismo). +- Allow update checks while agent databases are busy [#142419](https://github.com/openclaw/openclaw/pull/142419) Thanks [@jalehman](https://github.com/jalehman). +- Restore restart launch after updates from the 2026.9.1 Git build 0229a108 [#142631](https://github.com/openclaw/openclaw/pull/142631) Thanks [@jason-allen-oneal](https://github.com/jason-allen-oneal). +- Follow the activated package directory during managed pnpm updates [#143137](https://github.com/openclaw/openclaw/pull/143137) Thanks [@timetrvlr](https://github.com/timetrvlr). +- Preserve bundled-plugin trust during update trials [#143190](https://github.com/openclaw/openclaw/pull/143190) Thanks [@DonnieFi](https://github.com/DonnieFi). - Restore upgrades from older stable releases [#143859](https://github.com/openclaw/openclaw/pull/143859) -- Verify the same Gateway through update checks [#143863](https://github.com/openclaw/openclaw/pull/143863) Thanks @fuller-stack-dev. -- Fix managed-update helper startup [#144031](https://github.com/openclaw/openclaw/pull/144031) Thanks @IWhatsskill, @fuller-stack-dev. -- Allow confirmed service-less Linux updates, keep transcript stdout clean, preserve custom root/account schema types, and reuse warm Claude CLI processes when prepared skills are unchanged [#144402](https://github.com/openclaw/openclaw/pull/144402) Thanks @vincentkoc. +- Verify the same Gateway through update checks [#143863](https://github.com/openclaw/openclaw/pull/143863) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Fix managed-update helper startup [#144031](https://github.com/openclaw/openclaw/pull/144031) Thanks [@IWhatsskill](https://github.com/IWhatsskill), [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Allow confirmed service-less Linux updates, keep transcript stdout clean, preserve custom root/account schema types, and reuse warm Claude CLI processes when prepared skills are unchanged [#144402](https://github.com/openclaw/openclaw/pull/144402) Thanks [@vincentkoc](https://github.com/vincentkoc). **Limits and compatibility** @@ -702,10 +702,10 @@ If you run OpenClaw from a Git checkout, updates can recover when an upstream re **Bug fixes** -- Recover Git updates when upstream release tags move [#126816](https://github.com/openclaw/openclaw/pull/126816) Thanks @ruel225, @zhangguiping-xydt, @ToneLoke. Context [#123318](https://github.com/openclaw/openclaw/issues/123318). +- Recover Git updates when upstream release tags move [#126816](https://github.com/openclaw/openclaw/pull/126816) Thanks [@ruel225](https://github.com/ruel225), [@zhangguiping-xydt](https://github.com/zhangguiping-xydt), [@ToneLoke](https://github.com/ToneLoke). Context [#123318](https://github.com/openclaw/openclaw/issues/123318). - Sync source assets with unusual filenames [#142024](https://github.com/openclaw/openclaw/pull/142024) -- Warn when failed update fetches leave status information stale [#142199](https://github.com/openclaw/openclaw/pull/142199) Thanks @ToneLoke. -- Fix Windows Git configuration paths for updates and cloning [#142749](https://github.com/openclaw/openclaw/pull/142749) Thanks @pengzh1, @aevgeniou, @jalehman. +- Warn when failed update fetches leave status information stale [#142199](https://github.com/openclaw/openclaw/pull/142199) Thanks [@ToneLoke](https://github.com/ToneLoke). +- Fix Windows Git configuration paths for updates and cloning [#142749](https://github.com/openclaw/openclaw/pull/142749) Thanks [@pengzh1](https://github.com/pengzh1), [@aevgeniou](https://github.com/aevgeniou), [@jalehman](https://github.com/jalehman). @@ -720,15 +720,15 @@ When an update fails, OpenClaw can put the previous app version back if it still **Bug fixes** -- Preserve existing state when Gateway startup needs repair [#141451](https://github.com/openclaw/openclaw/pull/141451) Thanks @Lendersmark, @jerabinovich. -- Correct version checks after failed-update recovery [#142817](https://github.com/openclaw/openclaw/pull/142817) Thanks @wangmiao0668000666. -- Stop rollback after updater ownership is lost [#143791](https://github.com/openclaw/openclaw/pull/143791) Thanks @vincentkoc, @fuller-stack-dev. -- Report failed temporary-copy cleanup [#143844](https://github.com/openclaw/openclaw/pull/143844) Thanks @fuller-stack-dev. -- Stop plugin writes after update ownership loss [#144130](https://github.com/openclaw/openclaw/pull/144130) Thanks @fuller-stack-dev. +- Preserve existing state when Gateway startup needs repair [#141451](https://github.com/openclaw/openclaw/pull/141451) Thanks [@Lendersmark](https://github.com/Lendersmark), [@jerabinovich](https://github.com/jerabinovich). +- Correct version checks after failed-update recovery [#142817](https://github.com/openclaw/openclaw/pull/142817) Thanks [@wangmiao0668000666](https://github.com/wangmiao0668000666). +- Stop rollback after updater ownership is lost [#143791](https://github.com/openclaw/openclaw/pull/143791) Thanks [@vincentkoc](https://github.com/vincentkoc), [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Report failed temporary-copy cleanup [#143844](https://github.com/openclaw/openclaw/pull/143844) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Stop plugin writes after update ownership loss [#144130](https://github.com/openclaw/openclaw/pull/144130) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). **Limits and compatibility** -- Guard compatible package rollback and interrupted updates, finish plugin work before restart, add copied-agent preflight, honor same-version package artifacts, and suppress unsolicited standalone restart notices [000af986](https://github.com/openclaw/openclaw/commit/000af986dc991e9cef3d10663c121503606f25cc) Thanks @fuller-stack-dev. Context [#140339](https://github.com/openclaw/openclaw/pull/140339). +- Guard compatible package rollback and interrupted updates, finish plugin work before restart, add copied-agent preflight, honor same-version package artifacts, and suppress unsolicited standalone restart notices [000af986](https://github.com/openclaw/openclaw/commit/000af986dc991e9cef3d10663c121503606f25cc) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). Context [#140339](https://github.com/openclaw/openclaw/pull/140339). @@ -743,8 +743,8 @@ An old “update in progress” message can stop blocking settings changes and a **Bug fixes** -- Repair abandoned update runs without an unnecessary 30-minute wait [#143136](https://github.com/openclaw/openclaw/pull/143136) Thanks @yncubys, @guarismo, @SunnyShu0925. -- Clear abandoned legacy updates that block settings writes [#143774](https://github.com/openclaw/openclaw/pull/143774) Thanks @Colton-Harris, @syfvb, @ElvisIO7, @rlosito, @alexph-dev, @aaajiao, @c0ncatenate, @unknowbug, @KingAkrej, @DasX, @jlacroix82, @mikronn2, @najef1979-code. +- Repair abandoned update runs without an unnecessary 30-minute wait [#143136](https://github.com/openclaw/openclaw/pull/143136) Thanks [@yncubys](https://github.com/yncubys), [@guarismo](https://github.com/guarismo), [@SunnyShu0925](https://github.com/SunnyShu0925). +- Clear abandoned legacy updates that block settings writes [#143774](https://github.com/openclaw/openclaw/pull/143774) Thanks [@Colton-Harris](https://github.com/Colton-Harris), [@syfvb](https://github.com/syfvb), [@ElvisIO7](https://github.com/ElvisIO7), [@rlosito](https://github.com/rlosito), [@alexph-dev](https://github.com/alexph-dev), [@aaajiao](https://github.com/aaajiao), [@c0ncatenate](https://github.com/c0ncatenate), [@unknowbug](https://github.com/unknowbug), [@KingAkrej](https://github.com/KingAkrej), [@DasX](https://github.com/DasX), [@jlacroix82](https://github.com/jlacroix82), [@mikronn2](https://github.com/mikronn2), [@najef1979-code](https://github.com/najef1979-code). **Documentation** @@ -763,7 +763,7 @@ Updates on larger installations now give Doctor, OpenClaw's repair tool, time to **Bug fixes** -- Allow long update Doctor repairs to finish [#143321](https://github.com/openclaw/openclaw/pull/143321) Thanks @fuller-stack-dev. +- Allow long update Doctor repairs to finish [#143321](https://github.com/openclaw/openclaw/pull/143321) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). - Continue updates after recoverable cleanup failures [#143767](https://github.com/openclaw/openclaw/pull/143767) @@ -785,7 +785,7 @@ Claude-assisted repairs start without project customizations that could delay th **Bug fixes** -- Make diagnosis optional after verified update rollback [#143657](https://github.com/openclaw/openclaw/pull/143657) Thanks @fuller-stack-dev. +- Make diagnosis optional after verified update rollback [#143657](https://github.com/openclaw/openclaw/pull/143657) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). **Documentation** @@ -793,7 +793,7 @@ Claude-assisted repairs start without project customizations that could delay th **Limits and compatibility** -- Start direct Claude triage in safe mode with advertised support, documented for Claude Code 2.1.169 or newer [#143474](https://github.com/openclaw/openclaw/pull/143474) Thanks @RomneyDa. +- Start direct Claude triage in safe mode with advertised support, documented for Claude Code 2.1.169 or newer [#143474](https://github.com/openclaw/openclaw/pull/143474) Thanks [@RomneyDa](https://github.com/RomneyDa). @@ -808,26 +808,26 @@ Update progress and the final report now agree about what happened, including wh **Improvements** -- Identify child processes in stalled update diagnostics [#141740](https://github.com/openclaw/openclaw/pull/141740) Thanks @hannesrudolph. -- Skip unrelated Doctor diagnostics during updates [#142675](https://github.com/openclaw/openclaw/pull/142675) Thanks @fuller-stack-dev. +- Identify child processes in stalled update diagnostics [#141740](https://github.com/openclaw/openclaw/pull/141740) Thanks [@hannesrudolph](https://github.com/hannesrudolph). +- Skip unrelated Doctor diagnostics during updates [#142675](https://github.com/openclaw/openclaw/pull/142675) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). **Bug fixes** -- Skip optional update probes and retain Doctor warnings [#141995](https://github.com/openclaw/openclaw/pull/141995) Thanks @hannesrudolph. +- Skip optional update probes and retain Doctor warnings [#141995](https://github.com/openclaw/openclaw/pull/141995) Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Preserve core Doctor warnings during updates [#142091](https://github.com/openclaw/openclaw/pull/142091) -- Retain Doctor diagnostics when update finalization times out [#142672](https://github.com/openclaw/openclaw/pull/142672) Thanks @fuller-stack-dev. -- Show refreshed commit counts before updating [#142837](https://github.com/openclaw/openclaw/pull/142837) Thanks @jalehman. +- Retain Doctor diagnostics when update finalization times out [#142672](https://github.com/openclaw/openclaw/pull/142672) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Show refreshed commit counts before updating [#142837](https://github.com/openclaw/openclaw/pull/142837) Thanks [@jalehman](https://github.com/jalehman). - Keep update guidance available when history fails [#143557](https://github.com/openclaw/openclaw/pull/143557) - Load update history without pausing other Gateway work [#143605](https://github.com/openclaw/openclaw/pull/143605) - Stop advertising unavailable update-report files [#143748](https://github.com/openclaw/openclaw/pull/143748) - Correct agent guidance for authorized SSH updates to a different host while retaining normal approvals [#143754](https://github.com/openclaw/openclaw/pull/143754) -- Report final update results and retained backups [#143921](https://github.com/openclaw/openclaw/pull/143921) Thanks @fuller-stack-dev. +- Report final update results and retained backups [#143921](https://github.com/openclaw/openclaw/pull/143921) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). - Keep update progress consistent with final reports [#143965](https://github.com/openclaw/openclaw/pull/143965) **Documentation** -- Split update documentation into focused guides [#142858](https://github.com/openclaw/openclaw/pull/142858) Thanks @vincentkoc. -- Split updating guidance into focused pages [#142993](https://github.com/openclaw/openclaw/pull/142993) Thanks @vincentkoc. +- Split update documentation into focused guides [#142858](https://github.com/openclaw/openclaw/pull/142858) Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split updating guidance into focused pages [#142993](https://github.com/openclaw/openclaw/pull/142993) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -846,10 +846,10 @@ Running `openclaw update` now checks eligible plugins even if the main app is al **Bug fixes** -- Report newer releases without replacing official plugin pins [#137892](https://github.com/openclaw/openclaw/pull/137892) Thanks @pfrederiksen, @vincentkoc. Context [#137624](https://github.com/openclaw/openclaw/issues/137624). -- Show warnings for retained official plugin pins [#142457](https://github.com/openclaw/openclaw/pull/142457) Thanks @PollyBot13, @obviyus, @martins-oss. -- Run plugin maintenance when core is already current [#143174](https://github.com/openclaw/openclaw/pull/143174) Thanks @martins-oss, @fulgerulnegru, @kesslerio, @guojiongming, @soroyue, @Sedrak-Hovhannisyan. -- Skip redundant completion when updates change nothing [#143462](https://github.com/openclaw/openclaw/pull/143462) Thanks @RomneyDa. +- Report newer releases without replacing official plugin pins [#137892](https://github.com/openclaw/openclaw/pull/137892) Thanks [@pfrederiksen](https://github.com/pfrederiksen), [@vincentkoc](https://github.com/vincentkoc). Context [#137624](https://github.com/openclaw/openclaw/issues/137624). +- Show warnings for retained official plugin pins [#142457](https://github.com/openclaw/openclaw/pull/142457) Thanks [@PollyBot13](https://github.com/PollyBot13), [@obviyus](https://github.com/obviyus), [@martins-oss](https://github.com/martins-oss). +- Run plugin maintenance when core is already current [#143174](https://github.com/openclaw/openclaw/pull/143174) Thanks [@martins-oss](https://github.com/martins-oss), [@fulgerulnegru](https://github.com/fulgerulnegru), [@kesslerio](https://github.com/kesslerio), [@guojiongming](https://github.com/guojiongming), [@soroyue](https://github.com/soroyue), [@Sedrak-Hovhannisyan](https://github.com/Sedrak-Hovhannisyan). +- Skip redundant completion when updates change nothing [#143462](https://github.com/openclaw/openclaw/pull/143462) Thanks [@RomneyDa](https://github.com/RomneyDa). - Skip plugins already repaired under new IDs [#143861](https://github.com/openclaw/openclaw/pull/143861) @@ -868,27 +868,27 @@ If an older Claude conversation has not been converted to the current format, ru **Bug fixes** - Fix optional Codex checks, configuration-less update finalization, and private Doctor snapshot cleanup [f212072e](https://github.com/openclaw/openclaw/commit/f212072e4c6e5f67f356b4b213a0059bbdb07db2) -- Repair moved workspaces without blocking queued messages [#133198](https://github.com/openclaw/openclaw/pull/133198) Thanks @safzanpirani, @obviyus. Context [#133172](https://github.com/openclaw/openclaw/issues/133172). -- Preserve Unicode in shortened SQLite worker errors [#137675](https://github.com/openclaw/openclaw/pull/137675) Thanks @ly85206559, @obviyus. +- Repair moved workspaces without blocking queued messages [#133198](https://github.com/openclaw/openclaw/pull/133198) Thanks [@safzanpirani](https://github.com/safzanpirani), [@obviyus](https://github.com/obviyus). Context [#133172](https://github.com/openclaw/openclaw/issues/133172). +- Preserve Unicode in shortened SQLite worker errors [#137675](https://github.com/openclaw/openclaw/pull/137675) Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). - Wait for cooperating plugins to release Doctor inspection resources through their registration-local disposal callback [#141692](https://github.com/openclaw/openclaw/pull/141692) - Show backup recovery guidance for unreadable Doctor state [#141776](https://github.com/openclaw/openclaw/pull/141776) - Stop Doctor suggesting the skill repair already underway [#141866](https://github.com/openclaw/openclaw/pull/141866) - Explain shallow snapshot failures and incomplete clones [#141936](https://github.com/openclaw/openclaw/pull/141936) -- Preserve model choices and backends during Doctor migration [#142284](https://github.com/openclaw/openclaw/pull/142284) Thanks @obviyus. -- Respect search-provider choice in missing-plugin repair; the separate release-repair path can still select Brave from environment credentials [#142640](https://github.com/openclaw/openclaw/pull/142640) Thanks @vincentkoc. -- Correct full Doctor lint paths and preserve inspected sidecars and skill links; ordinary lint retains its separate shared-memory limitation [#142839](https://github.com/openclaw/openclaw/pull/142839) Thanks @thien-ngn, @obviyus. -- Restore legacy multi-agent backups without manual ownership edits [#143202](https://github.com/openclaw/openclaw/pull/143202) Thanks @GitHoubi. -- Repair legacy music-model references with Doctor [#143235](https://github.com/openclaw/openclaw/pull/143235) Thanks @obviyus. -- Preserve saved accounts through Doctor migration [#143429](https://github.com/openclaw/openclaw/pull/143429) Thanks @obviyus. +- Preserve model choices and backends during Doctor migration [#142284](https://github.com/openclaw/openclaw/pull/142284) Thanks [@obviyus](https://github.com/obviyus). +- Respect search-provider choice in missing-plugin repair; the separate release-repair path can still select Brave from environment credentials [#142640](https://github.com/openclaw/openclaw/pull/142640) Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct full Doctor lint paths and preserve inspected sidecars and skill links; ordinary lint retains its separate shared-memory limitation [#142839](https://github.com/openclaw/openclaw/pull/142839) Thanks [@thien-ngn](https://github.com/thien-ngn), [@obviyus](https://github.com/obviyus). +- Restore legacy multi-agent backups without manual ownership edits [#143202](https://github.com/openclaw/openclaw/pull/143202) Thanks [@GitHoubi](https://github.com/GitHoubi). +- Repair legacy music-model references with Doctor [#143235](https://github.com/openclaw/openclaw/pull/143235) Thanks [@obviyus](https://github.com/obviyus). +- Preserve saved accounts through Doctor migration [#143429](https://github.com/openclaw/openclaw/pull/143429) Thanks [@obviyus](https://github.com/obviyus). **Documentation** -- Organize Doctor guidance by repair task [#141961](https://github.com/openclaw/openclaw/pull/141961) Thanks @vincentkoc. -- Organize Doctor CLI documentation by task [#142855](https://github.com/openclaw/openclaw/pull/142855) Thanks @vincentkoc. +- Organize Doctor guidance by repair task [#141961](https://github.com/openclaw/openclaw/pull/141961) Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize Doctor CLI documentation by task [#142855](https://github.com/openclaw/openclaw/pull/142855) Thanks [@vincentkoc](https://github.com/vincentkoc). **Limits and compatibility** -- Migrate legacy Claude conversation bindings with Doctor [#143347](https://github.com/openclaw/openclaw/pull/143347) Thanks @obviyus. +- Migrate legacy Claude conversation bindings with Doctor [#143347](https://github.com/openclaw/openclaw/pull/143347) Thanks [@obviyus](https://github.com/obviyus). @@ -903,9 +903,9 @@ Importing older Codex conversations now keeps assistant replies that could previ **Bug fixes** -- Preserve Codex replies during legacy session import [#140296](https://github.com/openclaw/openclaw/pull/140296) Thanks @ylcn91, @ikenraf. Context [#140100](https://github.com/openclaw/openclaw/issues/140100). -- Explain hard-linked session migration refusals with recovery guidance [#143195](https://github.com/openclaw/openclaw/pull/143195) Thanks @GitHoubi. -- Preserve repaired media metadata in session archives [#143595](https://github.com/openclaw/openclaw/pull/143595) Thanks @fuller-stack-dev. +- Preserve Codex replies during legacy session import [#140296](https://github.com/openclaw/openclaw/pull/140296) Thanks [@ylcn91](https://github.com/ylcn91), [@ikenraf](https://github.com/ikenraf). Context [#140100](https://github.com/openclaw/openclaw/issues/140100). +- Explain hard-linked session migration refusals with recovery guidance [#143195](https://github.com/openclaw/openclaw/pull/143195) Thanks [@GitHoubi](https://github.com/GitHoubi). +- Preserve repaired media metadata in session archives [#143595](https://github.com/openclaw/openclaw/pull/143595) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). @@ -922,8 +922,8 @@ Backups also handle a disappearing temporary database file when its contents are **Bug fixes** -- Keep backups running when snapshotted SQLite sidecars disappear [#141161](https://github.com/openclaw/openclaw/pull/141161) Thanks @LiuwqGit, @vincentkoc, @Cobblestone-Digital1, @legupsystems. Context [#141042](https://github.com/openclaw/openclaw/issues/141042). Context [#67417](https://github.com/openclaw/openclaw/issues/67417). -- Preserve required configuration includes in full backups [#143693](https://github.com/openclaw/openclaw/pull/143693) Thanks @fuller-stack-dev. +- Keep backups running when snapshotted SQLite sidecars disappear [#141161](https://github.com/openclaw/openclaw/pull/141161) Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@vincentkoc](https://github.com/vincentkoc), [@Cobblestone-Digital1](https://github.com/Cobblestone-Digital1), [@legupsystems](https://github.com/legupsystems). Context [#141042](https://github.com/openclaw/openclaw/issues/141042). Context [#67417](https://github.com/openclaw/openclaw/issues/67417). +- Preserve required configuration includes in full backups [#143693](https://github.com/openclaw/openclaw/pull/143693) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). @@ -947,13 +947,13 @@ Installations with a lot of saved data get more time to finish database checks, - Allow large databases more startup-check time [#141918](https://github.com/openclaw/openclaw/pull/141918) - Give large database inspections a size-based timeout [#142179](https://github.com/openclaw/openclaw/pull/142179) -- Avoid redundant database scans during Doctor repair [#142669](https://github.com/openclaw/openclaw/pull/142669) Thanks @fuller-stack-dev. -- Keep healthy memory database handles open when no repair is needed and skip GitHub credential and bootstrap-size advisories during updates [#143361](https://github.com/openclaw/openclaw/pull/143361) Thanks @fuller-stack-dev. -- Name the Doctor repair command in SQLite startup errors [#143531](https://github.com/openclaw/openclaw/pull/143531) Thanks @RomneyDa. +- Avoid redundant database scans during Doctor repair [#142669](https://github.com/openclaw/openclaw/pull/142669) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Keep healthy memory database handles open when no repair is needed and skip GitHub credential and bootstrap-size advisories during updates [#143361](https://github.com/openclaw/openclaw/pull/143361) Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Name the Doctor repair command in SQLite startup errors [#143531](https://github.com/openclaw/openclaw/pull/143531) Thanks [@RomneyDa](https://github.com/RomneyDa). **Documentation** -- Organize database reference and recovery guidance [#143152](https://github.com/openclaw/openclaw/pull/143152) Thanks @vincentkoc. +- Organize database reference and recovery guidance [#143152](https://github.com/openclaw/openclaw/pull/143152) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -968,7 +968,7 @@ Deleting sessions and cleaning up old conversations are less likely to pause oth **Bug fixes** -- Recheck protected history and disk pressure during cleanup [#142505](https://github.com/openclaw/openclaw/pull/142505) Thanks @HermanZeng. +- Recheck protected history and disk pressure during cleanup [#142505](https://github.com/openclaw/openclaw/pull/142505) Thanks [@HermanZeng](https://github.com/HermanZeng). - Move cold session-cleanup checks off the Gateway main thread [#143226](https://github.com/openclaw/openclaw/pull/143226) - Stop excess session cleanup after disk pressure clears [#143285](https://github.com/openclaw/openclaw/pull/143285) - Move cold database checks out of history cleanup planning [#143332](https://github.com/openclaw/openclaw/pull/143332) @@ -991,22 +991,22 @@ Reconnecting avoids repeating unnecessary [health checks](/gateway/health), whil **Bug fixes** -- Avoid false repair advice for masked systemd services [#137869](https://github.com/openclaw/openclaw/pull/137869) Thanks @teddytennant, @obviyus, @aniruddhaadak80. Context [#128928](https://github.com/openclaw/openclaw/issues/128928). -- Prevent managed systemd restarts from hanging [#140914](https://github.com/openclaw/openclaw/pull/140914) Thanks @NianJiuZst, @rboy1, @obviyus. Context [#140821](https://github.com/openclaw/openclaw/issues/140821). -- Keep affected CLI-started Gateways running after transient DNS rejections without retrying the failed operation [#141163](https://github.com/openclaw/openclaw/pull/141163) Thanks @ly85206559, @orangejon. Context [#141123](https://github.com/openclaw/openclaw/issues/141123). -- Return service-unavailable responses when a Gateway handshake fails before WebSocket transfer [#141303](https://github.com/openclaw/openclaw/pull/141303) Thanks @hugenshen, @obviyus. +- Avoid false repair advice for masked systemd services [#137869](https://github.com/openclaw/openclaw/pull/137869) Thanks [@teddytennant](https://github.com/teddytennant), [@obviyus](https://github.com/obviyus), [@aniruddhaadak80](https://github.com/aniruddhaadak80). Context [#128928](https://github.com/openclaw/openclaw/issues/128928). +- Prevent managed systemd restarts from hanging [#140914](https://github.com/openclaw/openclaw/pull/140914) Thanks [@NianJiuZst](https://github.com/NianJiuZst), [@rboy1](https://github.com/rboy1), [@obviyus](https://github.com/obviyus). Context [#140821](https://github.com/openclaw/openclaw/issues/140821). +- Keep affected CLI-started Gateways running after transient DNS rejections without retrying the failed operation [#141163](https://github.com/openclaw/openclaw/pull/141163) Thanks [@ly85206559](https://github.com/ly85206559), [@orangejon](https://github.com/orangejon). Context [#141123](https://github.com/openclaw/openclaw/issues/141123). +- Return service-unavailable responses when a Gateway handshake fails before WebSocket transfer [#141303](https://github.com/openclaw/openclaw/pull/141303) Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). - Wait for Talk connection cleanup during shutdown [#141706](https://github.com/openclaw/openclaw/pull/141706) - Keep startup logs current after plugin reloads [#141736](https://github.com/openclaw/openclaw/pull/141736) -- Stop restart loops caused by conflicting Gateway settings [#141771](https://github.com/openclaw/openclaw/pull/141771) Thanks @chelsealong, @tomdailey55, @jalehman. +- Stop restart loops caused by conflicting Gateway settings [#141771](https://github.com/openclaw/openclaw/pull/141771) Thanks [@chelsealong](https://github.com/chelsealong), [@tomdailey55](https://github.com/tomdailey55), [@jalehman](https://github.com/jalehman). - Keep shared Gateway state available through cleanup [#142286](https://github.com/openclaw/openclaw/pull/142286) - Finish pending cleanup before automatic macOS CLI exit [#142814](https://github.com/openclaw/openclaw/pull/142814) - Avoid repeated health collection on reconnects [#143384](https://github.com/openclaw/openclaw/pull/143384) -- Preserve restart options during schema upgrades [#143738](https://github.com/openclaw/openclaw/pull/143738) Thanks @RomneyDa. +- Preserve restart options during schema upgrades [#143738](https://github.com/openclaw/openclaw/pull/143738) Thanks [@RomneyDa](https://github.com/RomneyDa). **Documentation** -- Split Gateway CLI reference by operator task [#143005](https://github.com/openclaw/openclaw/pull/143005) Thanks @vincentkoc. -- Organize Gateway troubleshooting by symptom [#143160](https://github.com/openclaw/openclaw/pull/143160) Thanks @vincentkoc. +- Split Gateway CLI reference by operator task [#143005](https://github.com/openclaw/openclaw/pull/143005) Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize Gateway troubleshooting by symptom [#143160](https://github.com/openclaw/openclaw/pull/143160) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1023,17 +1023,17 @@ Settings edits after creating or changing an agent also avoid false “changed s **Improvements** -- Add a read-only mode for externally managed configuration [#140719](https://github.com/openclaw/openclaw/pull/140719) Thanks @sallyom. Context [#140706](https://github.com/openclaw/openclaw/issues/140706). Context [#103606](https://github.com/openclaw/openclaw/issues/103606). +- Add a read-only mode for externally managed configuration [#140719](https://github.com/openclaw/openclaw/pull/140719) Thanks [@sallyom](https://github.com/sallyom). Context [#140706](https://github.com/openclaw/openclaw/issues/140706). Context [#103606](https://github.com/openclaw/openclaw/issues/103606). **Bug fixes** -- Refresh configuration revisions after agent changes [#142169](https://github.com/openclaw/openclaw/pull/142169) Thanks @ceckert, @obviyus. +- Refresh configuration revisions after agent changes [#142169](https://github.com/openclaw/openclaw/pull/142169) Thanks [@ceckert](https://github.com/ceckert), [@obviyus](https://github.com/obviyus). - Explain managed-configuration refusals without crash diagnostics [#143140](https://github.com/openclaw/openclaw/pull/143140) **Documentation** - Clarify manual restart requirements in reload-off mode [#127205](https://github.com/openclaw/openclaw/pull/127205) Context [#127203](https://github.com/openclaw/openclaw/issues/127203). -- Split Gateway configuration guidance into topic pages [#143456](https://github.com/openclaw/openclaw/pull/143456) Thanks @vincentkoc. +- Split Gateway configuration guidance into topic pages [#143456](https://github.com/openclaw/openclaw/pull/143456) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1048,8 +1048,8 @@ For Windows installations using OpenClaw’s standard launcher, stopping the sch **Bug fixes** -- Stop Windows Gateway task descendants and log child failures [#141744](https://github.com/openclaw/openclaw/pull/141744) Thanks @akagifreeez, @Devin-Linux, @unknowbug. -- Honor update timeouts for Windows service checks [#143292](https://github.com/openclaw/openclaw/pull/143292) Thanks @fanyuantaier. +- Stop Windows Gateway task descendants and log child failures [#141744](https://github.com/openclaw/openclaw/pull/141744) Thanks [@akagifreeez](https://github.com/akagifreeez), [@Devin-Linux](https://github.com/Devin-Linux), [@unknowbug](https://github.com/unknowbug). +- Honor update timeouts for Windows service checks [#143292](https://github.com/openclaw/openclaw/pull/143292) Thanks [@fanyuantaier](https://github.com/fanyuantaier). @@ -1064,7 +1064,7 @@ The [monitoring guide](/gateway/opentelemetry) makes it easier to find help sett **Documentation** -- Split OpenTelemetry guidance into focused pages [#142951](https://github.com/openclaw/openclaw/pull/142951) Thanks @vincentkoc. +- Split OpenTelemetry guidance into focused pages [#142951](https://github.com/openclaw/openclaw/pull/142951) Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1087,14 +1087,14 @@ Messages arriving while OpenClaw is paused now wait until it is ready again, and **Bug fixes** -- Hide internal finalizer placeholders in message-only groups [73ca607b1d99](https://github.com/openclaw/openclaw/commit/73ca607b1d9940ecb040527da0a3c610d15bc64a). Thanks @razvangirgiz, @obviyus, @omarshahine. Contextual provenance [#138645](https://github.com/openclaw/openclaw/pull/138645). -- Keep unfinished replies pending during forced cleanup [#141900](https://github.com/openclaw/openclaw/pull/141900). Thanks @Takhoffman. -- Pause message retries during Gateway suspension [#142064](https://github.com/openclaw/openclaw/pull/142064). Thanks @goutamadwant, @obviyus, @Stephane-fci. -- Keep plans and newer activity visible after repeated command exits [#142802](https://github.com/openclaw/openclaw/pull/142802). Thanks @obviyus. +- Hide internal finalizer placeholders in message-only groups [73ca607b1d99](https://github.com/openclaw/openclaw/commit/73ca607b1d9940ecb040527da0a3c610d15bc64a). Thanks [@razvangirgiz](https://github.com/razvangirgiz), [@obviyus](https://github.com/obviyus), [@omarshahine](https://github.com/omarshahine). Contextual provenance [#138645](https://github.com/openclaw/openclaw/pull/138645). +- Keep unfinished replies pending during forced cleanup [#141900](https://github.com/openclaw/openclaw/pull/141900). Thanks [@Takhoffman](https://github.com/Takhoffman). +- Pause message retries during Gateway suspension [#142064](https://github.com/openclaw/openclaw/pull/142064). Thanks [@goutamadwant](https://github.com/goutamadwant), [@obviyus](https://github.com/obviyus), [@Stephane-fci](https://github.com/Stephane-fci). +- Keep plans and newer activity visible after repeated command exits [#142802](https://github.com/openclaw/openclaw/pull/142802). Thanks [@obviyus](https://github.com/obviyus). **Improvements** -- Add clearer missing-reply notices and run references [#136462](https://github.com/openclaw/openclaw/pull/136462). Thanks @RomneyDa, @sloptop-the-terrible. +- Add clearer missing-reply notices and run references [#136462](https://github.com/openclaw/openclaw/pull/136462). Thanks [@RomneyDa](https://github.com/RomneyDa), [@sloptop-the-terrible](https://github.com/sloptop-the-terrible). @@ -1109,12 +1109,12 @@ Messages arriving while OpenClaw is paused now wait until it is ready again, and **Bug fixes** -- Preserve paragraph boundaries between streamed assistant messages [#140833](https://github.com/openclaw/openclaw/pull/140833). Thanks @leapdragon, @obviyus. -- Preserve quoted code spacing when removing delivery directives [#141767](https://github.com/openclaw/openclaw/pull/141767). Thanks @Alix-007, @obviyus. -- Preserve message-ID code examples in conversation displays [#141769](https://github.com/openclaw/openclaw/pull/141769). Thanks @Alix-007, @obviyus. +- Preserve paragraph boundaries between streamed assistant messages [#140833](https://github.com/openclaw/openclaw/pull/140833). Thanks [@leapdragon](https://github.com/leapdragon), [@obviyus](https://github.com/obviyus). +- Preserve quoted code spacing when removing delivery directives [#141767](https://github.com/openclaw/openclaw/pull/141767). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). +- Preserve message-ID code examples in conversation displays [#141769](https://github.com/openclaw/openclaw/pull/141769). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). - Preserve converted images that retain HEIC filenames [#142263](https://github.com/openclaw/openclaw/pull/142263). - Align short and empty code-table columns [#142406](https://github.com/openclaw/openclaw/pull/142406). -- Keep streamed prose and code formatted without duplicate finals [#143722](https://github.com/openclaw/openclaw/pull/143722). Thanks @obviyus, @rgregg. +- Keep streamed prose and code formatted without duplicate finals [#143722](https://github.com/openclaw/openclaw/pull/143722). Thanks [@obviyus](https://github.com/obviyus), [@rgregg](https://github.com/rgregg). @@ -1130,7 +1130,7 @@ If you enable [Telegram rich messages](/channels/telegram), links inside lists, **Bug fixes** - Preserve styled links and formatting in rich messages [#139976](https://github.com/openclaw/openclaw/pull/139976). -- Honor image defaults and retain sticker descriptions [#142023](https://github.com/openclaw/openclaw/pull/142023). Thanks @obviyus. +- Honor image defaults and retain sticker descriptions [#142023](https://github.com/openclaw/openclaw/pull/142023). Thanks [@obviyus](https://github.com/obviyus). - Preserve code-example spacing in Telegram text and captions [#142504](https://github.com/openclaw/openclaw/pull/142504). @@ -1146,14 +1146,14 @@ If you enable [Telegram rich messages](/channels/telegram), links inside lists, **Bug fixes** -- Recognize bot identity mentions in text and captions [#140266](https://github.com/openclaw/openclaw/pull/140266). Thanks @cai-ops, @obviyus. -- Stop stale stall reactions after cancelled preparation [#141079](https://github.com/openclaw/openclaw/pull/141079). Thanks @ooiuuii, @obviyus. -- Preserve tasks after multiline Telegram directives [#142008](https://github.com/openclaw/openclaw/pull/142008). Thanks @wangmiao0668000666, @obviyus. +- Recognize bot identity mentions in text and captions [#140266](https://github.com/openclaw/openclaw/pull/140266). Thanks [@cai-ops](https://github.com/cai-ops), [@obviyus](https://github.com/obviyus). +- Stop stale stall reactions after cancelled preparation [#141079](https://github.com/openclaw/openclaw/pull/141079). Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Preserve tasks after multiline Telegram directives [#142008](https://github.com/openclaw/openclaw/pull/142008). Thanks [@wangmiao0668000666](https://github.com/wangmiao0668000666), [@obviyus](https://github.com/obviyus). - Show the routed agent's thinking default in Telegram [#143789](https://github.com/openclaw/openclaw/pull/143789). **Documentation** -- Organize Telegram documentation by task [#142963](https://github.com/openclaw/openclaw/pull/142963). Thanks @vincentkoc. +- Organize Telegram documentation by task [#142963](https://github.com/openclaw/openclaw/pull/142963). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1168,7 +1168,7 @@ If you connect Telegram through a proxy and it refuses the connection before a r **Bug fixes** -- Recover queued replies after proxy tunnel refusals [#140388](https://github.com/openclaw/openclaw/pull/140388). Thanks @Hekzory, @MAG-Linares-Andalucia. +- Recover queued replies after proxy tunnel refusals [#140388](https://github.com/openclaw/openclaw/pull/140388). Thanks [@Hekzory](https://github.com/Hekzory), [@MAG-Linares-Andalucia](https://github.com/MAG-Linares-Andalucia). @@ -1185,15 +1185,15 @@ Requests such as checking OpenClaw’s system status can work again from server **Bug fixes** -- Populate member presence from startup and reconnect snapshots [#141218](https://github.com/openclaw/openclaw/pull/141218). Thanks @harshitgupta31415, @vincentkoc, @nissl24. -- Preserve Discord commentary and progress after send failures [#141621](https://github.com/openclaw/openclaw/pull/141621). Thanks @anyech, @obviyus, @dw1161. +- Populate member presence from startup and reconnect snapshots [#141218](https://github.com/openclaw/openclaw/pull/141218). Thanks [@harshitgupta31415](https://github.com/harshitgupta31415), [@vincentkoc](https://github.com/vincentkoc), [@nissl24](https://github.com/nissl24). +- Preserve Discord commentary and progress after send failures [#141621](https://github.com/openclaw/openclaw/pull/141621). Thanks [@anyech](https://github.com/anyech), [@obviyus](https://github.com/obviyus), [@dw1161](https://github.com/dw1161). - Preserve repeated Discord captions and link-button emoji [#142342](https://github.com/openclaw/openclaw/pull/142342). -- Preserve voice-note words in Discord ambient conversations [#142860](https://github.com/openclaw/openclaw/pull/142860). Thanks @ericcaiwx-star, @aatreya, @jalehman. -- Restore permitted system-agent delegation in Discord guild messages [#143006](https://github.com/openclaw/openclaw/pull/143006). Thanks @Marvinthebored, @Peetiegonzalez, @obviyus, @0xCyda, @lisheguo. +- Preserve voice-note words in Discord ambient conversations [#142860](https://github.com/openclaw/openclaw/pull/142860). Thanks [@ericcaiwx-star](https://github.com/ericcaiwx-star), [@aatreya](https://github.com/aatreya), [@jalehman](https://github.com/jalehman). +- Restore permitted system-agent delegation in Discord guild messages [#143006](https://github.com/openclaw/openclaw/pull/143006). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@Peetiegonzalez](https://github.com/Peetiegonzalez), [@obviyus](https://github.com/obviyus), [@0xCyda](https://github.com/0xCyda), [@lisheguo](https://github.com/lisheguo). **Documentation** -- Organize Discord documentation into focused guides [#142666](https://github.com/openclaw/openclaw/pull/142666). Thanks @vincentkoc. +- Organize Discord documentation into focused guides [#142666](https://github.com/openclaw/openclaw/pull/142666). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1208,9 +1208,9 @@ Slack can show its configured reaction when it picks up your mention even if you **Bug fixes** -- Resolve a shared workspace for owner heartbeat DMs [#138689](https://github.com/openclaw/openclaw/pull/138689). Thanks @Kimiyu-186. +- Resolve a shared workspace for owner heartbeat DMs [#138689](https://github.com/openclaw/openclaw/pull/138689). Thanks [@Kimiyu-186](https://github.com/Kimiyu-186). - Keep Slack prose out of code formatting after Windows paths [#142288](https://github.com/openclaw/openclaw/pull/142288). -- Keep Slack acknowledgements when status reactions are off [#142595](https://github.com/openclaw/openclaw/pull/142595). Thanks @sunlit-deng, @alexjpanagis. +- Keep Slack acknowledgements when status reactions are off [#142595](https://github.com/openclaw/openclaw/pull/142595). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@alexjpanagis](https://github.com/alexjpanagis). @@ -1229,13 +1229,13 @@ If a separately installed Feishu plugin stopped letting your Claw work with docu **Bug fixes** -- Restore Feishu workspace tools in message-driven runs [#141984](https://github.com/openclaw/openclaw/pull/141984). Thanks @SunnyShu0925, @hayden-cc, @lizhengwu, @jalehman, @seven7763, @itanyplus. +- Restore Feishu workspace tools in message-driven runs [#141984](https://github.com/openclaw/openclaw/pull/141984). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@hayden-cc](https://github.com/hayden-cc), [@lizhengwu](https://github.com/lizhengwu), [@jalehman](https://github.com/jalehman), [@seven7763](https://github.com/seven7763), [@itanyplus](https://github.com/itanyplus). - Apply updated Feishu tool settings to new turns [#141993](https://github.com/openclaw/openclaw/pull/141993). - Preserve Feishu inline styles in received posts [#142627](https://github.com/openclaw/openclaw/pull/142627). **Documentation** -- Organize Feishu documentation by task [#143085](https://github.com/openclaw/openclaw/pull/143085). Thanks @vincentkoc. +- Organize Feishu documentation by task [#143085](https://github.com/openclaw/openclaw/pull/143085). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1250,13 +1250,13 @@ If a separately installed Feishu plugin stopped letting your Claw work with docu **Bug fixes** -- Preserve Matrix text for unknown message types [#135359](https://github.com/openclaw/openclaw/pull/135359). Thanks @teddytennant, @obviyus. +- Preserve Matrix text for unknown message types [#135359](https://github.com/openclaw/openclaw/pull/135359). Thanks [@teddytennant](https://github.com/teddytennant), [@obviyus](https://github.com/obviyus). - Show Matrix reaction labels in CLI listings [#141811](https://github.com/openclaw/openclaw/pull/141811). - Keep escaped Matrix mentions literal after unmatched backticks [#142369](https://github.com/openclaw/openclaw/pull/142369). **Documentation** -- Organize Matrix documentation into focused guides [#142996](https://github.com/openclaw/openclaw/pull/142996). Thanks @vincentkoc. +- Organize Matrix documentation into focused guides [#142996](https://github.com/openclaw/openclaw/pull/142996). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1275,7 +1275,7 @@ Your Claw now reads punctuation and symbols correctly in [Teams messages](/chann **Documentation** -- Organize Teams documentation into focused guides [#142986](https://github.com/openclaw/openclaw/pull/142986). Thanks @vincentkoc. +- Organize Teams documentation into focused guides [#142986](https://github.com/openclaw/openclaw/pull/142986). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1290,7 +1290,7 @@ If you set [Signal](/channels/signal) to quote your message only on the first re **Documentation** -- Document Signal table modes, default bullets, and block-to-code fallback [#138160](https://github.com/openclaw/openclaw/pull/138160). Thanks @SunnyShu0925, @obviyus. +- Document Signal table modes, default bullets, and block-to-code fallback [#138160](https://github.com/openclaw/openclaw/pull/138160). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus). **Bug fixes** @@ -1309,7 +1309,7 @@ If you use a custom label at the start of your Claw’s WhatsApp replies, it no **Bug fixes** -- Keep reply prefixes out of incoming WhatsApp messages [#138819](https://github.com/openclaw/openclaw/pull/138819). Thanks @sunlit-deng, @vincentkoc, @Jackten. +- Keep reply prefixes out of incoming WhatsApp messages [#138819](https://github.com/openclaw/openclaw/pull/138819). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@vincentkoc](https://github.com/vincentkoc), [@Jackten](https://github.com/Jackten). @@ -1324,12 +1324,12 @@ If you use a custom label at the start of your Claw’s WhatsApp replies, it no **Documentation** -- Clarify current iMessage support in maturity docs [#141963](https://github.com/openclaw/openclaw/pull/141963). Thanks @RomneyDa. -- Organize iMessage guides by setup and messaging task [#143038](https://github.com/openclaw/openclaw/pull/143038). Thanks @vincentkoc. +- Clarify current iMessage support in maturity docs [#141963](https://github.com/openclaw/openclaw/pull/141963). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Organize iMessage guides by setup and messaging task [#143038](https://github.com/openclaw/openclaw/pull/143038). Thanks [@vincentkoc](https://github.com/vincentkoc). **Bug fixes** -- Show resolved iMessage contact and group names [#142128](https://github.com/openclaw/openclaw/pull/142128). Thanks @omarshahine. +- Show resolved iMessage contact and group names [#142128](https://github.com/openclaw/openclaw/pull/142128). Thanks [@omarshahine](https://github.com/omarshahine). @@ -1344,7 +1344,7 @@ For Mattermost setups that store login tokens separately from account settings, **Bug fixes** -- Keep other Mattermost accounts connected during settings reloads [#142193](https://github.com/openclaw/openclaw/pull/142193). Thanks @ceckert, @obviyus. +- Keep other Mattermost accounts connected during settings reloads [#142193](https://github.com/openclaw/openclaw/pull/142193). Thanks [@ceckert](https://github.com/ceckert), [@obviyus](https://github.com/obviyus). - Preserve replacement Mattermost progress previews [#143621](https://github.com/openclaw/openclaw/pull/143621). @@ -1360,7 +1360,7 @@ Replies from a resumed Google Chat conversation can use its saved destination co **Bug fixes** -- Preserve destination casing for resumed Google Chat replies [#140418](https://github.com/openclaw/openclaw/pull/140418). Thanks @aeoess, @obviyus, @jailbirt. +- Preserve destination casing for resumed Google Chat replies [#140418](https://github.com/openclaw/openclaw/pull/140418). Thanks [@aeoess](https://github.com/aeoess), [@obviyus](https://github.com/obviyus), [@jailbirt](https://github.com/jailbirt). @@ -1375,7 +1375,7 @@ When diagnostic recording is enabled, a successful Nextcloud Talk reaction no lo **Bug fixes** -- Avoid diagnostic-capture delays in Nextcloud Talk responses [#141307](https://github.com/openclaw/openclaw/pull/141307). Thanks @hugenshen, @obviyus. +- Avoid diagnostic-capture delays in Nextcloud Talk responses [#141307](https://github.com/openclaw/openclaw/pull/141307). Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). @@ -1390,7 +1390,7 @@ If a Tlon message cannot send because setup is incomplete, the error now tells y **Bug fixes** -- Identify missing Tlon account settings in send errors [#137664](https://github.com/openclaw/openclaw/pull/137664). Thanks @ly85206559, @obviyus. +- Identify missing Tlon account settings in send errors [#137664](https://github.com/openclaw/openclaw/pull/137664). Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). @@ -1405,7 +1405,7 @@ If you use multiple Zalo Personal accounts with an older setup, `openclaw doctor **Bug fixes** -- Restore Zalo Personal policy migration [#143860](https://github.com/openclaw/openclaw/pull/143860). Thanks @wangmiao0668000666, @obviyus. +- Restore Zalo Personal policy migration [#143860](https://github.com/openclaw/openclaw/pull/143860). Thanks [@wangmiao0668000666](https://github.com/wangmiao0668000666), [@obviyus](https://github.com/obviyus). @@ -1422,23 +1422,23 @@ If you use scripts, leave out `--account` and the [directory](/cli/directory) op **Limits and compatibility** -- Reject blank account options in directory commands [#137334](https://github.com/openclaw/openclaw/pull/137334). Thanks @Alix-007, @obviyus. -- Reject explicitly empty directory listing limits [#141738](https://github.com/openclaw/openclaw/pull/141738). Thanks @hugenshen, @obviyus. -- Reject empty account selectors in message and channel commands [#143088](https://github.com/openclaw/openclaw/pull/143088). Thanks @ly85206559, @obviyus. +- Reject blank account options in directory commands [#137334](https://github.com/openclaw/openclaw/pull/137334). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). +- Reject explicitly empty directory listing limits [#141738](https://github.com/openclaw/openclaw/pull/141738). Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). +- Reject empty account selectors in message and channel commands [#143088](https://github.com/openclaw/openclaw/pull/143088). Thanks [@ly85206559](https://github.com/ly85206559), [@obviyus](https://github.com/obviyus). **Bug fixes** - Show channel account selectors correctly in agent listings [#141724](https://github.com/openclaw/openclaw/pull/141724). -- Give message commands a working ownership remedy [#141886](https://github.com/openclaw/openclaw/pull/141886). Thanks @Dreamer-HIT, @obviyus, @schwanncells. -- Include implicit default accounts in health output and listBoundAccountIds [#143319](https://github.com/openclaw/openclaw/pull/143319). Thanks @qingminglong, @obviyus. +- Give message commands a working ownership remedy [#141886](https://github.com/openclaw/openclaw/pull/141886). Thanks [@Dreamer-HIT](https://github.com/Dreamer-HIT), [@obviyus](https://github.com/obviyus), [@schwanncells](https://github.com/schwanncells). +- Include implicit default accounts in health output and listBoundAccountIds [#143319](https://github.com/openclaw/openclaw/pull/143319). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). - Preserve channel subtitles before plugins load [#143416](https://github.com/openclaw/openclaw/pull/143416). - Reject blank directory groups before plugin setup [#143440](https://github.com/openclaw/openclaw/pull/143440). -- Reject unknown channel accounts during removal [#143561](https://github.com/openclaw/openclaw/pull/143561). Thanks @masatohoshino, @obviyus. +- Reject unknown channel accounts during removal [#143561](https://github.com/openclaw/openclaw/pull/143561). Thanks [@masatohoshino](https://github.com/masatohoshino), [@obviyus](https://github.com/obviyus). **Documentation** -- Split channel configuration documentation into focused pages [#142910](https://github.com/openclaw/openclaw/pull/142910). Thanks @vincentkoc. -- Correct Matrix token and restart steps, Tlon login guidance, Yuanbao App Key instructions, and plugin publishing and SDK examples [#144018](https://github.com/openclaw/openclaw/pull/144018). Thanks @vincentkoc, @sunnyiren-max. +- Split channel configuration documentation into focused pages [#142910](https://github.com/openclaw/openclaw/pull/142910). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct Matrix token and restart steps, Tlon login guidance, Yuanbao App Key instructions, and plugin publishing and SDK examples [#144018](https://github.com/openclaw/openclaw/pull/144018). Thanks [@vincentkoc](https://github.com/vincentkoc), [@sunnyiren-max](https://github.com/sunnyiren-max). @@ -1453,13 +1453,13 @@ If you use scripts, leave out `--account` and the [directory](/cli/directory) op **Bug fixes** -- Keep voice follow-ups and replies with the active task [#129186](https://github.com/openclaw/openclaw/pull/129186). Thanks @vincentkoc. -- Return delegated answers to the active Talk session [#129535](https://github.com/openclaw/openclaw/pull/129535). Thanks @vincentkoc. +- Keep voice follow-ups and replies with the active task [#129186](https://github.com/openclaw/openclaw/pull/129186). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Return delegated answers to the active Talk session [#129535](https://github.com/openclaw/openclaw/pull/129535). Thanks [@vincentkoc](https://github.com/vincentkoc). - Deliver Talk answers after repeated delegation [#142830](https://github.com/openclaw/openclaw/pull/142830). **Documentation** -- Organize Talk guidance into focused pages [#143149](https://github.com/openclaw/openclaw/pull/143149). Thanks @vincentkoc. +- Organize Talk guidance into focused pages [#143149](https://github.com/openclaw/openclaw/pull/143149). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1474,15 +1474,15 @@ When you interrupt your Claw on a phone call, it now uses the phone service’s **Bug fixes** -- Restore the default Twilio voice for certain unrecognized names [#137678](https://github.com/openclaw/openclaw/pull/137678). Thanks @teddytennant, @obviyus. -- Keep unknown call statuses from ending active calls [#137679](https://github.com/openclaw/openclaw/pull/137679). Thanks @teddytennant, @obviyus. -- Track confirmed phone playback when callers interrupt [#138619](https://github.com/openclaw/openclaw/pull/138619). Thanks @LiuwqGit, @obviyus, @fabiolr, @xueqingli1. -- Keep GPT-Live calls connected after recoverable audio errors [#140702](https://github.com/openclaw/openclaw/pull/140702). Thanks @zenglingbiao, @obviyus. -- Return clear errors for unknown voice stream paths [#141315](https://github.com/openclaw/openclaw/pull/141315). Thanks @hugenshen, @obviyus. +- Restore the default Twilio voice for certain unrecognized names [#137678](https://github.com/openclaw/openclaw/pull/137678). Thanks [@teddytennant](https://github.com/teddytennant), [@obviyus](https://github.com/obviyus). +- Keep unknown call statuses from ending active calls [#137679](https://github.com/openclaw/openclaw/pull/137679). Thanks [@teddytennant](https://github.com/teddytennant), [@obviyus](https://github.com/obviyus). +- Track confirmed phone playback when callers interrupt [#138619](https://github.com/openclaw/openclaw/pull/138619). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@fabiolr](https://github.com/fabiolr), [@xueqingli1](https://github.com/xueqingli1). +- Keep GPT-Live calls connected after recoverable audio errors [#140702](https://github.com/openclaw/openclaw/pull/140702). Thanks [@zenglingbiao](https://github.com/zenglingbiao), [@obviyus](https://github.com/obviyus). +- Return clear errors for unknown voice stream paths [#141315](https://github.com/openclaw/openclaw/pull/141315). Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). **Documentation** -- Organize Voice Call guidance into focused topic pages [#143055](https://github.com/openclaw/openclaw/pull/143055). Thanks @vincentkoc. +- Organize Voice Call guidance into focused topic pages [#143055](https://github.com/openclaw/openclaw/pull/143055). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1505,11 +1505,11 @@ Asking for a short list of memories no longer drops a better match just because **Bug fixes** -- Keep top memory matches consistent at small result limits [ff1d91f](https://github.com/openclaw/openclaw/commit/ff1d91f6711b301ad0bb8f8f9485bfb05d770d84). Thanks @linhongyu510. +- Keep top memory matches consistent at small result limits [ff1d91f](https://github.com/openclaw/openclaw/commit/ff1d91f6711b301ad0bb8f8f9485bfb05d770d84). Thanks [@linhongyu510](https://github.com/linhongyu510). - Recover memory searches after manager replacement [#141879](https://github.com/openclaw/openclaw/pull/141879). -- Preserve Active Memory recall after optional lookup timeouts [#142567](https://github.com/openclaw/openclaw/pull/142567). Thanks @ylcn91, @obviyus, @BsnizND. -- Allow local embedding startup before timing memory searches [#143590](https://github.com/openclaw/openclaw/pull/143590). Thanks @wangmiao0668000666, @obviyus, @PeterHodl. -- Skip unnecessary recall for agent deliveries [#143903](https://github.com/openclaw/openclaw/pull/143903). Thanks @LiuwqGit, @obviyus, @kiagentkronos-cell, @syfvb. +- Preserve Active Memory recall after optional lookup timeouts [#142567](https://github.com/openclaw/openclaw/pull/142567). Thanks [@ylcn91](https://github.com/ylcn91), [@obviyus](https://github.com/obviyus), [@BsnizND](https://github.com/BsnizND). +- Allow local embedding startup before timing memory searches [#143590](https://github.com/openclaw/openclaw/pull/143590). Thanks [@wangmiao0668000666](https://github.com/wangmiao0668000666), [@obviyus](https://github.com/obviyus), [@PeterHodl](https://github.com/PeterHodl). +- Skip unnecessary recall for agent deliveries [#143903](https://github.com/openclaw/openclaw/pull/143903). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@kiagentkronos-cell](https://github.com/kiagentkronos-cell), [@syfvb](https://github.com/syfvb). @@ -1530,9 +1530,9 @@ Mac users running OpenClaw with Bun can enable native memory search with `brew i **Bug fixes** -- Respect provider cooldowns during memory indexing [#134959](https://github.com/openclaw/openclaw/pull/134959). Thanks @shojikumaru, @obviyus, @developercrocodiles. -- Use the fallback provider's model for memory embeddings [#142364](https://github.com/openclaw/openclaw/pull/142364). Thanks @Yigtwxx, @obviyus. -- Recognize fallback-built indexes in deep memory status [#142609](https://github.com/openclaw/openclaw/pull/142609). Thanks @Yigtwxx, @obviyus. +- Respect provider cooldowns during memory indexing [#134959](https://github.com/openclaw/openclaw/pull/134959). Thanks [@shojikumaru](https://github.com/shojikumaru), [@obviyus](https://github.com/obviyus), [@developercrocodiles](https://github.com/developercrocodiles). +- Use the fallback provider's model for memory embeddings [#142364](https://github.com/openclaw/openclaw/pull/142364). Thanks [@Yigtwxx](https://github.com/Yigtwxx), [@obviyus](https://github.com/obviyus). +- Recognize fallback-built indexes in deep memory status [#142609](https://github.com/openclaw/openclaw/pull/142609). Thanks [@Yigtwxx](https://github.com/Yigtwxx), [@obviyus](https://github.com/obviyus). @@ -1551,7 +1551,7 @@ _Default long-term memory selection adds a search-use signal. Conceptual illustr **Bug fixes** -- Require distinct recall queries for automatic memory promotion; configurations with `minUniqueQueries=0` retain their existing allowance [#119624](https://github.com/openclaw/openclaw/pull/119624). Thanks @pcpilot-dev, @RomneyDa, @sunnyandtec-ak, @zachisfine. +- Require distinct recall queries for automatic memory promotion; configurations with `minUniqueQueries=0` retain their existing allowance [#119624](https://github.com/openclaw/openclaw/pull/119624). Thanks [@pcpilot-dev](https://github.com/pcpilot-dev), [@RomneyDa](https://github.com/RomneyDa), [@sunnyandtec-ak](https://github.com/sunnyandtec-ak), [@zachisfine](https://github.com/zachisfine). @@ -1570,11 +1570,11 @@ _Default long-term memory selection adds a search-use signal. Conceptual illustr **Bug fixes** -- Open retained session search results after a reset [#141437](https://github.com/openclaw/openclaw/pull/141437). Thanks @VACInc. -- Accept redundant offsets in anchored session-history requests [#141664](https://github.com/openclaw/openclaw/pull/141664). Thanks @FlagshipClaw, @obviyus, @VACInc, @brainatworkharris. -- Prevent lost replies after compaction and session handoff [#141718](https://github.com/openclaw/openclaw/pull/141718). Thanks @VACInc. -- Avoid full-history reads for delivery confirmations [#142453](https://github.com/openclaw/openclaw/pull/142453). Thanks @VACInc, @todddickerson. -- Keep memory maintenance within the conversation context budget [#143193](https://github.com/openclaw/openclaw/pull/143193). Thanks @KirDE, @obviyus. +- Open retained session search results after a reset [#141437](https://github.com/openclaw/openclaw/pull/141437). Thanks [@VACInc](https://github.com/VACInc). +- Accept redundant offsets in anchored session-history requests [#141664](https://github.com/openclaw/openclaw/pull/141664). Thanks [@FlagshipClaw](https://github.com/FlagshipClaw), [@obviyus](https://github.com/obviyus), [@VACInc](https://github.com/VACInc), [@brainatworkharris](https://github.com/brainatworkharris). +- Prevent lost replies after compaction and session handoff [#141718](https://github.com/openclaw/openclaw/pull/141718). Thanks [@VACInc](https://github.com/VACInc). +- Avoid full-history reads for delivery confirmations [#142453](https://github.com/openclaw/openclaw/pull/142453). Thanks [@VACInc](https://github.com/VACInc), [@todddickerson](https://github.com/todddickerson). +- Keep memory maintenance within the conversation context budget [#143193](https://github.com/openclaw/openclaw/pull/143193). Thanks [@KirDE](https://github.com/KirDE), [@obviyus](https://github.com/obviyus). @@ -1591,16 +1591,16 @@ When an automatic memory save lacks permission to write, the logs now name the f **Bug fixes** -- Warn when memory flushes cannot write their target file [#127031](https://github.com/openclaw/openclaw/pull/127031). Thanks @ayaangazali, @fede-kamel, @vincentkoc. -- Show selected recall-skip reasons in default logs [#138658](https://github.com/openclaw/openclaw/pull/138658). Thanks @DasX, @obviyus, @Oliverbot26. -- Explain memory cleanup after deleting a session [#141841](https://github.com/openclaw/openclaw/pull/141841). Thanks @glenn-agent, @obviyus, @dh-js, @he-yufeng. +- Warn when memory flushes cannot write their target file [#127031](https://github.com/openclaw/openclaw/pull/127031). Thanks [@ayaangazali](https://github.com/ayaangazali), [@fede-kamel](https://github.com/fede-kamel), [@vincentkoc](https://github.com/vincentkoc). +- Show selected recall-skip reasons in default logs [#138658](https://github.com/openclaw/openclaw/pull/138658). Thanks [@DasX](https://github.com/DasX), [@obviyus](https://github.com/obviyus), [@Oliverbot26](https://github.com/Oliverbot26). +- Explain memory cleanup after deleting a session [#141841](https://github.com/openclaw/openclaw/pull/141841). Thanks [@glenn-agent](https://github.com/glenn-agent), [@obviyus](https://github.com/obviyus), [@dh-js](https://github.com/dh-js), [@he-yufeng](https://github.com/he-yufeng). - Check memory readiness while agent databases are busy [#142361](https://github.com/openclaw/openclaw/pull/142361). - Avoid unnecessary Doctor refusals for shared-memory layouts; preserve edited archives without importing their changes, and defer later event generations in that workspace [#143138](https://github.com/openclaw/openclaw/pull/143138). **Documentation** -- Explain tool grants for Lossless Claw recall [#142705](https://github.com/openclaw/openclaw/pull/142705). Thanks @MasterSwords1, @obviyus, @guarismo. -- Split Active Memory guidance into task-specific pages [#143057](https://github.com/openclaw/openclaw/pull/143057). Thanks @vincentkoc. +- Explain tool grants for Lossless Claw recall [#142705](https://github.com/openclaw/openclaw/pull/142705). Thanks [@MasterSwords1](https://github.com/MasterSwords1), [@obviyus](https://github.com/obviyus), [@guarismo](https://github.com/guarismo). +- Split Active Memory guidance into task-specific pages [#143057](https://github.com/openclaw/openclaw/pull/143057). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1634,11 +1634,11 @@ If another tool adds memories to your [LanceDB memory extension](/plugins/memory **Bug fixes** -- Refresh LanceDB reads after external memory writes [#137806](https://github.com/openclaw/openclaw/pull/137806). Thanks @azuretek, @obviyus. +- Refresh LanceDB reads after external memory writes [#137806](https://github.com/openclaw/openclaw/pull/137806). Thanks [@azuretek](https://github.com/azuretek), [@obviyus](https://github.com/obviyus). **Documentation** -- Clarify the existing LanceDB requirements for OpenClaw host version `>=2026.5.31` and plugin API `>=2026.9.3`, which must both pass [#142827](https://github.com/openclaw/openclaw/pull/142827). Thanks @obviyus, @ly85206559. +- Clarify the existing LanceDB requirements for OpenClaw host version `>=2026.5.31` and plugin API `>=2026.9.3`, which must both pass [#142827](https://github.com/openclaw/openclaw/pull/142827). Thanks [@obviyus](https://github.com/obviyus), [@ly85206559](https://github.com/ly85206559). @@ -1665,13 +1665,13 @@ _The actual Skills discovery page, populated with fictional Harbor workspace ski **Improvements** -- Search installed skills and ClawHub together [#143758](https://github.com/openclaw/openclaw/pull/143758). Thanks @Patrick-Erichsen. +- Search installed skills and ClawHub together [#143758](https://github.com/openclaw/openclaw/pull/143758). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Find repository skills in separate execution workspaces [#141966](https://github.com/openclaw/openclaw/pull/141966). Thanks @obviyus. +- Find repository skills in separate execution workspaces [#141966](https://github.com/openclaw/openclaw/pull/141966). Thanks [@obviyus](https://github.com/obviyus). - Show and find skills by their actual titles [#142535](https://github.com/openclaw/openclaw/pull/142535). -- Keep ClawHub details and changelogs readable in dialogs [#142555](https://github.com/openclaw/openclaw/pull/142555). Thanks @vyctorbrzezowski. +- Keep ClawHub details and changelogs readable in dialogs [#142555](https://github.com/openclaw/openclaw/pull/142555). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). @@ -1686,12 +1686,12 @@ When importing a skill, you can now see which files you selected and clear them **Improvements** -- Show and clear selected files during skill import [#142540](https://github.com/openclaw/openclaw/pull/142540). Thanks @vyctorbrzezowski. +- Show and clear selected files during skill import [#142540](https://github.com/openclaw/openclaw/pull/142540). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). **Bug fixes** -- Fit skill dialogs to content with compact Close controls [#142550](https://github.com/openclaw/openclaw/pull/142550). Thanks @vyctorbrzezowski. -- Allow slower Control UI skill dependency installs to finish [#143000](https://github.com/openclaw/openclaw/pull/143000). Thanks @gozu, @obviyus. +- Fit skill dialogs to content with compact Close controls [#142550](https://github.com/openclaw/openclaw/pull/142550). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Allow slower Control UI skill dependency installs to finish [#143000](https://github.com/openclaw/openclaw/pull/143000). Thanks [@gozu](https://github.com/gozu), [@obviyus](https://github.com/obviyus). @@ -1708,8 +1708,8 @@ Old unfinished history scans cannot resume in the new flow, so start a new learn **Improvements** -- Learn from past conversations in a steerable chat [#142909](https://github.com/openclaw/openclaw/pull/142909). Thanks @obviyus. -- Explain paused weekly skill reviews [#142840](https://github.com/openclaw/openclaw/pull/142840). Thanks @obviyus. +- Learn from past conversations in a steerable chat [#142909](https://github.com/openclaw/openclaw/pull/142909). Thanks [@obviyus](https://github.com/obviyus). +- Explain paused weekly skill reviews [#142840](https://github.com/openclaw/openclaw/pull/142840). Thanks [@obviyus](https://github.com/obviyus). **Bug fixes** @@ -1717,7 +1717,7 @@ Old unfinished history scans cannot resume in the new flow, so start a new learn **Documentation** -- Split Skill Workshop documentation into focused guides [#143079](https://github.com/openclaw/openclaw/pull/143079). Thanks @vincentkoc. +- Split Skill Workshop documentation into focused guides [#143079](https://github.com/openclaw/openclaw/pull/143079). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1734,12 +1734,12 @@ New Workshop changes preserve the full descriptions that help your Claw recogniz **Bug fixes** -- Refresh session skills after Gateway restarts [#122110](https://github.com/openclaw/openclaw/pull/122110). Thanks @sappkevin, @obviyus, @kashivreddy, @aspalagin. -- Preserve full skill descriptions through Workshop updates [#140864](https://github.com/openclaw/openclaw/pull/140864). Thanks @LiuwqGit, @obviyus, @XX441, @laisonamarante, @RuiCatalao7, @thomasmoenco. -- Refresh skill availability after installs and edits [#141979](https://github.com/openclaw/openclaw/pull/141979). Thanks @RomneyDa. -- Show repaired skills on the first status check [#142123](https://github.com/openclaw/openclaw/pull/142123). Thanks @ericcaiwx-star, @aspalagin, @obviyus. -- Clarify how agents should make requested repository skill edits outside Workshop [#142844](https://github.com/openclaw/openclaw/pull/142844). Thanks @Finn763, @obviyus, @jmissig. -- Give sandboxed plugin agents readable skill paths [#143291](https://github.com/openclaw/openclaw/pull/143291). Thanks @sallyom, @sercada, @Artemeey. +- Refresh session skills after Gateway restarts [#122110](https://github.com/openclaw/openclaw/pull/122110). Thanks [@sappkevin](https://github.com/sappkevin), [@obviyus](https://github.com/obviyus), [@kashivreddy](https://github.com/kashivreddy), [@aspalagin](https://github.com/aspalagin). +- Preserve full skill descriptions through Workshop updates [#140864](https://github.com/openclaw/openclaw/pull/140864). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@XX441](https://github.com/XX441), [@laisonamarante](https://github.com/laisonamarante), [@RuiCatalao7](https://github.com/RuiCatalao7), [@thomasmoenco](https://github.com/thomasmoenco). +- Refresh skill availability after installs and edits [#141979](https://github.com/openclaw/openclaw/pull/141979). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Show repaired skills on the first status check [#142123](https://github.com/openclaw/openclaw/pull/142123). Thanks [@ericcaiwx-star](https://github.com/ericcaiwx-star), [@aspalagin](https://github.com/aspalagin), [@obviyus](https://github.com/obviyus). +- Clarify how agents should make requested repository skill edits outside Workshop [#142844](https://github.com/openclaw/openclaw/pull/142844). Thanks [@Finn763](https://github.com/Finn763), [@obviyus](https://github.com/obviyus), [@jmissig](https://github.com/jmissig). +- Give sandboxed plugin agents readable skill paths [#143291](https://github.com/openclaw/openclaw/pull/143291). Thanks [@sallyom](https://github.com/sallyom), [@sercada](https://github.com/sercada), [@Artemeey](https://github.com/Artemeey). @@ -1773,10 +1773,10 @@ Doctor can repair several known Workshop problems that stopped upgrades or preve **Bug fixes** -- Repair the legacy Workshop review index with Doctor [1e7797ad9836](https://github.com/openclaw/openclaw/commit/1e7797ad983683a3cd691887f1b398164ddc6282). Thanks @jjjhenriksen, @RomneyDa. -- Continue Doctor repairs while preserving ambiguous Workshop artifacts [#143141](https://github.com/openclaw/openclaw/pull/143141). Thanks @fahrenhe1t, @GitHoubi, @cjn119-ui, @obviyus. -- Repair recognized unfinished Workshop database upgrades [#143153](https://github.com/openclaw/openclaw/pull/143153). Thanks @syfvb, @pbergeot, @rjamoul, @cjn119-ui. -- Ignore retired Workshop jobs during Doctor preflight [#143325](https://github.com/openclaw/openclaw/pull/143325). Thanks @cjn119-ui, @jerabinovich, @obviyus. +- Repair the legacy Workshop review index with Doctor [1e7797ad9836](https://github.com/openclaw/openclaw/commit/1e7797ad983683a3cd691887f1b398164ddc6282). Thanks [@jjjhenriksen](https://github.com/jjjhenriksen), [@RomneyDa](https://github.com/RomneyDa). +- Continue Doctor repairs while preserving ambiguous Workshop artifacts [#143141](https://github.com/openclaw/openclaw/pull/143141). Thanks [@fahrenhe1t](https://github.com/fahrenhe1t), [@GitHoubi](https://github.com/GitHoubi), [@cjn119-ui](https://github.com/cjn119-ui), [@obviyus](https://github.com/obviyus). +- Repair recognized unfinished Workshop database upgrades [#143153](https://github.com/openclaw/openclaw/pull/143153). Thanks [@syfvb](https://github.com/syfvb), [@pbergeot](https://github.com/pbergeot), [@rjamoul](https://github.com/rjamoul), [@cjn119-ui](https://github.com/cjn119-ui). +- Ignore retired Workshop jobs during Doctor preflight [#143325](https://github.com/openclaw/openclaw/pull/143325). Thanks [@cjn119-ui](https://github.com/cjn119-ui), [@jerabinovich](https://github.com/jerabinovich), [@obviyus](https://github.com/obviyus). @@ -1824,13 +1824,13 @@ Search and the sidebar show which conversation is busy, and a failed refresh kee - Keep Android reading position while replies grow, and reveal expanded messages and code endpoints [#140759](https://github.com/openclaw/openclaw/pull/140759). - Show Android session refresh errors without losing loaded pages [#141603](https://github.com/openclaw/openclaw/pull/141603). -- Keep Android Thinking and Fast controls clear of folds [#141860](https://github.com/openclaw/openclaw/pull/141860). Thanks @vincentkoc. +- Keep Android Thinking and Fast controls clear of folds [#141860](https://github.com/openclaw/openclaw/pull/141860). Thanks [@vincentkoc](https://github.com/vincentkoc). - Thread activity labels follow the right conversation [#141883](https://github.com/openclaw/openclaw/pull/141883). -- Keep Background Tasks inside foldable panes [#141899](https://github.com/openclaw/openclaw/pull/141899). Thanks @vincentkoc. +- Keep Background Tasks inside foldable panes [#141899](https://github.com/openclaw/openclaw/pull/141899). Thanks [@vincentkoc](https://github.com/vincentkoc). - Keep matching Android threads in view [#142046](https://github.com/openclaw/openclaw/pull/142046). - Distinguish Android chat readiness from Gateway disconnection [#142182](https://github.com/openclaw/openclaw/pull/142182). -- Keep Android branch choices inside usable fold panes [#142418](https://github.com/openclaw/openclaw/pull/142418). Thanks @vincentkoc. -- Restore Android tool activity and fold completed work [#142810](https://github.com/openclaw/openclaw/pull/142810). Thanks @ansxor, @IWhatsskill. +- Keep Android branch choices inside usable fold panes [#142418](https://github.com/openclaw/openclaw/pull/142418). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Restore Android tool activity and fold completed work [#142810](https://github.com/openclaw/openclaw/pull/142810). Thanks [@ansxor](https://github.com/ansxor), [@IWhatsskill](https://github.com/IWhatsskill). - Distinguish Android chat readiness from Gateway connection status [#143128](https://github.com/openclaw/openclaw/pull/143128). @@ -1886,9 +1886,9 @@ Android setup also makes the selected security option available to accessibility **Bug fixes** -- Add explicit battery percentages to mobile status responses [#141069](https://github.com/openclaw/openclaw/pull/141069). Thanks @NullArbitrage, @obviyus. +- Add explicit battery percentages to mobile status responses [#141069](https://github.com/openclaw/openclaw/pull/141069). Thanks [@NullArbitrage](https://github.com/NullArbitrage), [@obviyus](https://github.com/obviyus). - Expose Android connection-security selection to assistive services [#142131](https://github.com/openclaw/openclaw/pull/142131). -- Show mobile connection failures with targeted retry actions [#142651](https://github.com/openclaw/openclaw/pull/142651). Thanks @vincentkoc. +- Show mobile connection failures with targeted retry actions [#142651](https://github.com/openclaw/openclaw/pull/142651). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -1903,8 +1903,8 @@ You can now reach the official App Store listing straight from the [iPhone setup **Documentation** -- Find Android release downloads with both APK and checksum [#141762](https://github.com/openclaw/openclaw/pull/141762). Thanks @xiaoguomeiyitian, @obviyus, @tomdailey55. -- Link the official iPhone app from its setup guide [#142132](https://github.com/openclaw/openclaw/pull/142132). Thanks @mgabor3141, @obviyus. +- Find Android release downloads with both APK and checksum [#141762](https://github.com/openclaw/openclaw/pull/141762). Thanks [@xiaoguomeiyitian](https://github.com/xiaoguomeiyitian), [@obviyus](https://github.com/obviyus), [@tomdailey55](https://github.com/tomdailey55). +- Link the official iPhone app from its setup guide [#142132](https://github.com/openclaw/openclaw/pull/142132). Thanks [@mgabor3141](https://github.com/mgabor3141), [@obviyus](https://github.com/obviyus). @@ -1959,7 +1959,7 @@ When you are using a side-panel tab in the Mac app, Command-W now closes that ta **Bug fixes** -- Close focused macOS side-panel tabs with Cmd+W [#142634](https://github.com/openclaw/openclaw/pull/142634). Thanks @Patrick-Erichsen. +- Close focused macOS side-panel tabs with Cmd+W [#142634](https://github.com/openclaw/openclaw/pull/142634). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). @@ -1976,8 +1976,8 @@ Status and Doctor can also point out background jobs that may be repeatedly rest **Bug fixes** -- Diagnose stray macOS Gateway restart jobs [#142230](https://github.com/openclaw/openclaw/pull/142230). Thanks @piotx, @rondavis007, @jodok, @jarvismazz. -- Preserve macOS Gateway startup errors in the service log [#143519](https://github.com/openclaw/openclaw/pull/143519). Thanks @RomneyDa, @Enominera, @igs-rogenlo, @lonexreb. +- Diagnose stray macOS Gateway restart jobs [#142230](https://github.com/openclaw/openclaw/pull/142230). Thanks [@piotx](https://github.com/piotx), [@rondavis007](https://github.com/rondavis007), [@jodok](https://github.com/jodok), [@jarvismazz](https://github.com/jarvismazz). +- Preserve macOS Gateway startup errors in the service log [#143519](https://github.com/openclaw/openclaw/pull/143519). Thanks [@RomneyDa](https://github.com/RomneyDa), [@Enominera](https://github.com/Enominera), [@igs-rogenlo](https://github.com/igs-rogenlo), [@lonexreb](https://github.com/lonexreb). @@ -1994,17 +1994,17 @@ The [Linux companion](/platforms/linux) also keeps update notices and tray actio **Bug fixes** -- Keep desktop update notices and retry actions available [#121938](https://github.com/openclaw/openclaw/pull/121938). Thanks @vincentkoc. -- Honor SSH alias ports in the Linux companion [#142900](https://github.com/openclaw/openclaw/pull/142900). Thanks @vincentkoc. -- Keep Linux sleep from suspending remote Gateways [#142913](https://github.com/openclaw/openclaw/pull/142913). Thanks @vincentkoc. +- Keep desktop update notices and retry actions available [#121938](https://github.com/openclaw/openclaw/pull/121938). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Honor SSH alias ports in the Linux companion [#142900](https://github.com/openclaw/openclaw/pull/142900). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Keep Linux sleep from suspending remote Gateways [#142913](https://github.com/openclaw/openclaw/pull/142913). Thanks [@vincentkoc](https://github.com/vincentkoc). **Security and trust** -- Preserve remote credential references on Linux reconnect [#142907](https://github.com/openclaw/openclaw/pull/142907). Thanks @vincentkoc. +- Preserve remote credential references on Linux reconnect [#142907](https://github.com/openclaw/openclaw/pull/142907). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Correct the Linux companion maturity description [#141955](https://github.com/openclaw/openclaw/pull/141955). Thanks @RomneyDa. +- Correct the Linux companion maturity description [#141955](https://github.com/openclaw/openclaw/pull/141955). Thanks [@RomneyDa](https://github.com/RomneyDa). @@ -2042,30 +2042,30 @@ If you connect to more than one Gateway, the [model list](/concepts/models) now **Improvements** -- Browse the selected Gateway's model inventory [#142063](https://github.com/openclaw/openclaw/pull/142063). Thanks @obviyus. +- Browse the selected Gateway's model inventory [#142063](https://github.com/openclaw/openclaw/pull/142063). Thanks [@obviyus](https://github.com/obviyus). - Reduce first-use Copilot metadata loading [#142134](https://github.com/openclaw/openclaw/pull/142134) -- Load less session code during model discovery [#143146](https://github.com/openclaw/openclaw/pull/143146). Thanks @vincentkoc. +- Load less session code during model discovery [#143146](https://github.com/openclaw/openclaw/pull/143146). Thanks [@vincentkoc](https://github.com/vincentkoc). - Avoid unused preparation when browsing models [#144095](https://github.com/openclaw/openclaw/pull/144095) **Bug fixes** -- Refresh model availability after token expiry or cooldown [#141727](https://github.com/openclaw/openclaw/pull/141727). Thanks @obviyus. -- Show when refreshed model information needs a restart [#141885](https://github.com/openclaw/openclaw/pull/141885). Thanks @obviyus. -- Warn about incomplete model refreshes [#141951](https://github.com/openclaw/openclaw/pull/141951). Thanks @obviyus. -- Keep inference model inspection within the agent catalog [#142367](https://github.com/openclaw/openclaw/pull/142367). Thanks @obviyus. -- Stop model selection from triggering extra provider discovery [#142375](https://github.com/openclaw/openclaw/pull/142375). Thanks @obviyus. -- Keep internal catalog reads passive and forward explicit refreshes [#142557](https://github.com/openclaw/openclaw/pull/142557). Thanks @obviyus. -- Restore public SDK model discovery defaults [#142620](https://github.com/openclaw/openclaw/pull/142620). Thanks @obviyus. -- Clear stale catalog warnings when the source changes [#142622](https://github.com/openclaw/openclaw/pull/142622). Thanks @obviyus. -- Keep saved models visible after startup [#142766](https://github.com/openclaw/openclaw/pull/142766). Thanks @obviyus. +- Refresh model availability after token expiry or cooldown [#141727](https://github.com/openclaw/openclaw/pull/141727). Thanks [@obviyus](https://github.com/obviyus). +- Show when refreshed model information needs a restart [#141885](https://github.com/openclaw/openclaw/pull/141885). Thanks [@obviyus](https://github.com/obviyus). +- Warn about incomplete model refreshes [#141951](https://github.com/openclaw/openclaw/pull/141951). Thanks [@obviyus](https://github.com/obviyus). +- Keep inference model inspection within the agent catalog [#142367](https://github.com/openclaw/openclaw/pull/142367). Thanks [@obviyus](https://github.com/obviyus). +- Stop model selection from triggering extra provider discovery [#142375](https://github.com/openclaw/openclaw/pull/142375). Thanks [@obviyus](https://github.com/obviyus). +- Keep internal catalog reads passive and forward explicit refreshes [#142557](https://github.com/openclaw/openclaw/pull/142557). Thanks [@obviyus](https://github.com/obviyus). +- Restore public SDK model discovery defaults [#142620](https://github.com/openclaw/openclaw/pull/142620). Thanks [@obviyus](https://github.com/obviyus). +- Clear stale catalog warnings when the source changes [#142622](https://github.com/openclaw/openclaw/pull/142622). Thanks [@obviyus](https://github.com/obviyus). +- Keep saved models visible after startup [#142766](https://github.com/openclaw/openclaw/pull/142766). Thanks [@obviyus](https://github.com/obviyus). - Avoid unrelated provider loading during cold session resets [#143254](https://github.com/openclaw/openclaw/pull/143254) - Keep model catalog resources through asynchronous reads [#143492](https://github.com/openclaw/openclaw/pull/143492) **Documentation** -- Clarify model status and catalog refresh guidance [#141927](https://github.com/openclaw/openclaw/pull/141927). Thanks @obviyus. +- Clarify model status and catalog refresh guidance [#141927](https://github.com/openclaw/openclaw/pull/141927). Thanks [@obviyus](https://github.com/obviyus). - Translate model-refresh retry guidance [#142000](https://github.com/openclaw/openclaw/pull/142000) -- Fix the model guide's Gateway catalog link [#142379](https://github.com/openclaw/openclaw/pull/142379). Thanks @vincentkoc. +- Fix the model guide's Gateway catalog link [#142379](https://github.com/openclaw/openclaw/pull/142379). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2080,13 +2080,13 @@ Saved model choices are less likely to change unexpectedly, particularly when cu **Bug fixes** -- Align child-session model display and routing [#131805](https://github.com/openclaw/openclaw/pull/131805); contextual [#86174](https://github.com/openclaw/openclaw/issues/86174). Thanks @jalehman, @rqlangley, @wpu911. -- Resolve Anthropic aliases consistently across status and permissions [#137376](https://github.com/openclaw/openclaw/pull/137376). Thanks @Yigtwxx, @obviyus. -- Respect explicit visibility policies for CLI-backed models in /models [#141642](https://github.com/openclaw/openclaw/pull/141642). Thanks @IWhatsskill, @NovaUnboundAi. +- Align child-session model display and routing [#131805](https://github.com/openclaw/openclaw/pull/131805); contextual [#86174](https://github.com/openclaw/openclaw/issues/86174). Thanks [@jalehman](https://github.com/jalehman), [@rqlangley](https://github.com/rqlangley), [@wpu911](https://github.com/wpu911). +- Resolve Anthropic aliases consistently across status and permissions [#137376](https://github.com/openclaw/openclaw/pull/137376). Thanks [@Yigtwxx](https://github.com/Yigtwxx), [@obviyus](https://github.com/obviyus). +- Respect explicit visibility policies for CLI-backed models in /models [#141642](https://github.com/openclaw/openclaw/pull/141642). Thanks [@IWhatsskill](https://github.com/IWhatsskill), [@NovaUnboundAi](https://github.com/NovaUnboundAi). - Resolve model aliases with the selected provider plugin [#141679](https://github.com/openclaw/openclaw/pull/141679) -- Honor the selected agent in model catalog commands [#141859](https://github.com/openclaw/openclaw/pull/141859). Thanks @obviyus. -- Explain unavailable models before terminal selection [#142160](https://github.com/openclaw/openclaw/pull/142160). Thanks @obviyus. -- Keep distinct model IDs and metadata visible in catalogs [#142285](https://github.com/openclaw/openclaw/pull/142285). Thanks @obviyus. +- Honor the selected agent in model catalog commands [#141859](https://github.com/openclaw/openclaw/pull/141859). Thanks [@obviyus](https://github.com/obviyus). +- Explain unavailable models before terminal selection [#142160](https://github.com/openclaw/openclaw/pull/142160). Thanks [@obviyus](https://github.com/obviyus). +- Keep distinct model IDs and metadata visible in catalogs [#142285](https://github.com/openclaw/openclaw/pull/142285). Thanks [@obviyus](https://github.com/obviyus). - Show inherited models consistently across session views [#142751](https://github.com/openclaw/openclaw/pull/142751) - Prefer exact model metadata when aliases coexist [#143686](https://github.com/openclaw/openclaw/pull/143686) - Prefer exact model spelling when inferring providers [#143708](https://github.com/openclaw/openclaw/pull/143708) @@ -2095,7 +2095,7 @@ Saved model choices are less likely to change unexpectedly, particularly when cu - Keep distinct allowed models visible [#143954](https://github.com/openclaw/openclaw/pull/143954) - Preserve model identities through catalog refresh [#143967](https://github.com/openclaw/openclaw/pull/143967) - Preserve saved model choices when reading sessions [#143975](https://github.com/openclaw/openclaw/pull/143975) -- Preserve selected models and matching image limits [#143994](https://github.com/openclaw/openclaw/pull/143994). Thanks @elikampf. +- Preserve selected models and matching image limits [#143994](https://github.com/openclaw/openclaw/pull/143994). Thanks [@elikampf](https://github.com/elikampf). - Resolve configured aliases once [#143999](https://github.com/openclaw/openclaw/pull/143999) - Use the selected model context limit [#144009](https://github.com/openclaw/openclaw/pull/144009) - Use selected-model tool capabilities [#144010](https://github.com/openclaw/openclaw/pull/144010) @@ -2118,22 +2118,22 @@ Editing backup models now preserves an inherited primary model, and removing eve **Improvements** -- Search long model menus [#141894](https://github.com/openclaw/openclaw/pull/141894). Thanks @obviyus. -- Match chat model choices to the saved or previewed account [#142165](https://github.com/openclaw/openclaw/pull/142165). Thanks @obviyus. +- Search long model menus [#141894](https://github.com/openclaw/openclaw/pull/141894). Thanks [@obviyus](https://github.com/obviyus). +- Match chat model choices to the saved or previewed account [#142165](https://github.com/openclaw/openclaw/pull/142165). Thanks [@obviyus](https://github.com/obviyus). - Translate global model settings guidance [#143449](https://github.com/openclaw/openclaw/pull/143449) **Bug fixes** -- Discard unconfirmed fallback-model searches [#141953](https://github.com/openclaw/openclaw/pull/141953). Thanks @shakkernerd. -- Preserve model inheritance when editing fallbacks [#141967](https://github.com/openclaw/openclaw/pull/141967). Thanks @shakkernerd, @najef1979-code. -- Preserve case-sensitive fallback references [#141997](https://github.com/openclaw/openclaw/pull/141997). Thanks @shakkernerd. -- Keep unavailable saved models visible but unselectable [#142048](https://github.com/openclaw/openclaw/pull/142048). Thanks @obviyus. -- Load more default-model choices when pickers open [#142105](https://github.com/openclaw/openclaw/pull/142105). Thanks @xiaoguomeiyitian, @obviyus, @dh-js. -- Restore model discovery in settings pickers [#142346](https://github.com/openclaw/openclaw/pull/142346). Thanks @vyctorbrzezowski. -- Show failed model-list refreshes in the Control UI [#142372](https://github.com/openclaw/openclaw/pull/142372). Thanks @obviyus. -- Avoid repeated model discovery when reopening Settings pickers [#142384](https://github.com/openclaw/openclaw/pull/142384). Thanks @vyctorbrzezowski. +- Discard unconfirmed fallback-model searches [#141953](https://github.com/openclaw/openclaw/pull/141953). Thanks [@shakkernerd](https://github.com/shakkernerd). +- Preserve model inheritance when editing fallbacks [#141967](https://github.com/openclaw/openclaw/pull/141967). Thanks [@shakkernerd](https://github.com/shakkernerd), [@najef1979-code](https://github.com/najef1979-code). +- Preserve case-sensitive fallback references [#141997](https://github.com/openclaw/openclaw/pull/141997). Thanks [@shakkernerd](https://github.com/shakkernerd). +- Keep unavailable saved models visible but unselectable [#142048](https://github.com/openclaw/openclaw/pull/142048). Thanks [@obviyus](https://github.com/obviyus). +- Load more default-model choices when pickers open [#142105](https://github.com/openclaw/openclaw/pull/142105). Thanks [@xiaoguomeiyitian](https://github.com/xiaoguomeiyitian), [@obviyus](https://github.com/obviyus), [@dh-js](https://github.com/dh-js). +- Restore model discovery in settings pickers [#142346](https://github.com/openclaw/openclaw/pull/142346). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Show failed model-list refreshes in the Control UI [#142372](https://github.com/openclaw/openclaw/pull/142372). Thanks [@obviyus](https://github.com/obviyus). +- Avoid repeated model discovery when reopening Settings pickers [#142384](https://github.com/openclaw/openclaw/pull/142384). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Reduce model-picker lag with large catalogs [#142465](https://github.com/openclaw/openclaw/pull/142465) -- Clarify global model defaults and agent settings [#143424](https://github.com/openclaw/openclaw/pull/143424). Thanks @obviyus, @schjonhaug. +- Clarify global model defaults and agent settings [#143424](https://github.com/openclaw/openclaw/pull/143424). Thanks [@obviyus](https://github.com/obviyus), [@schjonhaug](https://github.com/schjonhaug). @@ -2148,12 +2148,12 @@ The Thinking menu now follows the effort levels offered by the selected model, s **Bug fixes** -- Hide thinking choices the selected model does not support [#141696](https://github.com/openclaw/openclaw/pull/141696). Thanks @obviyus. -- Disable Fast when it cannot affect the selected request [#141852](https://github.com/openclaw/openclaw/pull/141852). Thanks @obviyus. -- Use published model thinking choices across the UI [#142646](https://github.com/openclaw/openclaw/pull/142646). Thanks @obviyus. -- Disable Fast choices that cannot change the request [#142682](https://github.com/openclaw/openclaw/pull/142682). Thanks @obviyus. -- Keep thinking choices aligned with the model [#142790](https://github.com/openclaw/openclaw/pull/142790). Thanks @obviyus. -- Preserve explicit thinking Off with empty choices [#142822](https://github.com/openclaw/openclaw/pull/142822). Thanks @obviyus. +- Hide thinking choices the selected model does not support [#141696](https://github.com/openclaw/openclaw/pull/141696). Thanks [@obviyus](https://github.com/obviyus). +- Disable Fast when it cannot affect the selected request [#141852](https://github.com/openclaw/openclaw/pull/141852). Thanks [@obviyus](https://github.com/obviyus). +- Use published model thinking choices across the UI [#142646](https://github.com/openclaw/openclaw/pull/142646). Thanks [@obviyus](https://github.com/obviyus). +- Disable Fast choices that cannot change the request [#142682](https://github.com/openclaw/openclaw/pull/142682). Thanks [@obviyus](https://github.com/obviyus). +- Keep thinking choices aligned with the model [#142790](https://github.com/openclaw/openclaw/pull/142790). Thanks [@obviyus](https://github.com/obviyus). +- Preserve explicit thinking Off with empty choices [#142822](https://github.com/openclaw/openclaw/pull/142822). Thanks [@obviyus](https://github.com/obviyus). @@ -2168,21 +2168,21 @@ People using custom AI servers keep the connection settings they entered when mo **Improvements** -- Keep generated model lists out of ordinary setup for Cloudflare AI Gateway, Featherless, Hugging Face, LongCat, Meta, Mistral, NVIDIA, Synthetic, Together, Xiaomi pay-as-you-go, and Z.AI [#142202](https://github.com/openclaw/openclaw/pull/142202). Thanks @obviyus. +- Keep generated model lists out of ordinary setup for Cloudflare AI Gateway, Featherless, Hugging Face, LongCat, Meta, Mistral, NVIDIA, Synthetic, Together, Xiaomi pay-as-you-go, and Z.AI [#142202](https://github.com/openclaw/openclaw/pull/142202). Thanks [@obviyus](https://github.com/obviyus). **Bug fixes** -- Honor session-affinity settings for managed OpenAI and Azure Responses proxies [#141107](https://github.com/openclaw/openclaw/pull/141107); contextual [#140918](https://github.com/openclaw/openclaw/issues/140918). Thanks @louisfy, @obviyus, @alexph-dev. -- Preserve manual models during generated catalog refresh [#142302](https://github.com/openclaw/openclaw/pull/142302). Thanks @obviyus. -- Preserve saved endpoints in configured model lists [#143643](https://github.com/openclaw/openclaw/pull/143643). Thanks @obviyus. -- Preserve authored SDK routes and require current authentication instead of generated-catalog credentials [#143664](https://github.com/openclaw/openclaw/pull/143664). Thanks @obviyus. +- Honor session-affinity settings for managed OpenAI and Azure Responses proxies [#141107](https://github.com/openclaw/openclaw/pull/141107); contextual [#140918](https://github.com/openclaw/openclaw/issues/140918). Thanks [@louisfy](https://github.com/louisfy), [@obviyus](https://github.com/obviyus), [@alexph-dev](https://github.com/alexph-dev). +- Preserve manual models during generated catalog refresh [#142302](https://github.com/openclaw/openclaw/pull/142302). Thanks [@obviyus](https://github.com/obviyus). +- Preserve saved endpoints in configured model lists [#143643](https://github.com/openclaw/openclaw/pull/143643). Thanks [@obviyus](https://github.com/obviyus). +- Preserve authored SDK routes and require current authentication instead of generated-catalog credentials [#143664](https://github.com/openclaw/openclaw/pull/143664). Thanks [@obviyus](https://github.com/obviyus). - Honor exact configured model settings before aliases [#143822](https://github.com/openclaw/openclaw/pull/143822) - Honor merged provider runtime settings [#143848](https://github.com/openclaw/openclaw/pull/143848) -- Quiet intentional provider tuning warnings [#92288](https://github.com/openclaw/openclaw/pull/92288). Thanks @ai-hpc, @obviyus, @kingkong9817. +- Quiet intentional provider tuning warnings [#92288](https://github.com/openclaw/openclaw/pull/92288). Thanks [@ai-hpc](https://github.com/ai-hpc), [@obviyus](https://github.com/obviyus), [@kingkong9817](https://github.com/kingkong9817). **Limits and compatibility** -- Require explicit model lists for custom provider endpoints [#142158](https://github.com/openclaw/openclaw/pull/142158). Thanks @obviyus. +- Require explicit model lists for custom provider endpoints [#142158](https://github.com/openclaw/openclaw/pull/142158). Thanks [@obviyus](https://github.com/obviyus). @@ -2199,16 +2199,16 @@ If sign-in still needs attention, OpenClaw better distinguishes saved credential **Improvements** -- Reuse supported Codex credentials during provider login [#142933](https://github.com/openclaw/openclaw/pull/142933). Thanks @obviyus. +- Reuse supported Codex credentials during provider login [#142933](https://github.com/openclaw/openclaw/pull/142933). Thanks [@obviyus](https://github.com/obviyus). **Bug fixes** -- Explain saved credentials and failed Gateway refresh separately [#131968](https://github.com/openclaw/openclaw/pull/131968); contextual [#131944](https://github.com/openclaw/openclaw/issues/131944). Thanks @vyctorbrzezowski, @obviyus. -- Coordinate shared OAuth refresh without reusing consumed tokens [#141477](https://github.com/openclaw/openclaw/pull/141477). Thanks @vincentkoc, @kopl-blip, @100yenadmin. -- Recognize scoped native Codex login during model discovery [#141759](https://github.com/openclaw/openclaw/pull/141759). Thanks @DonnieFi, @obviyus. -- Reuse completed Codex sign-in refreshes [#142628](https://github.com/openclaw/openclaw/pull/142628). Thanks @vincentkoc, @kopl-blip, @zhuyankarl, @100yenadmin. -- Keep OpenAI, xAI, and Copilot device sign-in links clickable in Slack [#142873](https://github.com/openclaw/openclaw/pull/142873). Thanks @obviyus. -- Keep unrelated providers available during credential migration [#143310](https://github.com/openclaw/openclaw/pull/143310). Thanks @tskerpnext. +- Explain saved credentials and failed Gateway refresh separately [#131968](https://github.com/openclaw/openclaw/pull/131968); contextual [#131944](https://github.com/openclaw/openclaw/issues/131944). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski), [@obviyus](https://github.com/obviyus). +- Coordinate shared OAuth refresh without reusing consumed tokens [#141477](https://github.com/openclaw/openclaw/pull/141477). Thanks [@vincentkoc](https://github.com/vincentkoc), [@kopl-blip](https://github.com/kopl-blip), [@100yenadmin](https://github.com/100yenadmin). +- Recognize scoped native Codex login during model discovery [#141759](https://github.com/openclaw/openclaw/pull/141759). Thanks [@DonnieFi](https://github.com/DonnieFi), [@obviyus](https://github.com/obviyus). +- Reuse completed Codex sign-in refreshes [#142628](https://github.com/openclaw/openclaw/pull/142628). Thanks [@vincentkoc](https://github.com/vincentkoc), [@kopl-blip](https://github.com/kopl-blip), [@zhuyankarl](https://github.com/zhuyankarl), [@100yenadmin](https://github.com/100yenadmin). +- Keep OpenAI, xAI, and Copilot device sign-in links clickable in Slack [#142873](https://github.com/openclaw/openclaw/pull/142873). Thanks [@obviyus](https://github.com/obviyus). +- Keep unrelated providers available during credential migration [#143310](https://github.com/openclaw/openclaw/pull/143310). Thanks [@tskerpnext](https://github.com/tskerpnext). - Keep model setup resources through background work [#143542](https://github.com/openclaw/openclaw/pull/143542) - Preserve case in model authentication evidence [#143780](https://github.com/openclaw/openclaw/pull/143780) @@ -2228,16 +2228,16 @@ Errors also better distinguish connection problems, rejected sign-ins, and reque **Bug fixes** - Refresh backup model aliases after plugin reloads [0e1f60ec](https://github.com/openclaw/openclaw/commit/0e1f60ec03b06127ef2a7b81413f817985113ac1); contextual [#133633](https://github.com/openclaw/openclaw/pull/133633) -- Preserve final ChatGPT events without a closing blank line [#120902](https://github.com/openclaw/openclaw/pull/120902). Thanks @zenglingbiao, @obviyus. -- Stop retrying wrapped parameter rejections [#140991](https://github.com/openclaw/openclaw/pull/140991); contextual [#140987](https://github.com/openclaw/openclaw/issues/140987). Thanks @ooiuuii, @obviyus. -- Repair string encoding in completed Anthropic tool arguments [#141323](https://github.com/openclaw/openclaw/pull/141323); contextual [#135111](https://github.com/openclaw/openclaw/issues/135111). Thanks @lraesly, @1Vision365-PeterTijsma, @infocus13, @peterkaynie, @jalehman, @MaxVidkrytaklishnya, @chrislro, @narbs. -- Refresh the terminal footer when the model falls back [#141436](https://github.com/openclaw/openclaw/pull/141436). Thanks @ooiuuii. -- Explain why a model fallback attempt stops [#141658](https://github.com/openclaw/openclaw/pull/141658). Thanks @von8794, @obviyus. -- Show specific provider network errors after redaction [#141665](https://github.com/openclaw/openclaw/pull/141665). Thanks @SunnyShu0925, @obviyus, @DonnieFi. -- Correct fallback warnings and preserve intentional silent replies [#141725](https://github.com/openclaw/openclaw/pull/141725). Thanks @leilei3167, @obviyus, @markthebest12. -- Keep unfinished tool-call explanations in chat history [#141870](https://github.com/openclaw/openclaw/pull/141870). Thanks @Takhoffman. -- Retry replay-safe malformed tool-call failures [#142176](https://github.com/openclaw/openclaw/pull/142176). Thanks @lraesly, @obviyus, @1Vision365-PeterTijsma, @peterkaynie, @infocus13, @MaxVidkrytaklishnya, @chrislro, @narbs. -- Explain fallback stops after terminal timeouts [#142278](https://github.com/openclaw/openclaw/pull/142278). Thanks @MoerAI, @obviyus, @von8794. +- Preserve final ChatGPT events without a closing blank line [#120902](https://github.com/openclaw/openclaw/pull/120902). Thanks [@zenglingbiao](https://github.com/zenglingbiao), [@obviyus](https://github.com/obviyus). +- Stop retrying wrapped parameter rejections [#140991](https://github.com/openclaw/openclaw/pull/140991); contextual [#140987](https://github.com/openclaw/openclaw/issues/140987). Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Repair string encoding in completed Anthropic tool arguments [#141323](https://github.com/openclaw/openclaw/pull/141323); contextual [#135111](https://github.com/openclaw/openclaw/issues/135111). Thanks [@lraesly](https://github.com/lraesly), [@1Vision365-PeterTijsma](https://github.com/1Vision365-PeterTijsma), [@infocus13](https://github.com/infocus13), [@peterkaynie](https://github.com/peterkaynie), [@jalehman](https://github.com/jalehman), [@MaxVidkrytaklishnya](https://github.com/MaxVidkrytaklishnya), [@chrislro](https://github.com/chrislro), [@narbs](https://github.com/narbs). +- Refresh the terminal footer when the model falls back [#141436](https://github.com/openclaw/openclaw/pull/141436). Thanks [@ooiuuii](https://github.com/ooiuuii). +- Explain why a model fallback attempt stops [#141658](https://github.com/openclaw/openclaw/pull/141658). Thanks [@von8794](https://github.com/von8794), [@obviyus](https://github.com/obviyus). +- Show specific provider network errors after redaction [#141665](https://github.com/openclaw/openclaw/pull/141665). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus), [@DonnieFi](https://github.com/DonnieFi). +- Correct fallback warnings and preserve intentional silent replies [#141725](https://github.com/openclaw/openclaw/pull/141725). Thanks [@leilei3167](https://github.com/leilei3167), [@obviyus](https://github.com/obviyus), [@markthebest12](https://github.com/markthebest12). +- Keep unfinished tool-call explanations in chat history [#141870](https://github.com/openclaw/openclaw/pull/141870). Thanks [@Takhoffman](https://github.com/Takhoffman). +- Retry replay-safe malformed tool-call failures [#142176](https://github.com/openclaw/openclaw/pull/142176). Thanks [@lraesly](https://github.com/lraesly), [@obviyus](https://github.com/obviyus), [@1Vision365-PeterTijsma](https://github.com/1Vision365-PeterTijsma), [@peterkaynie](https://github.com/peterkaynie), [@infocus13](https://github.com/infocus13), [@MaxVidkrytaklishnya](https://github.com/MaxVidkrytaklishnya), [@chrislro](https://github.com/chrislro), [@narbs](https://github.com/narbs). +- Explain fallback stops after terminal timeouts [#142278](https://github.com/openclaw/openclaw/pull/142278). Thanks [@MoerAI](https://github.com/MoerAI), [@obviyus](https://github.com/obviyus), [@von8794](https://github.com/von8794). - Explain provider authentication and model errors in history and status [#143243](https://github.com/openclaw/openclaw/pull/143243) @@ -2253,8 +2253,8 @@ Anthropic conversations that use tools can reuse more of the instructions and co **Bug fixes** -- Preserve reusable local-model prompt prefixes [#137371](https://github.com/openclaw/openclaw/pull/137371); contextual [#137257](https://github.com/openclaw/openclaw/issues/137257). Thanks @gwiltschek, @obviyus. -- Preserve Anthropic cache reuse during tool continuations and omit empty thinking-disabled beta headers [#140621](https://github.com/openclaw/openclaw/pull/140621); contextual [#140607](https://github.com/openclaw/openclaw/issues/140607). Thanks @LightningWareLLC, @he-yufeng, @vincentkoc. +- Preserve reusable local-model prompt prefixes [#137371](https://github.com/openclaw/openclaw/pull/137371); contextual [#137257](https://github.com/openclaw/openclaw/issues/137257). Thanks [@gwiltschek](https://github.com/gwiltschek), [@obviyus](https://github.com/obviyus). +- Preserve Anthropic cache reuse during tool continuations and omit empty thinking-disabled beta headers [#140621](https://github.com/openclaw/openclaw/pull/140621); contextual [#140607](https://github.com/openclaw/openclaw/issues/140607). Thanks [@LightningWareLLC](https://github.com/LightningWareLLC), [@he-yufeng](https://github.com/he-yufeng), [@vincentkoc](https://github.com/vincentkoc). @@ -2271,16 +2271,16 @@ Ordinary Codex chats can also recover a missing final answer after finishing wor **Bug fixes** -- Restore workspace instructions in managed Codex conversations [#142276](https://github.com/openclaw/openclaw/pull/142276). Thanks @vincentkoc. -- Accept Codex Responses Lite requests without separate instructions [#142823](https://github.com/openclaw/openclaw/pull/142823). Thanks @jalehman. -- Honor configured Codex workspace instruction limits [#142932](https://github.com/openclaw/openclaw/pull/142932). Thanks @ashawwal, @obviyus. -- Recover final answers after tool work in long Codex conversations [#143081](https://github.com/openclaw/openclaw/pull/143081). Thanks @barbarhan, @obviyus. -- Avoid repeated Codex history after final message delivery [#143506](https://github.com/openclaw/openclaw/pull/143506). Thanks @sunlit-deng, @dbarbatti, @obviyus. +- Restore workspace instructions in managed Codex conversations [#142276](https://github.com/openclaw/openclaw/pull/142276). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Accept Codex Responses Lite requests without separate instructions [#142823](https://github.com/openclaw/openclaw/pull/142823). Thanks [@jalehman](https://github.com/jalehman). +- Honor configured Codex workspace instruction limits [#142932](https://github.com/openclaw/openclaw/pull/142932). Thanks [@ashawwal](https://github.com/ashawwal), [@obviyus](https://github.com/obviyus). +- Recover final answers after tool work in long Codex conversations [#143081](https://github.com/openclaw/openclaw/pull/143081). Thanks [@barbarhan](https://github.com/barbarhan), [@obviyus](https://github.com/obviyus). +- Avoid repeated Codex history after final message delivery [#143506](https://github.com/openclaw/openclaw/pull/143506). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@dbarbatti](https://github.com/dbarbatti), [@obviyus](https://github.com/obviyus). **Documentation** -- Split the Codex harness reference by topic [#142803](https://github.com/openclaw/openclaw/pull/142803). Thanks @vincentkoc. -- Split Codex runtime guidance into focused pages [#143458](https://github.com/openclaw/openclaw/pull/143458). Thanks @vincentkoc. +- Split the Codex harness reference by topic [#142803](https://github.com/openclaw/openclaw/pull/142803). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split Codex runtime guidance into focused pages [#143458](https://github.com/openclaw/openclaw/pull/143458). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2299,17 +2299,17 @@ Returning to a Claude conversation keeps its original chat connection and avoids **Bug fixes** -- Preserve Claude session identity when combining duplicate history [#130494](https://github.com/openclaw/openclaw/pull/130494); contextual [#130456](https://github.com/openclaw/openclaw/issues/130456). Thanks @jalehman. -- Complete valid ACP forms with no fields [#133269](https://github.com/openclaw/openclaw/pull/133269). Thanks @xydt-juyaohui, @obviyus. -- Keep ACP startup waits consistent through clock changes [#137303](https://github.com/openclaw/openclaw/pull/137303). Thanks @qingminglong, @obviyus. -- Forward effective Fast settings to CLI plugins and preserve the selected account [#138667](https://github.com/openclaw/openclaw/pull/138667). Thanks @Szqub, @obviyus. -- Keep Codex operation timeouts stable through clock corrections [#141071](https://github.com/openclaw/openclaw/pull/141071); contextual [#141000](https://github.com/openclaw/openclaw/issues/141000). Thanks @ooiuuii, @obviyus. -- Restore pasted text in model-locked Codex sessions [#142021](https://github.com/openclaw/openclaw/pull/142021). Thanks @RomneyDa. -- Avoid duplicate user turns after Claude resume [#143960](https://github.com/openclaw/openclaw/pull/143960). Thanks @Marvinthebored, @Peetiegonzalez, @obviyus. +- Preserve Claude session identity when combining duplicate history [#130494](https://github.com/openclaw/openclaw/pull/130494); contextual [#130456](https://github.com/openclaw/openclaw/issues/130456). Thanks [@jalehman](https://github.com/jalehman). +- Complete valid ACP forms with no fields [#133269](https://github.com/openclaw/openclaw/pull/133269). Thanks [@xydt-juyaohui](https://github.com/xydt-juyaohui), [@obviyus](https://github.com/obviyus). +- Keep ACP startup waits consistent through clock changes [#137303](https://github.com/openclaw/openclaw/pull/137303). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). +- Forward effective Fast settings to CLI plugins and preserve the selected account [#138667](https://github.com/openclaw/openclaw/pull/138667). Thanks [@Szqub](https://github.com/Szqub), [@obviyus](https://github.com/obviyus). +- Keep Codex operation timeouts stable through clock corrections [#141071](https://github.com/openclaw/openclaw/pull/141071); contextual [#141000](https://github.com/openclaw/openclaw/issues/141000). Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Restore pasted text in model-locked Codex sessions [#142021](https://github.com/openclaw/openclaw/pull/142021). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Avoid duplicate user turns after Claude resume [#143960](https://github.com/openclaw/openclaw/pull/143960). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@Peetiegonzalez](https://github.com/Peetiegonzalez), [@obviyus](https://github.com/obviyus). **Documentation** -- Split ACP guidance by task [#142958](https://github.com/openclaw/openclaw/pull/142958). Thanks @vincentkoc. +- Split ACP guidance by task [#142958](https://github.com/openclaw/openclaw/pull/142958). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2324,12 +2324,12 @@ If you run models on your own server, OpenClaw now uses the conversation size re **Bug fixes** -- Use advertised context limits for self-hosted models [#141113](https://github.com/openclaw/openclaw/pull/141113). Thanks @vincentkoc. +- Use advertised context limits for self-hosted models [#141113](https://github.com/openclaw/openclaw/pull/141113). Thanks [@vincentkoc](https://github.com/vincentkoc). - Avoid unnecessary loading for first-use vLLM model information [#142125](https://github.com/openclaw/openclaw/pull/142125) **Documentation** -- Organize Ollama documentation into focused guides [#143004](https://github.com/openclaw/openclaw/pull/143004). Thanks @vincentkoc. +- Organize Ollama documentation into focused guides [#143004](https://github.com/openclaw/openclaw/pull/143004). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2344,7 +2344,7 @@ Tencent users can choose Hy4 preview through TokenHub or TokenPlan, and new setu **Improvements** -- Add Hy4 preview to Tencent TokenHub and TokenPlan [#131598](https://github.com/openclaw/openclaw/pull/131598). Thanks @chl-0537, @hxy91819. +- Add Hy4 preview to Tencent TokenHub and TokenPlan [#131598](https://github.com/openclaw/openclaw/pull/131598). Thanks [@chl-0537](https://github.com/chl-0537), [@hxy91819](https://github.com/hxy91819). @@ -2359,7 +2359,7 @@ New xAI setups use Grok 4.6, as do xAI web search, X search, and code-execution **Limits and compatibility** -- Use Grok 4.6 defaults and repair retired subscription auto selections [#142136](https://github.com/openclaw/openclaw/pull/142136). Thanks @obviyus. +- Use Grok 4.6 defaults and repair retired subscription auto selections [#142136](https://github.com/openclaw/openclaw/pull/142136). Thanks [@obviyus](https://github.com/obviyus). @@ -2374,9 +2374,9 @@ OpenCode Go and Zen requests made outside an ongoing conversation no longer fail **Bug fixes** -- Supply routing identity for sessionless OpenCode Go calls [#143558](https://github.com/openclaw/openclaw/pull/143558). Thanks @RomneyDa. -- Supply routing identity for standalone OpenCode completions [#143659](https://github.com/openclaw/openclaw/pull/143659). Thanks @HAPPYFAPTAIN, @obviyus, @GDXbsv, @spectrl. -- Preserve routing with explicit OpenCode sessions [#143890](https://github.com/openclaw/openclaw/pull/143890). Thanks @vincentkoc. +- Supply routing identity for sessionless OpenCode Go calls [#143558](https://github.com/openclaw/openclaw/pull/143558). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Supply routing identity for standalone OpenCode completions [#143659](https://github.com/openclaw/openclaw/pull/143659). Thanks [@HAPPYFAPTAIN](https://github.com/HAPPYFAPTAIN), [@obviyus](https://github.com/obviyus), [@GDXbsv](https://github.com/GDXbsv), [@spectrl](https://github.com/spectrl). +- Preserve routing with explicit OpenCode sessions [#143890](https://github.com/openclaw/openclaw/pull/143890). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2391,7 +2391,7 @@ If you use Arcee through OpenRouter, OpenClaw now uses your matching saved OpenR **Bug fixes** -- Use the selected Arcee account and preserve model settings [#142898](https://github.com/openclaw/openclaw/pull/142898). Thanks @obviyus. +- Use the selected Arcee account and preserve model settings [#142898](https://github.com/openclaw/openclaw/pull/142898). Thanks [@obviyus](https://github.com/obviyus). @@ -2406,7 +2406,7 @@ When Kimi explicitly reports that you have used up a weekly allowance, OpenClaw **Bug fixes** -- Treat explicit Kimi quota failures as rate limits [#142656](https://github.com/openclaw/openclaw/pull/142656). Thanks @RileyJJY, @obviyus, @rico007, @shaozhengkun123. +- Treat explicit Kimi quota failures as rate limits [#142656](https://github.com/openclaw/openclaw/pull/142656). Thanks [@RileyJJY](https://github.com/RileyJJY), [@obviyus](https://github.com/obviyus), [@rico007](https://github.com/rico007), [@shaozhengkun123](https://github.com/shaozhengkun123). @@ -2427,8 +2427,8 @@ _GPT Image 2.5 Flare and Sunburst generation or editing. Conceptual illustration **Improvements** -- Add GPT Image 2.5 Flare and Sunburst through OpenAI [#143068](https://github.com/openclaw/openclaw/pull/143068). Thanks @vincentkoc. -- Add GPT Image 2.5 through fal with 16-reference editing [#143069](https://github.com/openclaw/openclaw/pull/143069). Thanks @vincentkoc. +- Add GPT Image 2.5 Flare and Sunburst through OpenAI [#143068](https://github.com/openclaw/openclaw/pull/143068). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add GPT Image 2.5 through fal with 16-reference editing [#143069](https://github.com/openclaw/openclaw/pull/143069). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2443,7 +2443,7 @@ You can now choose [Deepgram Flux](/providers/deepgram) to turn incoming voice n **Improvements** -- Transcribe voice notes with Deepgram Flux [#141836](https://github.com/openclaw/openclaw/pull/141836). Thanks @obviyus, @safzanpirani. +- Transcribe voice notes with Deepgram Flux [#141836](https://github.com/openclaw/openclaw/pull/141836). Thanks [@obviyus](https://github.com/obviyus), [@safzanpirani](https://github.com/safzanpirani). @@ -2458,11 +2458,11 @@ Gemini web search now uses Gemini 3.6 Flash unless you chose a specific search m **Improvements** -- Use Gemini 3.6 Flash for unconfigured web searches [#111964](https://github.com/openclaw/openclaw/pull/111964); contextual [#96974](https://github.com/openclaw/openclaw/issues/96974). Thanks @dillona, @vincentkoc, @anguslogan01. +- Use Gemini 3.6 Flash for unconfigured web searches [#111964](https://github.com/openclaw/openclaw/pull/111964); contextual [#96974](https://github.com/openclaw/openclaw/issues/96974). Thanks [@dillona](https://github.com/dillona), [@vincentkoc](https://github.com/vincentkoc), [@anguslogan01](https://github.com/anguslogan01). **Documentation** -- Document search plugin installation and restarts, local Ollama model routing, browser ports, optional jq, /tell, patch syntax, approval inspection, node selection, reactions, and screen availability [#143856](https://github.com/openclaw/openclaw/pull/143856). Thanks @vincentkoc. +- Document search plugin installation and restarts, local Ollama model routing, browser ports, optional jq, /tell, patch syntax, approval inspection, node selection, reactions, and screen availability [#143856](https://github.com/openclaw/openclaw/pull/143856). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2477,10 +2477,10 @@ Cost reports now warn when totals may still be incomplete, so a temporary zero i **Bug fixes** -- Count reported cache writes separately from ordinary input [#141377](https://github.com/openclaw/openclaw/pull/141377); contextual [#141374](https://github.com/openclaw/openclaw/issues/141374). Thanks @ooiuuii, @obviyus. -- Avoid delayed ClawRouter usage errors during diagnostic capture [#141818](https://github.com/openclaw/openclaw/pull/141818). Thanks @Alix-007, @obviyus. +- Count reported cache writes separately from ordinary input [#141377](https://github.com/openclaw/openclaw/pull/141377); contextual [#141374](https://github.com/openclaw/openclaw/issues/141374). Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Avoid delayed ClawRouter usage errors during diagnostic capture [#141818](https://github.com/openclaw/openclaw/pull/141818). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). - Label incomplete usage-cost totals [#141917](https://github.com/openclaw/openclaw/pull/141917) -- Fill missing estimates for OpenRouter routing shortcuts [#142138](https://github.com/openclaw/openclaw/pull/142138). Thanks @fabiolr, @obviyus. +- Fill missing estimates for OpenRouter routing shortcuts [#142138](https://github.com/openclaw/openclaw/pull/142138). Thanks [@fabiolr](https://github.com/fabiolr), [@obviyus](https://github.com/obviyus). @@ -2497,7 +2497,7 @@ If you run `openclaw models status --probe` directly from the terminal, stop the **Bug fixes** -- Avoid OpenRouter capture waits after music completion or usage errors [#141754](https://github.com/openclaw/openclaw/pull/141754). Thanks @Alix-007, @obviyus. +- Avoid OpenRouter capture waits after music completion or usage errors [#141754](https://github.com/openclaw/openclaw/pull/141754). Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). - Retain Anthropic resources through cancellation cleanup [#143377](https://github.com/openclaw/openclaw/pull/143377) - Retain model probe resources through cleanup [#143658](https://github.com/openclaw/openclaw/pull/143658) - Keep prepared model limits and credentials when skipping discovery [#143695](https://github.com/openclaw/openclaw/pull/143695) @@ -2515,8 +2515,8 @@ Setting up an account or checking a provider's options is easier in the reorgani **Documentation** -- Organize OpenAI guidance into focused task pages [#141224](https://github.com/openclaw/openclaw/pull/141224). Thanks @vincentkoc. -- Organize model-provider documentation by setup task [#143058](https://github.com/openclaw/openclaw/pull/143058). Thanks @vincentkoc. +- Organize OpenAI guidance into focused task pages [#141224](https://github.com/openclaw/openclaw/pull/141224). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize model-provider documentation by setup task [#143058](https://github.com/openclaw/openclaw/pull/143058). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2539,10 +2539,10 @@ Scheduled commands run by OpenClaw can work without turning off secret protectio **Bug fixes** -- Keep scheduled jobs running through runtime refreshes [84fd689](https://github.com/openclaw/openclaw/commit/84fd689763c410dc32d43302c589f09d2f22d462). Thanks @ekinnee, @84dnnvbdvp-debug. -- Preserve usable cron models and fallback failure details [855c9de](https://github.com/openclaw/openclaw/commit/855c9de4a2a7c8015d4fa78b28d00f330c0649ba). Thanks @Marvinthebored, @obviyus. -- Restore scheduled commands with secret egress enabled [#142074](https://github.com/openclaw/openclaw/pull/142074). Thanks @tilor, @obviyus. -- Accept Codex catalog tool names in automation allowlists [#142382](https://github.com/openclaw/openclaw/pull/142382). Thanks @sercada, @obviyus. +- Keep scheduled jobs running through runtime refreshes [84fd689](https://github.com/openclaw/openclaw/commit/84fd689763c410dc32d43302c589f09d2f22d462). Thanks [@ekinnee](https://github.com/ekinnee), [@84dnnvbdvp-debug](https://github.com/84dnnvbdvp-debug). +- Preserve usable cron models and fallback failure details [855c9de](https://github.com/openclaw/openclaw/commit/855c9de4a2a7c8015d4fa78b28d00f330c0649ba). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@obviyus](https://github.com/obviyus). +- Restore scheduled commands with secret egress enabled [#142074](https://github.com/openclaw/openclaw/pull/142074). Thanks [@tilor](https://github.com/tilor), [@obviyus](https://github.com/obviyus). +- Accept Codex catalog tool names in automation allowlists [#142382](https://github.com/openclaw/openclaw/pull/142382). Thanks [@sercada](https://github.com/sercada), [@obviyus](https://github.com/obviyus). @@ -2557,8 +2557,8 @@ A clash between scheduled tasks could make OpenClaw keep retrying until it stopp **Bug fixes** -- Prevent scheduled agents from entering an unresumable yield [#135318](https://github.com/openclaw/openclaw/pull/135318). Thanks @LiuwqGit, @obviyus, @youens, @postoso, @BottaniCals. -- Stop stalled scheduled-job reservation loops and clean up resources after failed database opens [#142741](https://github.com/openclaw/openclaw/pull/142741). Thanks @galiniliev. +- Prevent scheduled agents from entering an unresumable yield [#135318](https://github.com/openclaw/openclaw/pull/135318). Thanks [@LiuwqGit](https://github.com/LiuwqGit), [@obviyus](https://github.com/obviyus), [@youens](https://github.com/youens), [@postoso](https://github.com/postoso), [@BottaniCals](https://github.com/BottaniCals). +- Stop stalled scheduled-job reservation loops and clean up resources after failed database opens [#142741](https://github.com/openclaw/openclaw/pull/142741). Thanks [@galiniliev](https://github.com/galiniliev). @@ -2575,7 +2575,7 @@ If an automation result is waiting while your Claw answers you, canceling that r **Bug fixes** -- Keep quiet heartbeats silent and report completed sends [#140115](https://github.com/openclaw/openclaw/pull/140115). Thanks @ruel225, @obviyus, @laurencebrown. +- Keep quiet heartbeats silent and report completed sends [#140115](https://github.com/openclaw/openclaw/pull/140115). Thanks [@ruel225](https://github.com/ruel225), [@obviyus](https://github.com/obviyus), [@laurencebrown](https://github.com/laurencebrown). - Release session updates after cancellation [#143832](https://github.com/openclaw/openclaw/pull/143832). - Keep background completions and delayed skill experience reviews working after replies, with clearer event origins in history [#143866](https://github.com/openclaw/openclaw/pull/143866). @@ -2594,13 +2594,13 @@ If you manage automations from the command line, missing jobs and invalid option **Improvements** -- Edit automations directly from an agent's settings [#139782](https://github.com/openclaw/openclaw/pull/139782). Thanks @jjjhenriksen, @vyctorbrzezowski. +- Edit automations directly from an agent's settings [#139782](https://github.com/openclaw/openclaw/pull/139782). Thanks [@jjjhenriksen](https://github.com/jjjhenriksen), [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). - Explain time spent loading automation lists when diagnostics are enabled [#141805](https://github.com/openclaw/openclaw/pull/141805). **Bug fixes** - Show saved friendly automation names [#142076](https://github.com/openclaw/openclaw/pull/142076). -- Show direct automation error guidance in JSON mode [#142113](https://github.com/openclaw/openclaw/pull/142113). Thanks @DasX, @obviyus. +- Show direct automation error guidance in JSON mode [#142113](https://github.com/openclaw/openclaw/pull/142113). Thanks [@DasX](https://github.com/DasX), [@obviyus](https://github.com/obviyus). - Explain how to restore automatic scheduling by enabling cron, clearing `OPENCLAW_SKIP_CRON=1` from the Gateway's launch environment, and restarting [#142185](https://github.com/openclaw/openclaw/pull/142185). - Reject blank automation job IDs with clear guidance [#142264](https://github.com/openclaw/openclaw/pull/142264). - Sort and group scheduled sessions by displayed kind [#142554](https://github.com/openclaw/openclaw/pull/142554). @@ -2625,9 +2625,9 @@ Guidance is easier to find when you want to [start a task at a set time or when **Documentation** -- Document all automation schedule types and option constraints [#135964](https://github.com/openclaw/openclaw/pull/135964). Thanks @qingminglong, @obviyus. -- Split hooks guidance into focused reference pages [#143041](https://github.com/openclaw/openclaw/pull/143041). Thanks @vincentkoc. -- Clarify that there is no native WebSocket schedule source and legacy `cron.failureDestination` settings are not read directly [#144039](https://github.com/openclaw/openclaw/pull/144039). Thanks @vincentkoc. +- Document all automation schedule types and option constraints [#135964](https://github.com/openclaw/openclaw/pull/135964). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). +- Split hooks guidance into focused reference pages [#143041](https://github.com/openclaw/openclaw/pull/143041). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify that there is no native WebSocket schedule source and legacy `cron.failureDestination` settings are not read directly [#144039](https://github.com/openclaw/openclaw/pull/144039). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2649,13 +2649,13 @@ The [Browser panel](/tools/browser) can show what your Claw is doing without swi **Bug fixes** -- Keep browser focus during automatic panel updates [5c70585](https://github.com/openclaw/openclaw/commit/5c70585f93cf5ab22893266b22cd767e1eb9d056). Thanks @scotthuang. -- Recover the Browser panel after stream disconnects [#141576](https://github.com/openclaw/openclaw/pull/141576). Thanks @safzanpirani, @obviyus. An open connection that never sends its first frame remains outside this repair. -- Hide preview cards for blank and internal browser pages [#142213](https://github.com/openclaw/openclaw/pull/142213). Thanks @vyctorbrzezowski. +- Keep browser focus during automatic panel updates [5c70585](https://github.com/openclaw/openclaw/commit/5c70585f93cf5ab22893266b22cd767e1eb9d056). Thanks [@scotthuang](https://github.com/scotthuang). +- Recover the Browser panel after stream disconnects [#141576](https://github.com/openclaw/openclaw/pull/141576). Thanks [@safzanpirani](https://github.com/safzanpirani), [@obviyus](https://github.com/obviyus). An open connection that never sends its first frame remains outside this repair. +- Hide preview cards for blank and internal browser pages [#142213](https://github.com/openclaw/openclaw/pull/142213). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). **Documentation** -- Split browser documentation into focused guides [#142984](https://github.com/openclaw/openclaw/pull/142984). Thanks @vincentkoc. +- Split browser documentation into focused guides [#142984](https://github.com/openclaw/openclaw/pull/142984). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2677,7 +2677,7 @@ Cancelling cannot undo changes already made to a page. If you automate browser c **Limits and compatibility** -- Reject invalid Browser CLI mouse-button values [#140976](https://github.com/openclaw/openclaw/pull/140976). Thanks @WOLIKIMCHENG, @DilapidatedDolphin98, @obviyus. Supplied values must be exactly `left`, `right`, or `middle`. +- Reject invalid Browser CLI mouse-button values [#140976](https://github.com/openclaw/openclaw/pull/140976). Thanks [@WOLIKIMCHENG](https://github.com/WOLIKIMCHENG), [@DilapidatedDolphin98](https://github.com/DilapidatedDolphin98), [@obviyus](https://github.com/obviyus). Supplied values must be exactly `left`, `right`, or `middle`. @@ -2693,8 +2693,8 @@ If [Codex Computer Use](/plugins/codex-computer-use) cannot start because native **Bug fixes** -- Skip the discovery wait when native Codex plugins are disabled [#137485](https://github.com/openclaw/openclaw/pull/137485). Thanks @shojikumaru, @noelillinger, @obviyus. -- Make supported paired-desktop actions available on the first call [#141277](https://github.com/openclaw/openclaw/pull/141277). Thanks @oywino, @obviyus. Existing vision and permission restrictions still apply. +- Skip the discovery wait when native Codex plugins are disabled [#137485](https://github.com/openclaw/openclaw/pull/137485). Thanks [@shojikumaru](https://github.com/shojikumaru), [@noelillinger](https://github.com/noelillinger), [@obviyus](https://github.com/obviyus). +- Make supported paired-desktop actions available on the first call [#141277](https://github.com/openclaw/openclaw/pull/141277). Thanks [@oywino](https://github.com/oywino), [@obviyus](https://github.com/obviyus). Existing vision and permission restrictions still apply. - Fix first-action CUA window discovery [#143736](https://github.com/openclaw/openclaw/pull/143736). - Fix activation results and targeted capture guidance [#143953](https://github.com/openclaw/openclaw/pull/143953). Window input uses the `observationId` returned by `get_window_state` with `includeScreenshot`, rather than a whole-desktop frame reference. @@ -2774,26 +2774,26 @@ You can now search installed and available plugins together, browse by purpose, **Improvements** -- Browse and filter ClawHub plugins in the web UI [#137659](https://github.com/openclaw/openclaw/pull/137659) — Thanks @Patrick-Erichsen. -- Inspect plugin documentation and compatibility in detail pages [#137846](https://github.com/openclaw/openclaw/pull/137846) — Thanks @Patrick-Erichsen. -- Include local plugins and locally backed details in discovery [#137856](https://github.com/openclaw/openclaw/pull/137856) — Thanks @Patrick-Erichsen. -- Unify bundled and ClawHub plugin browsing [#138755](https://github.com/openclaw/openclaw/pull/138755) — Thanks @Patrick-Erichsen. -- Add Gateway-backed ClawHub catalog discovery [#139042](https://github.com/openclaw/openclaw/pull/139042) — Thanks @Patrick-Erichsen. +- Browse and filter ClawHub plugins in the web UI [#137659](https://github.com/openclaw/openclaw/pull/137659) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Inspect plugin documentation and compatibility in detail pages [#137846](https://github.com/openclaw/openclaw/pull/137846) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Include local plugins and locally backed details in discovery [#137856](https://github.com/openclaw/openclaw/pull/137856) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Unify bundled and ClawHub plugin browsing [#138755](https://github.com/openclaw/openclaw/pull/138755) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Add Gateway-backed ClawHub catalog discovery [#139042](https://github.com/openclaw/openclaw/pull/139042) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). - Reuse prepared plugin catalog metadata [#142500](https://github.com/openclaw/openclaw/pull/142500) -- Use package categories in plugin discovery [#142711](https://github.com/openclaw/openclaw/pull/142711) — Thanks @Patrick-Erichsen. -- Group installed plugins by purpose [#142712](https://github.com/openclaw/openclaw/pull/142712) — Thanks @Patrick-Erichsen. -- Unify plugin browsing and add ClawHub chat cards [#142782](https://github.com/openclaw/openclaw/pull/142782) — Thanks @Patrick-Erichsen. -- Load plugin catalog pages automatically [#143731](https://github.com/openclaw/openclaw/pull/143731) — Thanks @Patrick-Erichsen. +- Use package categories in plugin discovery [#142711](https://github.com/openclaw/openclaw/pull/142711) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Group installed plugins by purpose [#142712](https://github.com/openclaw/openclaw/pull/142712) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Unify plugin browsing and add ClawHub chat cards [#142782](https://github.com/openclaw/openclaw/pull/142782) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Load plugin catalog pages automatically [#143731](https://github.com/openclaw/openclaw/pull/143731) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). - Load less unused code for bundled channels [#143846](https://github.com/openclaw/openclaw/pull/143846) **Limits and compatibility** -- Declare ordered plugin categories [#142710](https://github.com/openclaw/openclaw/pull/142710) — Thanks @Patrick-Erichsen. +- Declare ordered plugin categories [#142710](https://github.com/openclaw/openclaw/pull/142710) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** - Match installed plugins to the correct ClawHub registry [#143644](https://github.com/openclaw/openclaw/pull/143644) -- Correct plugin ranking, bundled identities, and skill names [#143730](https://github.com/openclaw/openclaw/pull/143730) — Thanks @Patrick-Erichsen. +- Correct plugin ranking, bundled identities, and skill names [#143730](https://github.com/openclaw/openclaw/pull/143730) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). @@ -2808,15 +2808,15 @@ You can read what a plugin does, check what it needs, and follow installation th **Improvements** -- Browse and search installed plugins in the Plugins workspace [#135839](https://github.com/openclaw/openclaw/pull/135839) — Thanks @Patrick-Erichsen. -- Manage installed plugins on dedicated settings pages [#135840](https://github.com/openclaw/openclaw/pull/135840) — Thanks @Patrick-Erichsen. -- Install and configure plugins from their detail pages [#137886](https://github.com/openclaw/openclaw/pull/137886) — Thanks @Patrick-Erichsen. -- Organize installed-plugin details into tabs [#142713](https://github.com/openclaw/openclaw/pull/142713) — Thanks @Patrick-Erichsen. +- Browse and search installed plugins in the Plugins workspace [#135839](https://github.com/openclaw/openclaw/pull/135839) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Manage installed plugins on dedicated settings pages [#135840](https://github.com/openclaw/openclaw/pull/135840) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Install and configure plugins from their detail pages [#137886](https://github.com/openclaw/openclaw/pull/137886) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). +- Organize installed-plugin details into tabs [#142713](https://github.com/openclaw/openclaw/pull/142713) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Clarify plugin setup states and package icons [#142624](https://github.com/openclaw/openclaw/pull/142624) — Thanks @Patrick-Erichsen, @jalehman. -- Correct recovery commands after plugin capability-consent rejection [#143125](https://github.com/openclaw/openclaw/pull/143125) — Thanks @liuwqgit, @obviyus, @yxloveql. +- Clarify plugin setup states and package icons [#142624](https://github.com/openclaw/openclaw/pull/142624) — Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen), [@jalehman](https://github.com/jalehman). +- Correct recovery commands after plugin capability-consent rejection [#143125](https://github.com/openclaw/openclaw/pull/143125) — Thanks [@liuwqgit](https://github.com/liuwqgit), [@obviyus](https://github.com/obviyus), [@yxloveql](https://github.com/yxloveql). - Keep plugin selections and installation progress current [#143671](https://github.com/openclaw/openclaw/pull/143671) @@ -2832,24 +2832,24 @@ If you manage plugins from the terminal, [error messages](/cli/plugins) now poin **Bug fixes** -- Enforce deadlines for ClawHub metadata and error responses [#109092](https://github.com/openclaw/openclaw/pull/109092) — Thanks @Pick-cat, @obviyus. +- Enforce deadlines for ClawHub metadata and error responses [#109092](https://github.com/openclaw/openclaw/pull/109092) — Thanks [@Pick-cat](https://github.com/Pick-cat), [@obviyus](https://github.com/obviyus). - Keep profile and container context in plugin recovery commands [#117631](https://github.com/openclaw/openclaw/pull/117631) - Release plugin resources before reporting inspection success [#141780](https://github.com/openclaw/openclaw/pull/141780) - Close chat plugin-inspection resources before replying [#141819](https://github.com/openclaw/openclaw/pull/141819) - Release Plugin Doctor resources before reporting completion [#141845](https://github.com/openclaw/openclaw/pull/141845) - Close Workboard connections after plugin inspections [#141858](https://github.com/openclaw/openclaw/pull/141858) - Recover notices for already loaded plugins [#141930](https://github.com/openclaw/openclaw/pull/141930) -- Clarify restart requirements after installing plugins [#142129](https://github.com/openclaw/openclaw/pull/142129) — Thanks @WOLIKIMCHENG, @obviyus, @dh-js. +- Clarify restart requirements after installing plugins [#142129](https://github.com/openclaw/openclaw/pull/142129) — Thanks [@WOLIKIMCHENG](https://github.com/WOLIKIMCHENG), [@obviyus](https://github.com/obviyus), [@dh-js](https://github.com/dh-js). - Identify changed plugin registry records in diagnostics [#142192](https://github.com/openclaw/openclaw/pull/142192) - Release plugin CLI resources after cleanup finishes [#142388](https://github.com/openclaw/openclaw/pull/142388) - Keep resources alive through plugin registration cleanup [#142636](https://github.com/openclaw/openclaw/pull/142636) -- Preserve bundled plugin trust for development path installs [#143516](https://github.com/openclaw/openclaw/pull/143516) — Thanks @RomneyDa. +- Preserve bundled plugin trust for development path installs [#143516](https://github.com/openclaw/openclaw/pull/143516) — Thanks [@RomneyDa](https://github.com/RomneyDa). - Report supported bundle hook layouts accurately [#143687](https://github.com/openclaw/openclaw/pull/143687) **Documentation** -- Split the plugins CLI reference by task [#142980](https://github.com/openclaw/openclaw/pull/142980) — Thanks @vincentkoc. -- Clarify default plugin package resolution [#143867](https://github.com/openclaw/openclaw/pull/143867) — Thanks @vincentkoc. +- Split the plugins CLI reference by task [#142980](https://github.com/openclaw/openclaw/pull/142980) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify default plugin package resolution [#143867](https://github.com/openclaw/openclaw/pull/143867) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Improvements** @@ -2868,32 +2868,32 @@ People building plugins get fixes for type errors and missing supporting files t **Documentation** -- Document the private completion helper in the SDK catalog [#111706](https://github.com/openclaw/openclaw/pull/111706) — Thanks @xydt-tanshanshan, @obviyus, @chegherian. -- Split provider SDK guidance into focused references [#141958](https://github.com/openclaw/openclaw/pull/141958) — Thanks @vincentkoc. -- Organize plugin hook guidance by task [#142605](https://github.com/openclaw/openclaw/pull/142605) — Thanks @vincentkoc. -- Split SDK migration guidance into focused pages [#142607](https://github.com/openclaw/openclaw/pull/142607) — Thanks @vincentkoc. -- Organize the SDK overview into focused references [#142641](https://github.com/openclaw/openclaw/pull/142641) — Thanks @vincentkoc. -- Split channel SDK guidance into focused references [#142703](https://github.com/openclaw/openclaw/pull/142703) — Thanks @vincentkoc. -- Split plugin architecture into focused guides [#142730](https://github.com/openclaw/openclaw/pull/142730) — Thanks @vincentkoc. -- Split the agent-harness SDK reference into focused pages [#142889](https://github.com/openclaw/openclaw/pull/142889) — Thanks @vincentkoc. -- Split plugin entry-point documentation into focused references [#143151](https://github.com/openclaw/openclaw/pull/143151) — Thanks @vincentkoc. -- Correct plugin examples and capability guidance [#143857](https://github.com/openclaw/openclaw/pull/143857) — Thanks @vincentkoc. -- Correct provider catalog and Claude bundle guidance [#143895](https://github.com/openclaw/openclaw/pull/143895) — Thanks @vincentkoc. -- Clarify plugin migration history and examples [#143982](https://github.com/openclaw/openclaw/pull/143982) — Thanks @vincentkoc. +- Document the private completion helper in the SDK catalog [#111706](https://github.com/openclaw/openclaw/pull/111706) — Thanks [@xydt-tanshanshan](https://github.com/xydt-tanshanshan), [@obviyus](https://github.com/obviyus), [@chegherian](https://github.com/chegherian). +- Split provider SDK guidance into focused references [#141958](https://github.com/openclaw/openclaw/pull/141958) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize plugin hook guidance by task [#142605](https://github.com/openclaw/openclaw/pull/142605) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split SDK migration guidance into focused pages [#142607](https://github.com/openclaw/openclaw/pull/142607) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize the SDK overview into focused references [#142641](https://github.com/openclaw/openclaw/pull/142641) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split channel SDK guidance into focused references [#142703](https://github.com/openclaw/openclaw/pull/142703) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split plugin architecture into focused guides [#142730](https://github.com/openclaw/openclaw/pull/142730) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split the agent-harness SDK reference into focused pages [#142889](https://github.com/openclaw/openclaw/pull/142889) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split plugin entry-point documentation into focused references [#143151](https://github.com/openclaw/openclaw/pull/143151) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct plugin examples and capability guidance [#143857](https://github.com/openclaw/openclaw/pull/143857) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct provider catalog and Claude bundle guidance [#143895](https://github.com/openclaw/openclaw/pull/143895) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify plugin migration history and examples [#143982](https://github.com/openclaw/openclaw/pull/143982) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Limits and compatibility** -- Expose the actual catchall multi-account schema type [#141796](https://github.com/openclaw/openclaw/pull/141796) — Thanks @RomneyDa. +- Expose the actual catchall multi-account schema type [#141796](https://github.com/openclaw/openclaw/pull/141796) — Thanks [@RomneyDa](https://github.com/RomneyDa). **Bug fixes** -- Accept interface-typed inbound hook contexts [#141934](https://github.com/openclaw/openclaw/pull/141934) — Thanks @RomneyDa. +- Accept interface-typed inbound hook contexts [#141934](https://github.com/openclaw/openclaw/pull/141934) — Thanks [@RomneyDa](https://github.com/RomneyDa). - Use the running Gateway SDK for sibling-checkout plugins [#142508](https://github.com/openclaw/openclaw/pull/142508) - Include declared assets in untracked source-plugin builds [#142527](https://github.com/openclaw/openclaw/pull/142527) **Improvements** -- Develop Control UI plugins against a real Gateway with hot reload [#143052](https://github.com/openclaw/openclaw/pull/143052) — Thanks @shakkernerd. +- Develop Control UI plugins against a real Gateway with hot reload [#143052](https://github.com/openclaw/openclaw/pull/143052) — Thanks [@shakkernerd](https://github.com/shakkernerd). @@ -2918,13 +2918,13 @@ Requests using [model plugins](/plugins/sdk-runtime/models) are less likely to f - Keep local model resources through request cleanup [#143302](https://github.com/openclaw/openclaw/pull/143302) - Preserve plugin identity when tools are cancelled [#143305](https://github.com/openclaw/openclaw/pull/143305) - Keep isolated model calls alive through cleanup [#143414](https://github.com/openclaw/openclaw/pull/143414) -- Fix runtime-specific environment listing from the CLI [#143446](https://github.com/openclaw/openclaw/pull/143446) — Thanks @jalehman. +- Fix runtime-specific environment listing from the CLI [#143446](https://github.com/openclaw/openclaw/pull/143446) — Thanks [@jalehman](https://github.com/jalehman). - Keep plugin resources through late agent cleanup [#143490](https://github.com/openclaw/openclaw/pull/143490) - Release model-selected plugin resources after agent work [#143725](https://github.com/openclaw/openclaw/pull/143725) **Documentation** -- Split tool configuration references into focused pages [#142960](https://github.com/openclaw/openclaw/pull/142960) — Thanks @vincentkoc. +- Split tool configuration references into focused pages [#142960](https://github.com/openclaw/openclaw/pull/142960) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Improvements** @@ -2966,7 +2966,7 @@ Image, music, and video jobs can finish and save their results even when the plu **Documentation** -- Organize text-to-speech documentation by task [#142992](https://github.com/openclaw/openclaw/pull/142992) — Thanks @vincentkoc. +- Organize text-to-speech documentation by task [#142992](https://github.com/openclaw/openclaw/pull/142992) — Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -2982,7 +2982,7 @@ Plugins with lots of saved data use less extra memory when listing it, helping r **Improvements** - Reduce database reads during plugin-state quota checks [#142318](https://github.com/openclaw/openclaw/pull/142318) -- Reduce temporary memory when listing plugin state [#142568](https://github.com/openclaw/openclaw/pull/142568) — Thanks @arcabotai. +- Reduce temporary memory when listing plugin state [#142568](https://github.com/openclaw/openclaw/pull/142568) — Thanks [@arcabotai](https://github.com/arcabotai). **Bug fixes** @@ -3002,7 +3002,7 @@ If you connect external tools through [MCP](/cli/mcp), large text replies from c **Bug fixes** -- Finish MCP cleanup without waiting on stalled cancellation [#141289](https://github.com/openclaw/openclaw/pull/141289) — Thanks @hugenshen, @obviyus. +- Finish MCP cleanup without waiting on stalled cancellation [#141289](https://github.com/openclaw/openclaw/pull/141289) — Thanks [@hugenshen](https://github.com/hugenshen), [@obviyus](https://github.com/obviyus). - Wait for MCP tool cleanup before resource release [#142632](https://github.com/openclaw/openclaw/pull/142632) - Keep MCP plugin resources available through shutdown cleanup [#143031](https://github.com/openclaw/openclaw/pull/143031) @@ -3012,7 +3012,7 @@ If you connect external tools through [MCP](/cli/mcp), large text replies from c **Documentation** -- Split MCP documentation by task [#142995](https://github.com/openclaw/openclaw/pull/142995) — Thanks @vincentkoc. +- Split MCP documentation by task [#142995](https://github.com/openclaw/openclaw/pull/142995) — Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3027,15 +3027,15 @@ Commands on [connected devices](/cli/nodes) no longer time out early or wait lon **Bug fixes** -- Keep node command timeouts stable across clock changes [#137147](https://github.com/openclaw/openclaw/pull/137147) — Thanks @qingminglong, @obviyus. +- Keep node command timeouts stable across clock changes [#137147](https://github.com/openclaw/openclaw/pull/137147) — Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). **Limits and compatibility** -- Reject empty numeric node command options [#137311](https://github.com/openclaw/openclaw/pull/137311) — Thanks @Alix-007, @obviyus. +- Reject empty numeric node command options [#137311](https://github.com/openclaw/openclaw/pull/137311) — Thanks [@Alix-007](https://github.com/Alix-007), [@obviyus](https://github.com/obviyus). **Documentation** -- Split Nodes documentation by task [#142779](https://github.com/openclaw/openclaw/pull/142779) — Thanks @vincentkoc. +- Split Nodes documentation by task [#142779](https://github.com/openclaw/openclaw/pull/142779) — Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3050,11 +3050,11 @@ Google Meet and voice sessions can now ask a [separately configured agent](/plug **Documentation** -- Organize Google Meet guidance by task [#142729](https://github.com/openclaw/openclaw/pull/142729) — Thanks @vincentkoc. +- Organize Google Meet guidance by task [#142729](https://github.com/openclaw/openclaw/pull/142729) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Bug fixes** -- Allow separate-agent consultations from model-locked sessions [#142736](https://github.com/openclaw/openclaw/pull/142736) — Thanks @RileyJJY, @jai-assistant, @jalehman. +- Allow separate-agent consultations from model-locked sessions [#142736](https://github.com/openclaw/openclaw/pull/142736) — Thanks [@RileyJJY](https://github.com/RileyJJY), [@jai-assistant](https://github.com/jai-assistant), [@jalehman](https://github.com/jalehman). - Clean up Google Meet audio after Chrome startup failure [#143408](https://github.com/openclaw/openclaw/pull/143408) @@ -3070,7 +3070,7 @@ If you use [A2A to connect agents](/channels/a2a), incoming requests now reach t **Bug fixes** -- Honor A2A peer-to-agent bindings [#142485](https://github.com/openclaw/openclaw/pull/142485) — Thanks @eleqtrizit. +- Honor A2A peer-to-agent bindings [#142485](https://github.com/openclaw/openclaw/pull/142485) — Thanks [@eleqtrizit](https://github.com/eleqtrizit). @@ -3085,8 +3085,8 @@ Apps using OpenClaw through [Chat Completions](/gateway/openai-http-api) or the **Bug fixes** -- Report output-limited Chat Completions accurately [#141268](https://github.com/openclaw/openclaw/pull/141268) — Thanks @ooiuuii, @obviyus. -- Report output-limited Responses answers as incomplete [#142778](https://github.com/openclaw/openclaw/pull/142778) — Thanks @zhangguiping-xydt, @obviyus, @ooiuuii. +- Report output-limited Chat Completions accurately [#141268](https://github.com/openclaw/openclaw/pull/141268) — Thanks [@ooiuuii](https://github.com/ooiuuii), [@obviyus](https://github.com/obviyus). +- Report output-limited Responses answers as incomplete [#142778](https://github.com/openclaw/openclaw/pull/142778) — Thanks [@zhangguiping-xydt](https://github.com/zhangguiping-xydt), [@obviyus](https://github.com/obviyus), [@ooiuuii](https://github.com/ooiuuii). **Improvements** @@ -3094,9 +3094,9 @@ Apps using OpenClaw through [Chat Completions](/gateway/openai-http-api) or the **Documentation** -- Expose Gateway RPC method groups as headings [#143459](https://github.com/openclaw/openclaw/pull/143459) — Thanks @vincentkoc. -- Correct Gateway reference hierarchy and model-view link [#143472](https://github.com/openclaw/openclaw/pull/143472) — Thanks @vincentkoc. -- Split Gateway RPC guidance into focused topic pages [#143515](https://github.com/openclaw/openclaw/pull/143515) — Thanks @vincentkoc. +- Expose Gateway RPC method groups as headings [#143459](https://github.com/openclaw/openclaw/pull/143459) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct Gateway reference hierarchy and model-view link [#143472](https://github.com/openclaw/openclaw/pull/143472) — Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split Gateway RPC guidance into focused topic pages [#143515](https://github.com/openclaw/openclaw/pull/143515) — Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3113,7 +3113,7 @@ If you use separate Team Reports report or export links, change `/reports/...` t **Bug fixes** -- Make generated plugin panels readable by container runtime users [#142997](https://github.com/openclaw/openclaw/pull/142997) — Thanks @ylcn91, @obviyus, @Conan-Scott. +- Make generated plugin panels readable by container runtime users [#142997](https://github.com/openclaw/openclaw/pull/142997) — Thanks [@ylcn91](https://github.com/ylcn91), [@obviyus](https://github.com/obviyus), [@Conan-Scott](https://github.com/Conan-Scott). - Let embedded reports fill the content area [#143765](https://github.com/openclaw/openclaw/pull/143765) **Limits and compatibility** @@ -3214,7 +3214,7 @@ OpenClaw can automatically download a supported Crabbox tool when yours is missi **Documentation** - Correct Node requirements in cloud-worker setup guidance [#141871](https://github.com/openclaw/openclaw/pull/141871) -- Split Cloud Workers guidance into focused topic pages [#143158](https://github.com/openclaw/openclaw/pull/143158) — Thanks @vincentkoc. +- Split Cloud Workers guidance into focused topic pages [#143158](https://github.com/openclaw/openclaw/pull/143158) — Thanks [@vincentkoc](https://github.com/vincentkoc). **Improvements** @@ -3262,7 +3262,7 @@ Supported cloud computers can also keep their files, installed tools, and deskto **Bug fixes** -- Keep accepted messages queued through worker setup and file sync [#137576](https://github.com/openclaw/openclaw/pull/137576) — Thanks @jalehman. +- Keep accepted messages queued through worker setup and file sync [#137576](https://github.com/openclaw/openclaw/pull/137576) — Thanks [@jalehman](https://github.com/jalehman). - Retain cloud-worker renewals after temporary heartbeat failures [#142194](https://github.com/openclaw/openclaw/pull/142194) - Keep configured cloud machines through updates [#143858](https://github.com/openclaw/openclaw/pull/143858) - Continue unstarted turns through worker updates [#143910](https://github.com/openclaw/openclaw/pull/143910) @@ -3321,7 +3321,7 @@ Owners and administrators can [search Codex plugins](/plugins/codex-native-plugi **Improvements** -- Find, connect and inspect Codex plugins [#132158](https://github.com/openclaw/openclaw/pull/132158) — Thanks @stevenlee-oai. +- Find, connect and inspect Codex plugins [#132158](https://github.com/openclaw/openclaw/pull/132158) — Thanks [@stevenlee-oai](https://github.com/stevenlee-oai). @@ -3366,21 +3366,21 @@ Your Claw's instructions also allow it to use existing login details for tasks y **Improvements** -- Clarify the existing scope of Read Only permissions in the English interface [#141283](https://github.com/openclaw/openclaw/pull/141283). Thanks @north-echo and @obviyus. +- Clarify the existing scope of Read Only permissions in the English interface [#141283](https://github.com/openclaw/openclaw/pull/141283). Thanks [@north-echo](https://github.com/north-echo) and [@obviyus](https://github.com/obviyus). **Bug fixes** -- Show usage for invalid approval decisions and accept unusual IDs with valid decisions [#137877](https://github.com/openclaw/openclaw/pull/137877). Thanks @teddytennant and @obviyus. -- Remove blanket credential-use refusals and correct setup routing [#143238](https://github.com/openclaw/openclaw/pull/143238). Thanks @ejc3, @Stephane-fci, and @Sedrak-Hovhannisyan. SDK callers should replace the legacy string argument to `buildCredentialSafetyPrompt` with `{ controlToolsAvailable }`; legacy strings remain accepted through November 30, 2026. +- Show usage for invalid approval decisions and accept unusual IDs with valid decisions [#137877](https://github.com/openclaw/openclaw/pull/137877). Thanks [@teddytennant](https://github.com/teddytennant) and [@obviyus](https://github.com/obviyus). +- Remove blanket credential-use refusals and correct setup routing [#143238](https://github.com/openclaw/openclaw/pull/143238). Thanks [@ejc3](https://github.com/ejc3), [@Stephane-fci](https://github.com/Stephane-fci), and [@Sedrak-Hovhannisyan](https://github.com/Sedrak-Hovhannisyan). SDK callers should replace the legacy string argument to `buildCredentialSafetyPrompt` with `{ controlToolsAvailable }`; legacy strings remain accepted through November 30, 2026. - Keep approval-reply interpretation resources until cleanup ends [#143307](https://github.com/openclaw/openclaw/pull/143307). **Security and trust** -- Preserve disabled tools across plugin handoffs [#142093](https://github.com/openclaw/openclaw/pull/142093). Thanks @pgondhi987. For [plugin authors](/plugins/sdk-agent-harness), an empty runtime `toolsAllow` list means deny all, while an empty configuration `allow` list remains unrestricted. +- Preserve disabled tools across plugin handoffs [#142093](https://github.com/openclaw/openclaw/pull/142093). Thanks [@pgondhi987](https://github.com/pgondhi987). For [plugin authors](/plugins/sdk-agent-harness), an empty runtime `toolsAllow` list means deny all, while an empty configuration `allow` list remains unrestricted. **Documentation** -- Clarify full-mode command approval, strict inline-code review, and waiting behavior [#142368](https://github.com/openclaw/openclaw/pull/142368). Thanks @Glucksberg, @obviyus, @JKamgang, and @russellweiss. This documents existing policy; strict inline evaluation remains off by default. +- Clarify full-mode command approval, strict inline-code review, and waiting behavior [#142368](https://github.com/openclaw/openclaw/pull/142368). Thanks [@Glucksberg](https://github.com/Glucksberg), [@obviyus](https://github.com/obviyus), [@JKamgang](https://github.com/JKamgang), and [@russellweiss](https://github.com/russellweiss). This documents existing policy; strict inline evaluation remains off by default. @@ -3402,13 +3402,13 @@ More model connections can use [protected API keys](/gateway/secrets) without tu **Bug fixes** - Skip unused saved credentials for eligible password-only connections [#142290](https://github.com/openclaw/openclaw/pull/142290). This applies to signed clients using read-only local shared state, without an origin-specific credential scope or another credential type. -- Correct credential recovery notices [#142498](https://github.com/openclaw/openclaw/pull/142498). Thanks @obviyus. -- Restore WebSocket inference through managed secret egress, and synchronize bundled autoreview authentication handling and machine-readable status output [#143354](https://github.com/openclaw/openclaw/pull/143354). Thanks @fuller-stack-dev. The helper sync also removes the external credential-scanner dependency from autoreview. -- Recover legacy node tokens with `--no-scopes` [#143599](https://github.com/openclaw/openclaw/pull/143599). Thanks @obviyus and @matthewmoroz. The option cannot be combined with `--scope`; cleanup removes only the matching local legacy node credential. +- Correct credential recovery notices [#142498](https://github.com/openclaw/openclaw/pull/142498). Thanks [@obviyus](https://github.com/obviyus). +- Restore WebSocket inference through managed secret egress, and synchronize bundled autoreview authentication handling and machine-readable status output [#143354](https://github.com/openclaw/openclaw/pull/143354). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). The helper sync also removes the external credential-scanner dependency from autoreview. +- Recover legacy node tokens with `--no-scopes` [#143599](https://github.com/openclaw/openclaw/pull/143599). Thanks [@obviyus](https://github.com/obviyus) and [@matthewmoroz](https://github.com/matthewmoroz). The option cannot be combined with `--scope`; cleanup removes only the matching local legacy node credential. **Documentation** -- Split secrets guidance into focused runtime, SecretRef, store and egress, integration, and operations guides [#143520](https://github.com/openclaw/openclaw/pull/143520). Thanks @vincentkoc. +- Split secrets guidance into focused runtime, SecretRef, store and egress, integration, and operations guides [#143520](https://github.com/openclaw/openclaw/pull/143520). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3425,14 +3425,14 @@ If you use [IPv4-mapped network rules](/gateway/trusted-proxy-auth) for a revers **Security and trust** -- Enforce Slack HTTP webhook limits before processing, including a 1 MiB body limit and 30-second read deadline [c11ea063](https://github.com/openclaw/openclaw/commit/c11ea06355b094e29c9fe5fcfe309fdbaae6d17b). Thanks @drobison00. Contextual intent and review reference [#136508](https://github.com/openclaw/openclaw/pull/136508). -- Preserve IPv6 cloud metadata blocking with proxy compatibility enabled [#137684](https://github.com/openclaw/openclaw/pull/137684). Thanks @eleqtrizit. -- Reject malformed Tlon citations before authenticated lookups [#142041](https://github.com/openclaw/openclaw/pull/142041). Thanks @pgondhi987. -- Reject stale signed Feishu and Lark webhook callbacks outside the fixed one-hour clock window [#143484](https://github.com/openclaw/openclaw/pull/143484). Thanks @eleqtrizit. +- Enforce Slack HTTP webhook limits before processing, including a 1 MiB body limit and 30-second read deadline [c11ea063](https://github.com/openclaw/openclaw/commit/c11ea06355b094e29c9fe5fcfe309fdbaae6d17b). Thanks [@drobison00](https://github.com/drobison00). Contextual intent and review reference [#136508](https://github.com/openclaw/openclaw/pull/136508). +- Preserve IPv6 cloud metadata blocking with proxy compatibility enabled [#137684](https://github.com/openclaw/openclaw/pull/137684). Thanks [@eleqtrizit](https://github.com/eleqtrizit). +- Reject malformed Tlon citations before authenticated lookups [#142041](https://github.com/openclaw/openclaw/pull/142041). Thanks [@pgondhi987](https://github.com/pgondhi987). +- Reject stale signed Feishu and Lark webhook callbacks outside the fixed one-hour clock window [#143484](https://github.com/openclaw/openclaw/pull/143484). Thanks [@eleqtrizit](https://github.com/eleqtrizit). **Limits and compatibility** -- Honor IPv4-mapped network ranges in proxy and pairing rules [#137668](https://github.com/openclaw/openclaw/pull/137668). Thanks @elbourne12345 and @obviyus. Native IPv6 peers do not match these ranges, and catch-all proxy trust can still prevent correct client attribution. +- Honor IPv4-mapped network ranges in proxy and pairing rules [#137668](https://github.com/openclaw/openclaw/pull/137668). Thanks [@elbourne12345](https://github.com/elbourne12345) and [@obviyus](https://github.com/obviyus). Native IPv6 peers do not match these ranges, and catch-all proxy trust can still prevent correct client attribution. @@ -3449,16 +3449,16 @@ Changing a shared conversation to draft now also blocks new file requests from r **Security and trust** -- Prevent attachment reads from sibling sandboxes under workspace-only policy [#143521](https://github.com/openclaw/openclaw/pull/143521). Thanks @eleqtrizit, @yetval, and @yangxiansheng. +- Prevent attachment reads from sibling sandboxes under workspace-only policy [#143521](https://github.com/openclaw/openclaw/pull/143521). Thanks [@eleqtrizit](https://github.com/eleqtrizit), [@yetval](https://github.com/yetval), and [@yangxiansheng](https://github.com/yangxiansheng). **Bug fixes** -- Apply draft visibility to fresh artifact reads and downloads [#143873](https://github.com/openclaw/openclaw/pull/143873). Thanks @vincentkoc. +- Apply draft visibility to fresh artifact reads and downloads [#143873](https://github.com/openclaw/openclaw/pull/143873). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Split sandboxing guidance into focused backend, workspace, image, and setup pages [#143522](https://github.com/openclaw/openclaw/pull/143522). Thanks @vincentkoc. -- Document file-transfer approval migration and clarify SecretRef fields, the Moonshot model example, and plugin-reference navigation [#144029](https://github.com/openclaw/openclaw/pull/144029). Thanks @vincentkoc. +- Split sandboxing guidance into focused backend, workspace, image, and setup pages [#143522](https://github.com/openclaw/openclaw/pull/143522). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Document file-transfer approval migration and clarify SecretRef fields, the Moonshot model example, and plugin-reference navigation [#144029](https://github.com/openclaw/openclaw/pull/144029). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3473,7 +3473,7 @@ If you have read-only access, opening an MCP App in a separate view no longer gi **Security and trust** -- Preserve read-only permissions in standalone MCP Apps [#142661](https://github.com/openclaw/openclaw/pull/142661). Thanks @eleqtrizit. Client tool permission is captured when the launch ticket is issued; the ongoing check concerns the live App grant. +- Preserve read-only permissions in standalone MCP Apps [#142661](https://github.com/openclaw/openclaw/pull/142661). Thanks [@eleqtrizit](https://github.com/eleqtrizit). Client tool permission is captured when the launch ticket is issued; the ongoing check concerns the live App grant. - Block queued MCP tool execution after rejected uploads on the authenticated loopback connection [#143724](https://github.com/openclaw/openclaw/pull/143724). @@ -3491,13 +3491,13 @@ If you have read-only access, opening an MCP App in a separate view no longer gi **Bug fixes** -- Preserve shared history and retryable cleanup during agent deletion [#141731](https://github.com/openclaw/openclaw/pull/141731). Thanks @andrea-kingautomation. +- Preserve shared history and retryable cleanup during agent deletion [#141731](https://github.com/openclaw/openclaw/pull/141731). Thanks [@andrea-kingautomation](https://github.com/andrea-kingautomation). - Clean up deleted agents on external state volumes, with the Gateway's same-parent workspace-symlink behavior described above [#142130](https://github.com/openclaw/openclaw/pull/142130). **Security and trust** -- Keep recognized private update captures out of backups and support exports [#143799](https://github.com/openclaw/openclaw/pull/143799). Thanks @fuller-stack-dev. -- Exclude moved private capture directories when their marker stays intact, and refuse invalid markers [#143899](https://github.com/openclaw/openclaw/pull/143899). Thanks @fuller-stack-dev. +- Keep recognized private update captures out of backups and support exports [#143799](https://github.com/openclaw/openclaw/pull/143799). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). +- Exclude moved private capture directories when their marker stays intact, and refuse invalid markers [#143899](https://github.com/openclaw/openclaw/pull/143899). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). @@ -3512,7 +3512,7 @@ Running `openclaw security audit --fix` now keeps the WhatsApp group access list **Security and trust** -- Preserve WhatsApp group allowlists during security repair [#142589](https://github.com/openclaw/openclaw/pull/142589). Thanks @eleqtrizit. +- Preserve WhatsApp group allowlists during security repair [#142589](https://github.com/openclaw/openclaw/pull/142589). Thanks [@eleqtrizit](https://github.com/eleqtrizit). @@ -3527,15 +3527,15 @@ The [telemetry guide](/gateway/telemetry) now explains what an update check can **Bug fixes** -- Normalize public-provider names in optional statistics and their preview, while retaining the private-provider filter and existing consent settings [#141134](https://github.com/openclaw/openclaw/pull/141134). Thanks @vincentkoc. +- Normalize public-provider names in optional statistics and their preview, while retaining the private-provider filter and existing consent settings [#141134](https://github.com/openclaw/openclaw/pull/141134). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Organize Gateway security guidance into focused setup, trust, audit, and incident-response pages [#141162](https://github.com/openclaw/openclaw/pull/141162). Thanks @vincentkoc. -- Split policy command guidance into authoring, rules, scopes, checks, attestation, and findings guides [#142961](https://github.com/openclaw/openclaw/pull/142961). Thanks @vincentkoc. -- Explain approximate location in hosted update telemetry, preview limits, retention, and request controls [#143311](https://github.com/openclaw/openclaw/pull/143311). Thanks @vincentkoc. -- Organize the threat catalog into focused pages while retaining shared risk context [#143517](https://github.com/openclaw/openclaw/pull/143517). Thanks @vincentkoc. -- Clarify Anthropic setup-token login, secret scope, approvals upgrade guidance, shared rate limits, and proxy validation failures [#144030](https://github.com/openclaw/openclaw/pull/144030). Thanks @vincentkoc. +- Organize Gateway security guidance into focused setup, trust, audit, and incident-response pages [#141162](https://github.com/openclaw/openclaw/pull/141162). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split policy command guidance into authoring, rules, scopes, checks, attestation, and findings guides [#142961](https://github.com/openclaw/openclaw/pull/142961). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Explain approximate location in hosted update telemetry, preview limits, retention, and request controls [#143311](https://github.com/openclaw/openclaw/pull/143311). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize the threat catalog into focused pages while retaining shared risk context [#143517](https://github.com/openclaw/openclaw/pull/143517). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify Anthropic setup-token login, secret scope, approvals upgrade guidance, shared rate limits, and proxy validation failures [#144030](https://github.com/openclaw/openclaw/pull/144030). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3560,7 +3560,7 @@ When your Claw needs an answer, you can now choose an option or type a response **Improvements** -- Answer agent questions and Gateway secret requests in the terminal [#143273](https://github.com/openclaw/openclaw/pull/143273). Thanks @Sedrak-Hovhannisyan. +- Answer agent questions and Gateway secret requests in the terminal [#143273](https://github.com/openclaw/openclaw/pull/143273). Thanks [@Sedrak-Hovhannisyan](https://github.com/Sedrak-Hovhannisyan). @@ -3580,8 +3580,8 @@ Long addresses and other text now wrap in terminal chat without gaining extra sp **Bug fixes** -- Keep progress indicators within narrow terminals [#141401](https://github.com/openclaw/openclaw/pull/141401). Thanks @ooiuuii. -- Restore native CLI progress indicators [#142071](https://github.com/openclaw/openclaw/pull/142071). Thanks @Xuxyyy, @obviyus. +- Keep progress indicators within narrow terminals [#141401](https://github.com/openclaw/openclaw/pull/141401). Thanks [@ooiuuii](https://github.com/ooiuuii). +- Restore native CLI progress indicators [#142071](https://github.com/openclaw/openclaw/pull/142071). Thanks [@Xuxyyy](https://github.com/Xuxyyy), [@obviyus](https://github.com/obviyus). - Suppress approvals write announcements in JSON output [#142152](https://github.com/openclaw/openclaw/pull/142152). - Preserve blank lines in multiline terminal tables [#142196](https://github.com/openclaw/openclaw/pull/142196). - Preserve long words and email addresses in terminal chat [#142210](https://github.com/openclaw/openclaw/pull/142210). @@ -3600,15 +3600,15 @@ Command errors do a better job of telling you what to do next, such as supplying **Bug fixes** -- Show accepted run IDs in connection-loss and timeout hints [#111899](https://github.com/openclaw/openclaw/pull/111899). Thanks @xialonglee, @MrNozz, @obviyus. +- Show accepted run IDs in connection-loss and timeout hints [#111899](https://github.com/openclaw/openclaw/pull/111899). Thanks [@xialonglee](https://github.com/xialonglee), [@MrNozz](https://github.com/MrNozz), [@obviyus](https://github.com/obviyus). - Distinguish command errors from CLI startup failures [#142109](https://github.com/openclaw/openclaw/pull/142109). -- Show direct credential guidance for Gateway overrides [#142112](https://github.com/openclaw/openclaw/pull/142112). Thanks @DasX, @obviyus. +- Show direct credential guidance for Gateway overrides [#142112](https://github.com/openclaw/openclaw/pull/142112). Thanks [@DasX](https://github.com/DasX), [@obviyus](https://github.com/obviyus). - Show available Gateway details in full status reports [#142174](https://github.com/openclaw/openclaw/pull/142174). - Explain when CLI commands require an explicit agent [#143266](https://github.com/openclaw/openclaw/pull/143266). **Documentation** -- Document system command port and password options [#139071](https://github.com/openclaw/openclaw/pull/139071). Thanks @qingminglong, @obviyus. +- Document system command port and password options [#139071](https://github.com/openclaw/openclaw/pull/139071). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). @@ -3624,11 +3624,11 @@ Command errors do a better job of telling you what to do next, such as supplying **Bug fixes** - Fit compact Code Mode results and show literal JSON [#141417](https://github.com/openclaw/openclaw/pull/141417). -- Keep recursive Code Mode cells recoverable [#141960](https://github.com/openclaw/openclaw/pull/141960). Thanks @vincentkoc. +- Keep recursive Code Mode cells recoverable [#141960](https://github.com/openclaw/openclaw/pull/141960). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Organize Code Mode guidance by task [#142425](https://github.com/openclaw/openclaw/pull/142425). Thanks @vincentkoc. +- Organize Code Mode guidance by task [#142425](https://github.com/openclaw/openclaw/pull/142425). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3645,14 +3645,14 @@ Saved worktrees also restore changes that replaced a file with a folder, or a fo **Bug fixes** -- Validate worktree starting refs and preserve accepted commits [#135917](https://github.com/openclaw/openclaw/pull/135917). Thanks @RomneyDa. -- Accept surrounding spaces in managed-worktree IDs [#141373](https://github.com/openclaw/openclaw/pull/141373). Thanks @nocodet888-arch, @obviyus. +- Validate worktree starting refs and preserve accepted commits [#135917](https://github.com/openclaw/openclaw/pull/135917). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Accept surrounding spaces in managed-worktree IDs [#141373](https://github.com/openclaw/openclaw/pull/141373). Thanks [@nocodet888-arch](https://github.com/nocodet888-arch), [@obviyus](https://github.com/obviyus). - Keep worktree sessions available in repositories with many branches [#143205](https://github.com/openclaw/openclaw/pull/143205). - Preserve file and folder replacements in worktree recovery [#143324](https://github.com/openclaw/openclaw/pull/143324). **Documentation** -- Add worktree commands to the CLI index [#137422](https://github.com/openclaw/openclaw/pull/137422). Thanks @qingminglong, @obviyus. +- Add worktree commands to the CLI index [#137422](https://github.com/openclaw/openclaw/pull/137422). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). @@ -3673,17 +3673,17 @@ If you track model usage, completed `/btw` side answers can now include their re **Bug fixes** -- Preserve adjacent example framing in shortened instructions [#137974](https://github.com/openclaw/openclaw/pull/137974). Thanks @SunnyShu0925, @obviyus, @Hawk5150. +- Preserve adjacent example framing in shortened instructions [#137974](https://github.com/openclaw/openclaw/pull/137974). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus), [@Hawk5150](https://github.com/Hawk5150). - Report usage from direct /btw answers [#141620](https://github.com/openclaw/openclaw/pull/141620). -- Guide agents after rejected goal updates [#142808](https://github.com/openclaw/openclaw/pull/142808). Thanks @SunnyShu0925, @obviyus, @aminekhettat. -- Repair native Git attribution replay before its move to session instructions [#142869](https://github.com/openclaw/openclaw/pull/142869). Thanks @Marvinthebored, @obviyus. -- Retain Traditional Chinese rules in oversized instructions [#142915](https://github.com/openclaw/openclaw/pull/142915). Thanks @sunlit-deng, @obviyus, @igs-rogenlo. -- Keep eligible Git co-author guidance in conditional session instructions [#143198](https://github.com/openclaw/openclaw/pull/143198). Thanks @Marvinthebored. +- Guide agents after rejected goal updates [#142808](https://github.com/openclaw/openclaw/pull/142808). Thanks [@SunnyShu0925](https://github.com/SunnyShu0925), [@obviyus](https://github.com/obviyus), [@aminekhettat](https://github.com/aminekhettat). +- Repair native Git attribution replay before its move to session instructions [#142869](https://github.com/openclaw/openclaw/pull/142869). Thanks [@Marvinthebored](https://github.com/Marvinthebored), [@obviyus](https://github.com/obviyus). +- Retain Traditional Chinese rules in oversized instructions [#142915](https://github.com/openclaw/openclaw/pull/142915). Thanks [@sunlit-deng](https://github.com/sunlit-deng), [@obviyus](https://github.com/obviyus), [@igs-rogenlo](https://github.com/igs-rogenlo). +- Keep eligible Git co-author guidance in conditional session instructions [#143198](https://github.com/openclaw/openclaw/pull/143198). Thanks [@Marvinthebored](https://github.com/Marvinthebored). - Keep side-question resources available through cleanup [#143366](https://github.com/openclaw/openclaw/pull/143366). **Documentation** -- Organize the session reference by operator task [#143082](https://github.com/openclaw/openclaw/pull/143082). Thanks @vincentkoc. +- Organize the session reference by operator task [#143082](https://github.com/openclaw/openclaw/pull/143082). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3698,14 +3698,14 @@ If you track model usage, completed `/btw` side answers can now include their re **Bug fixes** -- Route restored subagent results to their saved requester [#141480](https://github.com/openclaw/openclaw/pull/141480). Thanks @aeoess, @obviyus, @laurenceputra, @toraiwa. -- Reject incomplete subagent continuation handoffs [#141901](https://github.com/openclaw/openclaw/pull/141901). Thanks @Takhoffman. -- Allow independent child runs to register from parent tools [#142652](https://github.com/openclaw/openclaw/pull/142652). Thanks @jalehman. -- Honor initial visible-subagent time limits [#142812](https://github.com/openclaw/openclaw/pull/142812). Thanks @fanyangCS, @obviyus. +- Route restored subagent results to their saved requester [#141480](https://github.com/openclaw/openclaw/pull/141480). Thanks [@aeoess](https://github.com/aeoess), [@obviyus](https://github.com/obviyus), [@laurenceputra](https://github.com/laurenceputra), [@toraiwa](https://github.com/toraiwa). +- Reject incomplete subagent continuation handoffs [#141901](https://github.com/openclaw/openclaw/pull/141901). Thanks [@Takhoffman](https://github.com/Takhoffman). +- Allow independent child runs to register from parent tools [#142652](https://github.com/openclaw/openclaw/pull/142652). Thanks [@jalehman](https://github.com/jalehman). +- Honor initial visible-subagent time limits [#142812](https://github.com/openclaw/openclaw/pull/142812). Thanks [@fanyangCS](https://github.com/fanyangCS), [@obviyus](https://github.com/obviyus). **Documentation** -- Split sub-agent guidance into focused linked pages [#142999](https://github.com/openclaw/openclaw/pull/142999). Thanks @vincentkoc. +- Split sub-agent guidance into focused linked pages [#142999](https://github.com/openclaw/openclaw/pull/142999). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3720,35 +3720,35 @@ The [FAQ](/help/faq) is organized around the question you are trying to answer, **Bug fixes** -- Fix the troubleshooting link in automated support replies [#143194](https://github.com/openclaw/openclaw/pull/143194). Thanks @vincentkoc. -- Keep example headings out of documentation maps [#143299](https://github.com/openclaw/openclaw/pull/143299). Thanks @qingminglong, @obviyus. -- Repair documentation links in errors and troubleshooting [#143497](https://github.com/openclaw/openclaw/pull/143497). Thanks @vincentkoc. +- Fix the troubleshooting link in automated support replies [#143194](https://github.com/openclaw/openclaw/pull/143194). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Keep example headings out of documentation maps [#143299](https://github.com/openclaw/openclaw/pull/143299). Thanks [@qingminglong](https://github.com/qingminglong), [@obviyus](https://github.com/obviyus). +- Repair documentation links in errors and troubleshooting [#143497](https://github.com/openclaw/openclaw/pull/143497). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** -- Correct Windows, ChromeOS, and durable-work maturity listings [#142066](https://github.com/openclaw/openclaw/pull/142066). Thanks @RomneyDa. -- Connect related plugin and provider guides [#143021](https://github.com/openclaw/openclaw/pull/143021). Thanks @vincentkoc. -- Add related-guide links and Chinese label translations [#143040](https://github.com/openclaw/openclaw/pull/143040). Thanks @vincentkoc. -- Organize the FAQ into focused topic pages [#143150](https://github.com/openclaw/openclaw/pull/143150). Thanks @vincentkoc. -- Improve links between guides and command references [#143157](https://github.com/openclaw/openclaw/pull/143157). Thanks @vincentkoc. -- Restore legacy documentation section links [#143586](https://github.com/openclaw/openclaw/pull/143586). Thanks @vincentkoc. -- Clarify setup guidance, pruning defaults, and Exa modes [#143770](https://github.com/openclaw/openclaw/pull/143770). Thanks @vincentkoc. -- Improve navigation between documentation guides [#143773](https://github.com/openclaw/openclaw/pull/143773). Thanks @vincentkoc. -- Reorganize CLI and tool documentation [#143775](https://github.com/openclaw/openclaw/pull/143775). Thanks @vincentkoc. -- Correct Gateway and provider setup documentation [#143796](https://github.com/openclaw/openclaw/pull/143796). Thanks @vincentkoc. -- Add bot-loop, transcripts, Copilot, Baseten, and incident-response guides to the sidebar [#143845](https://github.com/openclaw/openclaw/pull/143845). Thanks @vincentkoc. -- Improve Chinese documentation labels [#143853](https://github.com/openclaw/openclaw/pull/143853). Thanks @vincentkoc. -- Improve guide links and section navigation [#143855](https://github.com/openclaw/openclaw/pull/143855). Thanks @vincentkoc. -- Repair concept and troubleshooting links [#143923](https://github.com/openclaw/openclaw/pull/143923). Thanks @vincentkoc. -- Improve channel and plugin guide navigation [#143926](https://github.com/openclaw/openclaw/pull/143926). Thanks @vincentkoc. -- Simplify setup and concept documentation [#143931](https://github.com/openclaw/openclaw/pull/143931). Thanks @vincentkoc. -- Reorganize setup and operating guides [#143977](https://github.com/openclaw/openclaw/pull/143977). Thanks @vincentkoc. -- Clarify tool and channel reference prose [#143979](https://github.com/openclaw/openclaw/pull/143979). Thanks @vincentkoc. -- Improve documentation tabs and headings [#144021](https://github.com/openclaw/openclaw/pull/144021). Thanks @vincentkoc. -- Align Chinese release and contributor navigation [#144037](https://github.com/openclaw/openclaw/pull/144037). Thanks @RomneyDa, @vincentkoc. +- Correct Windows, ChromeOS, and durable-work maturity listings [#142066](https://github.com/openclaw/openclaw/pull/142066). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Connect related plugin and provider guides [#143021](https://github.com/openclaw/openclaw/pull/143021). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add related-guide links and Chinese label translations [#143040](https://github.com/openclaw/openclaw/pull/143040). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize the FAQ into focused topic pages [#143150](https://github.com/openclaw/openclaw/pull/143150). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve links between guides and command references [#143157](https://github.com/openclaw/openclaw/pull/143157). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Restore legacy documentation section links [#143586](https://github.com/openclaw/openclaw/pull/143586). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify setup guidance, pruning defaults, and Exa modes [#143770](https://github.com/openclaw/openclaw/pull/143770). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve navigation between documentation guides [#143773](https://github.com/openclaw/openclaw/pull/143773). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reorganize CLI and tool documentation [#143775](https://github.com/openclaw/openclaw/pull/143775). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Correct Gateway and provider setup documentation [#143796](https://github.com/openclaw/openclaw/pull/143796). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add bot-loop, transcripts, Copilot, Baseten, and incident-response guides to the sidebar [#143845](https://github.com/openclaw/openclaw/pull/143845). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve Chinese documentation labels [#143853](https://github.com/openclaw/openclaw/pull/143853). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve guide links and section navigation [#143855](https://github.com/openclaw/openclaw/pull/143855). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Repair concept and troubleshooting links [#143923](https://github.com/openclaw/openclaw/pull/143923). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve channel and plugin guide navigation [#143926](https://github.com/openclaw/openclaw/pull/143926). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Simplify setup and concept documentation [#143931](https://github.com/openclaw/openclaw/pull/143931). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reorganize setup and operating guides [#143977](https://github.com/openclaw/openclaw/pull/143977). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Clarify tool and channel reference prose [#143979](https://github.com/openclaw/openclaw/pull/143979). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve documentation tabs and headings [#144021](https://github.com/openclaw/openclaw/pull/144021). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Align Chinese release and contributor navigation [#144037](https://github.com/openclaw/openclaw/pull/144037). Thanks [@RomneyDa](https://github.com/RomneyDa), [@vincentkoc](https://github.com/vincentkoc). - Restore Windows maturity section links [#144067](https://github.com/openclaw/openclaw/pull/144067). -- Clarify agent setup and Gateway concepts [#144086](https://github.com/openclaw/openclaw/pull/144086). Thanks @vincentkoc. -- Improve documentation home links and wording [#144089](https://github.com/openclaw/openclaw/pull/144089). Thanks @vincentkoc. +- Clarify agent setup and Gateway concepts [#144086](https://github.com/openclaw/openclaw/pull/144086). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Improve documentation home links and wording [#144089](https://github.com/openclaw/openclaw/pull/144089). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -3771,9 +3771,9 @@ Your Claw can recover a missing final reply in more cases where the work finishe **Bug fixes** -- Clarify text-only recovery for missing final answers [#141705](https://github.com/openclaw/openclaw/pull/141705). Thanks @fabiolr, @adinballew, @RomneyDa. -- Recover final replies after interrupted provider streams [#142168](https://github.com/openclaw/openclaw/pull/142168). Thanks @liuwqgit, @obviyus, @wpu911. -- Recover final answers after earlier tool errors [#143598](https://github.com/openclaw/openclaw/pull/143598). Thanks @harjothkhara, @obviyus, @CK-XYZ. +- Clarify text-only recovery for missing final answers [#141705](https://github.com/openclaw/openclaw/pull/141705). Thanks [@fabiolr](https://github.com/fabiolr), [@adinballew](https://github.com/adinballew), [@RomneyDa](https://github.com/RomneyDa). +- Recover final replies after interrupted provider streams [#142168](https://github.com/openclaw/openclaw/pull/142168). Thanks [@liuwqgit](https://github.com/liuwqgit), [@obviyus](https://github.com/obviyus), [@wpu911](https://github.com/wpu911). +- Recover final answers after earlier tool errors [#143598](https://github.com/openclaw/openclaw/pull/143598). Thanks [@harjothkhara](https://github.com/harjothkhara), [@obviyus](https://github.com/obviyus), [@CK-XYZ](https://github.com/CK-XYZ). @@ -3790,12 +3790,12 @@ Old plugin messages outside the current conversation no longer stop its history **Bug fixes** -- Retain failed partial-answer context for the next model request [989abf6](https://github.com/openclaw/openclaw/commit/989abf68703796dedcdd91d0ab7116684de69b8d), with contextual provenance in [#125977](https://github.com/openclaw/openclaw/pull/125977). Thanks @ayaangazali. +- Retain failed partial-answer context for the next model request [989abf6](https://github.com/openclaw/openclaw/commit/989abf68703796dedcdd91d0ab7116684de69b8d), with contextual provenance in [#125977](https://github.com/openclaw/openclaw/pull/125977). Thanks [@ayaangazali](https://github.com/ayaangazali). - Keep inactive custom messages from breaking session history [#125413](https://github.com/openclaw/openclaw/pull/125413). -- Keep long histories readable during yield cleanup [#137381](https://github.com/openclaw/openclaw/pull/137381), related to [issue #109638](https://github.com/openclaw/openclaw/issues/109638). Thanks @jalehman, @samrrr, @VACInc. +- Keep long histories readable during yield cleanup [#137381](https://github.com/openclaw/openclaw/pull/137381), related to [issue #109638](https://github.com/openclaw/openclaw/issues/109638). Thanks [@jalehman](https://github.com/jalehman), [@samrrr](https://github.com/samrrr), [@VACInc](https://github.com/VACInc). - Avoid thinking-lookup delays for standalone session resets [#143281](https://github.com/openclaw/openclaw/pull/143281). - Keep current history readable after a reset [#143726](https://github.com/openclaw/openclaw/pull/143726). -- Reduce repeated reset work while keeping child tasks stopped [#143916](https://github.com/openclaw/openclaw/pull/143916). Thanks @obviyus, @aleps001, @zhangguiping-xydt. +- Reduce repeated reset work while keeping child tasks stopped [#143916](https://github.com/openclaw/openclaw/pull/143916). Thanks [@obviyus](https://github.com/obviyus), [@aleps001](https://github.com/aleps001), [@zhangguiping-xydt](https://github.com/zhangguiping-xydt). @@ -3812,11 +3812,11 @@ On Linux, affected SSH commands can finish instead of being stopped too early. C **Bug fixes** -- Explain filesystem causes of failed workspace writes [#116378](https://github.com/openclaw/openclaw/pull/116378), related to [issue #115920](https://github.com/openclaw/openclaw/issues/115920). Thanks @sloptop-the-terrible, @obviyus, @609NFT, @geekforlife. -- Clean up adopted Linux processes after command timeouts [#139548](https://github.com/openclaw/openclaw/pull/139548), a partial repair for [issue #97616](https://github.com/openclaw/openclaw/issues/97616). Cleanup is best effort and stops after 30 seconds. Thanks @srikolagani, @obviyus, @avp717, @Grynn, @islandpreneur007, @jinngimk-lang. -- Let service-managed SSH commands finish normally after closing inherited file handles [#141463](https://github.com/openclaw/openclaw/pull/141463). The demonstrated repair is on Linux. Thanks @jjjhenriksen, @obviyus, @manumadrigal09, @ouioui33, @avcarp, @kaspnov. +- Explain filesystem causes of failed workspace writes [#116378](https://github.com/openclaw/openclaw/pull/116378), related to [issue #115920](https://github.com/openclaw/openclaw/issues/115920). Thanks [@sloptop-the-terrible](https://github.com/sloptop-the-terrible), [@obviyus](https://github.com/obviyus), [@609NFT](https://github.com/609NFT), [@geekforlife](https://github.com/geekforlife). +- Clean up adopted Linux processes after command timeouts [#139548](https://github.com/openclaw/openclaw/pull/139548), a partial repair for [issue #97616](https://github.com/openclaw/openclaw/issues/97616). Cleanup is best effort and stops after 30 seconds. Thanks [@srikolagani](https://github.com/srikolagani), [@obviyus](https://github.com/obviyus), [@avp717](https://github.com/avp717), [@Grynn](https://github.com/Grynn), [@islandpreneur007](https://github.com/islandpreneur007), [@jinngimk-lang](https://github.com/jinngimk-lang). +- Let service-managed SSH commands finish normally after closing inherited file handles [#141463](https://github.com/openclaw/openclaw/pull/141463). The demonstrated repair is on Linux. Thanks [@jjjhenriksen](https://github.com/jjjhenriksen), [@obviyus](https://github.com/obviyus), [@manumadrigal09](https://github.com/manumadrigal09), [@ouioui33](https://github.com/ouioui33), [@avcarp](https://github.com/avcarp), [@kaspnov](https://github.com/kaspnov). - Avoid false cleanup failures after successful POSIX commands [#143240](https://github.com/openclaw/openclaw/pull/143240). -- Preserve tool arguments beside empty wrappers [#143729](https://github.com/openclaw/openclaw/pull/143729). Thanks @xydigitLybnnnn, @obviyus, @nkdmike. +- Preserve tool arguments beside empty wrappers [#143729](https://github.com/openclaw/openclaw/pull/143729). Thanks [@xydigitLybnnnn](https://github.com/xydigitLybnnnn), [@obviyus](https://github.com/obviyus), [@nkdmike](https://github.com/nkdmike). @@ -3841,12 +3841,12 @@ Exported conversations keep file-read results that were incorrectly removed, inc **Bug fixes** -- Include fallback tool activity in trajectory exports [#114662](https://github.com/openclaw/openclaw/pull/114662), related to [issue #114602](https://github.com/openclaw/openclaw/issues/114602). Thanks @synthalorian, @obviyus, @jackatagenticforce. +- Include fallback tool activity in trajectory exports [#114662](https://github.com/openclaw/openclaw/pull/114662), related to [issue #114602](https://github.com/openclaw/openclaw/issues/114602). Thanks [@synthalorian](https://github.com/synthalorian), [@obviyus](https://github.com/obviyus), [@jackatagenticforce](https://github.com/jackatagenticforce). - Preserve SQLite fatal diagnostics from worker threads [#143039](https://github.com/openclaw/openclaw/pull/143039). -- Preserve partial debug captures and report shutdown storage failures [#143107](https://github.com/openclaw/openclaw/pull/143107). Thanks @vincentkoc. +- Preserve partial debug captures and report shutdown storage failures [#143107](https://github.com/openclaw/openclaw/pull/143107). Thanks [@vincentkoc](https://github.com/vincentkoc). - Preserve the initiating database error during cleanup [#143574](https://github.com/openclaw/openclaw/pull/143574). -- Wait for brief locks during state reads [#143908](https://github.com/openclaw/openclaw/pull/143908). Persistent locks can still fail. Thanks @pash-openai. -- Keep paginated file reads in session exports [#143930](https://github.com/openclaw/openclaw/pull/143930). Thanks @linhongyu510, @obviyus, @cp1369. +- Wait for brief locks during state reads [#143908](https://github.com/openclaw/openclaw/pull/143908). Persistent locks can still fail. Thanks [@pash-openai](https://github.com/pash-openai). +- Keep paginated file reads in session exports [#143930](https://github.com/openclaw/openclaw/pull/143930). Thanks [@linhongyu510](https://github.com/linhongyu510), [@obviyus](https://github.com/obviyus), [@cp1369](https://github.com/cp1369). @@ -3874,10 +3874,10 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Remove the fixed orphan-prompt strategy wrapper [746e53f2](https://github.com/openclaw/openclaw/commit/746e53f21fe9fa671030343545daf65588816dd0) - Simplify shared tool-summary formatting [#136181](https://github.com/openclaw/openclaw/pull/136181) - Remove the unused internal health-check execution path [#138211](https://github.com/openclaw/openclaw/pull/138211) -- Remove unused Doctor health-check arguments [#141475](https://github.com/openclaw/openclaw/pull/141475). Thanks @vincentkoc. -- Return cron activation state from its existing transaction [#141676](https://github.com/openclaw/openclaw/pull/141676). Thanks @RomneyDa. +- Remove unused Doctor health-check arguments [#141475](https://github.com/openclaw/openclaw/pull/141475). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Return cron activation state from its existing transaction [#141676](https://github.com/openclaw/openclaw/pull/141676). Thanks [@RomneyDa](https://github.com/RomneyDa). - Skip unused distance calculations for trailing wake names [#141683](https://github.com/openclaw/openclaw/pull/141683) -- Type incoming Reef versions as unverified input [#141687](https://github.com/openclaw/openclaw/pull/141687). Thanks @RomneyDa. +- Type incoming Reef versions as unverified input [#141687](https://github.com/openclaw/openclaw/pull/141687). Thanks [@RomneyDa](https://github.com/RomneyDa). - Separate cron script-result parsing from execution [#141688](https://github.com/openclaw/openclaw/pull/141688) - Separate transcript summary persistence from live capture [#141695](https://github.com/openclaw/openclaw/pull/141695) - Separate prepared-runtime snapshot construction [#141711](https://github.com/openclaw/openclaw/pull/141711) @@ -3888,37 +3888,37 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Unify Profile identity-save handling [#141730](https://github.com/openclaw/openclaw/pull/141730) - Share Slack reply preparation without changing delivery order [#141733](https://github.com/openclaw/openclaw/pull/141733) - Share the CLI local-onboarding decision [#141735](https://github.com/openclaw/openclaw/pull/141735) -- Centralize native approval adapter type handling [#141737](https://github.com/openclaw/openclaw/pull/141737). Thanks @RomneyDa. -- Centralize native WebKit bridge message types [#141764](https://github.com/openclaw/openclaw/pull/141764). Thanks @RomneyDa. -- Share the transcript idempotency-key reader [#141772](https://github.com/openclaw/openclaw/pull/141772). Thanks @vincentkoc. -- Remove unused UI text-formatting options [#141783](https://github.com/openclaw/openclaw/pull/141783). Thanks @vincentkoc. -- Reuse Doctor's shared legacy source-identity comparison [#141784](https://github.com/openclaw/openclaw/pull/141784). Thanks @vincentkoc. +- Centralize native approval adapter type handling [#141737](https://github.com/openclaw/openclaw/pull/141737). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Centralize native WebKit bridge message types [#141764](https://github.com/openclaw/openclaw/pull/141764). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share the transcript idempotency-key reader [#141772](https://github.com/openclaw/openclaw/pull/141772). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Remove unused UI text-formatting options [#141783](https://github.com/openclaw/openclaw/pull/141783). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse Doctor's shared legacy source-identity comparison [#141784](https://github.com/openclaw/openclaw/pull/141784). Thanks [@vincentkoc](https://github.com/vincentkoc). - Separate model-catalog source preparation [#141810](https://github.com/openclaw/openclaw/pull/141810) -- Share model-catalog presentation across local readers [#141815](https://github.com/openclaw/openclaw/pull/141815). Thanks @obviyus. +- Share model-catalog presentation across local readers [#141815](https://github.com/openclaw/openclaw/pull/141815). Thanks [@obviyus](https://github.com/obviyus). - Move cached turn replay into the dedupe module [#141824](https://github.com/openclaw/openclaw/pull/141824) -- Reuse Doctor's path-containment helper [#141828](https://github.com/openclaw/openclaw/pull/141828). Thanks @vincentkoc. +- Reuse Doctor's path-containment helper [#141828](https://github.com/openclaw/openclaw/pull/141828). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify built-in memory runtime delegation [#141847](https://github.com/openclaw/openclaw/pull/141847) -- Centralize memory dreaming types in the host SDK [#141873](https://github.com/openclaw/openclaw/pull/141873). Thanks @RomneyDa. -- Share ClawHub skill response types through the protocol [#141874](https://github.com/openclaw/openclaw/pull/141874). Thanks @RomneyDa. -- Derive conversation capability types from their resolver [#141878](https://github.com/openclaw/openclaw/pull/141878). Thanks @RomneyDa. -- Derive inbound hook context types from their producer [#141880](https://github.com/openclaw/openclaw/pull/141880). Thanks @RomneyDa. +- Centralize memory dreaming types in the host SDK [#141873](https://github.com/openclaw/openclaw/pull/141873). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share ClawHub skill response types through the protocol [#141874](https://github.com/openclaw/openclaw/pull/141874). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive conversation capability types from their resolver [#141878](https://github.com/openclaw/openclaw/pull/141878). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive inbound hook context types from their producer [#141880](https://github.com/openclaw/openclaw/pull/141880). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share provider request secret-field definitions [#141882](https://github.com/openclaw/openclaw/pull/141882) - Reuse channel setup configuration writers [#141929](https://github.com/openclaw/openclaw/pull/141929) -- Simplify Markdown span ordering bookkeeping [#141945](https://github.com/openclaw/openclaw/pull/141945). Thanks @vincentkoc. +- Simplify Markdown span ordering bookkeeping [#141945](https://github.com/openclaw/openclaw/pull/141945). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unreachable TUI streaming state [#141999](https://github.com/openclaw/openclaw/pull/141999) - Avoid duplicate validation when listing sessions [#142005](https://github.com/openclaw/openclaw/pull/142005) - Preserve plugin types during search setup [#142006](https://github.com/openclaw/openclaw/pull/142006) -- Derive UI session types from Gateway definitions [#142025](https://github.com/openclaw/openclaw/pull/142025). Thanks @RomneyDa. -- Derive Matrix configuration types from schemas [#142026](https://github.com/openclaw/openclaw/pull/142026). Thanks @RomneyDa. -- Derive Nextcloud Talk types from schemas [#142027](https://github.com/openclaw/openclaw/pull/142027). Thanks @RomneyDa. -- Derive Mattermost types from schemas [#142028](https://github.com/openclaw/openclaw/pull/142028). Thanks @RomneyDa. +- Derive UI session types from Gateway definitions [#142025](https://github.com/openclaw/openclaw/pull/142025). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive Matrix configuration types from schemas [#142026](https://github.com/openclaw/openclaw/pull/142026). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive Nextcloud Talk types from schemas [#142027](https://github.com/openclaw/openclaw/pull/142027). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive Mattermost types from schemas [#142028](https://github.com/openclaw/openclaw/pull/142028). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share activation configuration merging [#142045](https://github.com/openclaw/openclaw/pull/142045) - Remove an ineffective source-loader option [#142050](https://github.com/openclaw/openclaw/pull/142050) - Consolidate plugin install metadata classification [#142075](https://github.com/openclaw/openclaw/pull/142075) -- Remove unused plugin-loader cache bookkeeping [#142078](https://github.com/openclaw/openclaw/pull/142078). Thanks @vincentkoc. +- Remove unused plugin-loader cache bookkeeping [#142078](https://github.com/openclaw/openclaw/pull/142078). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unused board notice injection inputs [#142101](https://github.com/openclaw/openclaw/pull/142101) - Remove unused plugin install option forwarding [#142121](https://github.com/openclaw/openclaw/pull/142121) -- Remove unused configuration path from lock handles [#142127](https://github.com/openclaw/openclaw/pull/142127). Thanks @vincentkoc. +- Remove unused configuration path from lock handles [#142127](https://github.com/openclaw/openclaw/pull/142127). Thanks [@vincentkoc](https://github.com/vincentkoc). - Avoid recounting plugin state after quota eviction [#142148](https://github.com/openclaw/openclaw/pull/142148) - Share assignment detection across redaction outputs [#142183](https://github.com/openclaw/openclaw/pull/142183) - Remove redundant duplicate tracking from buffered replies [#142205](https://github.com/openclaw/openclaw/pull/142205) @@ -3942,10 +3942,10 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Reuse shared configuration scans in plugin planning [#142396](https://github.com/openclaw/openclaw/pull/142396) - Consolidate equivalent Nodes dispatch cases [#142402](https://github.com/openclaw/openclaw/pull/142402) - Skip unused Telegram draft prefix preparation [#142404](https://github.com/openclaw/openclaw/pull/142404) -- Derive Google Meet types from resolved settings [#142407](https://github.com/openclaw/openclaw/pull/142407). Thanks @RomneyDa. -- Derive IRC configuration types from its schema [#142408](https://github.com/openclaw/openclaw/pull/142408). Thanks @RomneyDa. -- Share plugin manifest and registry types [#142409](https://github.com/openclaw/openclaw/pull/142409). Thanks @RomneyDa. -- Reuse Gateway types for Workshop storage [#142410](https://github.com/openclaw/openclaw/pull/142410). Thanks @RomneyDa. +- Derive Google Meet types from resolved settings [#142407](https://github.com/openclaw/openclaw/pull/142407). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive IRC configuration types from its schema [#142408](https://github.com/openclaw/openclaw/pull/142408). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share plugin manifest and registry types [#142409](https://github.com/openclaw/openclaw/pull/142409). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Reuse Gateway types for Workshop storage [#142410](https://github.com/openclaw/openclaw/pull/142410). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share bounded web response-byte reading [#142413](https://github.com/openclaw/openclaw/pull/142413) - Avoid redundant chat code-block preparation [#142444](https://github.com/openclaw/openclaw/pull/142444) - Reduce temporary Discord formatting allocations [#142447](https://github.com/openclaw/openclaw/pull/142447) @@ -3954,26 +3954,26 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Simplify extra bootstrap file loading [#142469](https://github.com/openclaw/openclaw/pull/142469) - Reduce temporary Swarm roster collections [#142488](https://github.com/openclaw/openclaw/pull/142488) - Avoid unused display preparation during chat export [#142491](https://github.com/openclaw/openclaw/pull/142491) -- Remove unused setup callback authentication argument [#142494](https://github.com/openclaw/openclaw/pull/142494). Thanks @vincentkoc. +- Remove unused setup callback authentication argument [#142494](https://github.com/openclaw/openclaw/pull/142494). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unreachable Matrix forced-reset retry [#142495](https://github.com/openclaw/openclaw/pull/142495) -- Share diagnostic listener registration [#142499](https://github.com/openclaw/openclaw/pull/142499). Thanks @vincentkoc. +- Share diagnostic listener registration [#142499](https://github.com/openclaw/openclaw/pull/142499). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate Gateway restart health finalization [#142513](https://github.com/openclaw/openclaw/pull/142513) - Reuse prepared LINE table cells [#142542](https://github.com/openclaw/openclaw/pull/142542) - Reuse message preparation during chat renders [#142570](https://github.com/openclaw/openclaw/pull/142570) -- Share startup plugin membership checks [#142587](https://github.com/openclaw/openclaw/pull/142587). Thanks @vincentkoc. +- Share startup plugin membership checks [#142587](https://github.com/openclaw/openclaw/pull/142587). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify pending tool-result bookkeeping [#142599](https://github.com/openclaw/openclaw/pull/142599) - Centralize Apple Gateway error presentation overrides [#142601](https://github.com/openclaw/openclaw/pull/142601) -- Share Go and UV skill package validation [#142625](https://github.com/openclaw/openclaw/pull/142625). Thanks @vincentkoc. -- Extract Codex feature-list protocol types [#142648](https://github.com/openclaw/openclaw/pull/142648). Thanks @RomneyDa. +- Share Go and UV skill package validation [#142625](https://github.com/openclaw/openclaw/pull/142625). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Extract Codex feature-list protocol types [#142648](https://github.com/openclaw/openclaw/pull/142648). Thanks [@RomneyDa](https://github.com/RomneyDa). - Simplify internal status-report formatting [#142707](https://github.com/openclaw/openclaw/pull/142707) -- Share route restoration across Control UI pages [#142709](https://github.com/openclaw/openclaw/pull/142709). Thanks @vincentkoc. +- Share route restoration across Control UI pages [#142709](https://github.com/openclaw/openclaw/pull/142709). Thanks [@vincentkoc](https://github.com/vincentkoc). - Isolate model-policy integer parsing [#142804](https://github.com/openclaw/openclaw/pull/142804) - Reuse prepared provider ownership metadata [#142818](https://github.com/openclaw/openclaw/pull/142818) - Simplify outbound reply mirroring [#142819](https://github.com/openclaw/openclaw/pull/142819) - Simplify interactive SDK exports [#142824](https://github.com/openclaw/openclaw/pull/142824) - Reduce media-reference formatting overhead [#142836](https://github.com/openclaw/openclaw/pull/142836) - Render HTTP history without intermediate entry copies [#142856](https://github.com/openclaw/openclaw/pull/142856) -- Remove duplicate configuration tag preparation [#142864](https://github.com/openclaw/openclaw/pull/142864). Thanks @vincentkoc. +- Remove duplicate configuration tag preparation [#142864](https://github.com/openclaw/openclaw/pull/142864). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse plugin metadata during contribution discovery [#142975](https://github.com/openclaw/openclaw/pull/142975) - Remove unused plugin metadata discovery fallback [#143020](https://github.com/openclaw/openclaw/pull/143020) - Reuse prepared paths in Claude plugin manifest loading [#143027](https://github.com/openclaw/openclaw/pull/143027) @@ -3987,7 +3987,7 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Reuse shared dreaming statistics types [#143368](https://github.com/openclaw/openclaw/pull/143368) - Share Pi and Claude transcript range reading [#143374](https://github.com/openclaw/openclaw/pull/143374) - Share paired-node request assembly [#143380](https://github.com/openclaw/openclaw/pull/143380) -- Remove unused chat-history configuration argument [#143395](https://github.com/openclaw/openclaw/pull/143395). Thanks @vincentkoc. +- Remove unused chat-history configuration argument [#143395](https://github.com/openclaw/openclaw/pull/143395). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove duplicate Automations editor state [#143405](https://github.com/openclaw/openclaw/pull/143405) - Unify missing-command ownership resolution [#143411](https://github.com/openclaw/openclaw/pull/143411) - Share wizard prompt argument construction [#143430](https://github.com/openclaw/openclaw/pull/143430) @@ -3998,10 +3998,10 @@ The inbound-hook mapper compatibility concern is addressed by the separately doc - Avoid an extra Code Mode diagnostic array copy [#143482](https://github.com/openclaw/openclaw/pull/143482) - Share Doctor session migration validation [#143507](https://github.com/openclaw/openclaw/pull/143507) - Reuse shared channel configuration writers [#143547](https://github.com/openclaw/openclaw/pull/143547) -- Derive sandbox settings types from validation schemas [#143551](https://github.com/openclaw/openclaw/pull/143551). Thanks @RomneyDa. -- Derive installation record types from validation schemas [#143552](https://github.com/openclaw/openclaw/pull/143552). Thanks @RomneyDa. -- Derive Codex configuration types from existing schemas [#143553](https://github.com/openclaw/openclaw/pull/143553). Thanks @RomneyDa. -- Share agent configuration schemas and types [#143554](https://github.com/openclaw/openclaw/pull/143554). Thanks @RomneyDa. +- Derive sandbox settings types from validation schemas [#143551](https://github.com/openclaw/openclaw/pull/143551). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive installation record types from validation schemas [#143552](https://github.com/openclaw/openclaw/pull/143552). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive Codex configuration types from existing schemas [#143553](https://github.com/openclaw/openclaw/pull/143553). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share agent configuration schemas and types [#143554](https://github.com/openclaw/openclaw/pull/143554). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share Memory Wiki report and index rendering [#143568](https://github.com/openclaw/openclaw/pull/143568) - Centralize Policy document validation [#143600](https://github.com/openclaw/openclaw/pull/143600) - Share Comfy workflow polling [#143653](https://github.com/openclaw/openclaw/pull/143653) @@ -4055,8 +4055,8 @@ Reported timings cover different local workloads and cannot be added into a rele **Improvements** - Reuse the deferred-promise helper in Gateway tests [2a4d6a10](https://github.com/openclaw/openclaw/commit/2a4d6a10ae6013ece39ae581762daf13b84ff1c9) -- Keep interactive preview actions consistent with fixture state [#138350](https://github.com/openclaw/openclaw/pull/138350). Thanks @vyctorbrzezowski. -- Disable unrelated catalog refreshes in isolated tests [#141266](https://github.com/openclaw/openclaw/pull/141266). Thanks @vincentkoc. +- Keep interactive preview actions consistent with fixture state [#138350](https://github.com/openclaw/openclaw/pull/138350). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Disable unrelated catalog refreshes in isolated tests [#141266](https://github.com/openclaw/openclaw/pull/141266). Thanks [@vincentkoc](https://github.com/vincentkoc). - Test the existing Parallels log-tail boundary [#141470](https://github.com/openclaw/openclaw/pull/141470) - Reuse provider registries in catalog-auth tests [#141682](https://github.com/openclaw/openclaw/pull/141682) - Avoid redundant waits in Kova authentication tests [#141693](https://github.com/openclaw/openclaw/pull/141693) @@ -4069,17 +4069,17 @@ Reported timings cover different local workloads and cannot be added into a rele - Make web-search validator fixtures independent of client defaults [#141792](https://github.com/openclaw/openclaw/pull/141792) - Simplify Discord recording test branches [#141804](https://github.com/openclaw/openclaw/pull/141804) - Keep the image-probe reply matcher private [#141823](https://github.com/openclaw/openclaw/pull/141823) -- Compact Code Mode source-validation test matrices [#141831](https://github.com/openclaw/openclaw/pull/141831). Thanks @RomneyDa. -- Compact CLI argument test matrices [#141832](https://github.com/openclaw/openclaw/pull/141832). Thanks @RomneyDa. -- Compact reasoning-tag test fixtures [#141833](https://github.com/openclaw/openclaw/pull/141833). Thanks @RomneyDa. -- Compact Control UI routing test fixtures [#141834](https://github.com/openclaw/openclaw/pull/141834). Thanks @RomneyDa. +- Compact Code Mode source-validation test matrices [#141831](https://github.com/openclaw/openclaw/pull/141831). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact CLI argument test matrices [#141832](https://github.com/openclaw/openclaw/pull/141832). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact reasoning-tag test fixtures [#141833](https://github.com/openclaw/openclaw/pull/141833). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact Control UI routing test fixtures [#141834](https://github.com/openclaw/openclaw/pull/141834). Thanks [@RomneyDa](https://github.com/RomneyDa). - Remove an unused Comfy test fixture option [#141844](https://github.com/openclaw/openclaw/pull/141844) -- Consolidate model-command policy tests [#141861](https://github.com/openclaw/openclaw/pull/141861). Thanks @RomneyDa. +- Consolidate model-command policy tests [#141861](https://github.com/openclaw/openclaw/pull/141861). Thanks [@RomneyDa](https://github.com/RomneyDa). - Test the HTML comparison script's actual response limit [#141877](https://github.com/openclaw/openclaw/pull/141877) -- Simplify Crabbox shell-detection test tables [#141888](https://github.com/openclaw/openclaw/pull/141888). Thanks @RomneyDa. -- Simplify Doctor plugin repair test tables [#141889](https://github.com/openclaw/openclaw/pull/141889). Thanks @RomneyDa. -- Simplify Active Memory policy test tables [#141890](https://github.com/openclaw/openclaw/pull/141890). Thanks @RomneyDa. -- Simplify message account-isolation test tables [#141891](https://github.com/openclaw/openclaw/pull/141891). Thanks @RomneyDa. +- Simplify Crabbox shell-detection test tables [#141888](https://github.com/openclaw/openclaw/pull/141888). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify Doctor plugin repair test tables [#141889](https://github.com/openclaw/openclaw/pull/141889). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify Active Memory policy test tables [#141890](https://github.com/openclaw/openclaw/pull/141890). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify message account-isolation test tables [#141891](https://github.com/openclaw/openclaw/pull/141891). Thanks [@RomneyDa](https://github.com/RomneyDa). - Consolidate Vitest project-loading checks [#141908](https://github.com/openclaw/openclaw/pull/141908) - Share fresh logger fixtures across core tests [#141911](https://github.com/openclaw/openclaw/pull/141911) - Remove implementation-specific configuration assertions [#141919](https://github.com/openclaw/openclaw/pull/141919) @@ -4087,18 +4087,18 @@ Reported timings cover different local workloads and cannot be added into a rele - Verify playback cache limits through writes [#141944](https://github.com/openclaw/openclaw/pull/141944) - Use runtime context in plugin compatibility tests [#141989](https://github.com/openclaw/openclaw/pull/141989) - Use controlled timing in fatal Git-outcome tests [#142009](https://github.com/openclaw/openclaw/pull/142009) -- Compact channel account-helper test tables [#142029](https://github.com/openclaw/openclaw/pull/142029). Thanks @RomneyDa. -- Compact execution-wrapper test fixtures [#142030](https://github.com/openclaw/openclaw/pull/142030). Thanks @RomneyDa. -- Compact secrets runtime test matrices [#142031](https://github.com/openclaw/openclaw/pull/142031). Thanks @RomneyDa. -- Simplify npm registry test tables [#142032](https://github.com/openclaw/openclaw/pull/142032). Thanks @RomneyDa. +- Compact channel account-helper test tables [#142029](https://github.com/openclaw/openclaw/pull/142029). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact execution-wrapper test fixtures [#142030](https://github.com/openclaw/openclaw/pull/142030). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact secrets runtime test matrices [#142031](https://github.com/openclaw/openclaw/pull/142031). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify npm registry test tables [#142032](https://github.com/openclaw/openclaw/pull/142032). Thanks [@RomneyDa](https://github.com/RomneyDa). - Test scroll reset within the existing preview [#142044](https://github.com/openclaw/openclaw/pull/142044) - Reuse text tool-result fixtures in agent tests [#142051](https://github.com/openclaw/openclaw/pull/142051) -- Add an Android branch-switching test scene [#142057](https://github.com/openclaw/openclaw/pull/142057). Thanks @vincentkoc. +- Add an Android branch-switching test scene [#142057](https://github.com/openclaw/openclaw/pull/142057). Thanks [@vincentkoc](https://github.com/vincentkoc). - Test watcher shutdown with real default intervals [#142079](https://github.com/openclaw/openclaw/pull/142079) -- Simplify inline-command test tables [#142081](https://github.com/openclaw/openclaw/pull/142081). Thanks @RomneyDa. -- Compact Gateway network-policy tests [#142082](https://github.com/openclaw/openclaw/pull/142082). Thanks @RomneyDa. -- Compact CLI configuration-guard tests [#142083](https://github.com/openclaw/openclaw/pull/142083). Thanks @RomneyDa. -- Compact WhatsApp formatting tests [#142084](https://github.com/openclaw/openclaw/pull/142084). Thanks @RomneyDa. +- Simplify inline-command test tables [#142081](https://github.com/openclaw/openclaw/pull/142081). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact Gateway network-policy tests [#142082](https://github.com/openclaw/openclaw/pull/142082). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact CLI configuration-guard tests [#142083](https://github.com/openclaw/openclaw/pull/142083). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact WhatsApp formatting tests [#142084](https://github.com/openclaw/openclaw/pull/142084). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share timestamped tool-result fixtures [#142094](https://github.com/openclaw/openclaw/pull/142094) - Align Mac script tests with system Bash [#142096](https://github.com/openclaw/openclaw/pull/142096) - Reuse deferred promises in chat lifecycle tests [#142098](https://github.com/openclaw/openclaw/pull/142098) @@ -4117,20 +4117,20 @@ Reported timings cover different local workloads and cannot be added into a rele - Reduce the Telegram Markdown chunking test fixture [#142365](https://github.com/openclaw/openclaw/pull/142365) - Consolidate duplicate group-policy resolver tests [#142366](https://github.com/openclaw/openclaw/pull/142366) - Share cloud-agent fixtures across New Session tests [#142376](https://github.com/openclaw/openclaw/pull/142376) -- Report successful installation in Docker test logs [#142405](https://github.com/openclaw/openclaw/pull/142405). Thanks @vincentkoc. +- Report successful installation in Docker test logs [#142405](https://github.com/openclaw/openclaw/pull/142405). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unused Telegram edit-test branches [#142411](https://github.com/openclaw/openclaw/pull/142411) -- Share plugin installation test path checks [#142448](https://github.com/openclaw/openclaw/pull/142448). Thanks @vincentkoc. +- Share plugin installation test path checks [#142448](https://github.com/openclaw/openclaw/pull/142448). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove an unreachable process-poll test branch [#142466](https://github.com/openclaw/openclaw/pull/142466) - Consolidate memory-flush test coverage [#142478](https://github.com/openclaw/openclaw/pull/142478) - Reuse compiled CLI code in message-cleanup tests [#142503](https://github.com/openclaw/openclaw/pull/142503) - Remove unused Doctor configuration test mocks [#142507](https://github.com/openclaw/openclaw/pull/142507) -- Settle composer animations before alignment tests [#142509](https://github.com/openclaw/openclaw/pull/142509). Thanks @RomneyDa. +- Settle composer animations before alignment tests [#142509](https://github.com/openclaw/openclaw/pull/142509). Thanks [@RomneyDa](https://github.com/RomneyDa). - Remove redundant Matrix QA scenario forwarding [#142546](https://github.com/openclaw/openclaw/pull/142546) - Remove real timeout waits from Telegram observation tests [#142602](https://github.com/openclaw/openclaw/pull/142602) - Remove unused terminal mocks from skills tests [#142604](https://github.com/openclaw/openclaw/pull/142604) - Remove duplicate deep-transcript import stress coverage [#142614](https://github.com/openclaw/openclaw/pull/142614) - Share changelog fixtures in release-note verifier tests [#142659](https://github.com/openclaw/openclaw/pull/142659) -- Clarify generated markers in live file-read tests [#142685](https://github.com/openclaw/openclaw/pull/142685). Thanks @RomneyDa. +- Clarify generated markers in live file-read tests [#142685](https://github.com/openclaw/openclaw/pull/142685). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share Discord action expectations across tests [#142690](https://github.com/openclaw/openclaw/pull/142690) - Share Codex lifecycle test fixtures [#142732](https://github.com/openclaw/openclaw/pull/142732) - Remove idle delay from cleanup regression testing [#142733](https://github.com/openclaw/openclaw/pull/142733) @@ -4145,62 +4145,62 @@ Reported timings cover different local workloads and cannot be added into a rele - Simplify session tests and expose early rollback setup failures [#142833](https://github.com/openclaw/openclaw/pull/142833) - Share reply-dispatch test expectations [#142845](https://github.com/openclaw/openclaw/pull/142845) - Simplify worker lifecycle test gates [#142865](https://github.com/openclaw/openclaw/pull/142865) -- Remove real deadline waits from Swift polling tests [#142882](https://github.com/openclaw/openclaw/pull/142882). Thanks @vincentkoc. -- Remove real-time waits from Mermaid timeout tests [#142886](https://github.com/openclaw/openclaw/pull/142886). Thanks @vincentkoc. +- Remove real deadline waits from Swift polling tests [#142882](https://github.com/openclaw/openclaw/pull/142882). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Remove real-time waits from Mermaid timeout tests [#142886](https://github.com/openclaw/openclaw/pull/142886). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse deferred fixtures in cron lifecycle tests [#142887](https://github.com/openclaw/openclaw/pull/142887) -- Remove duplicate OpenCode Go metadata testing [#142894](https://github.com/openclaw/openclaw/pull/142894). Thanks @vincentkoc. +- Remove duplicate OpenCode Go metadata testing [#142894](https://github.com/openclaw/openclaw/pull/142894). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate duplicate setup inference tests [#142899](https://github.com/openclaw/openclaw/pull/142899) - Advance ngrok startup deadlines in process tests [#142903](https://github.com/openclaw/openclaw/pull/142903) -- Reuse builds in service-worker update tests [#142904](https://github.com/openclaw/openclaw/pull/142904). Thanks @vincentkoc. -- Reduce repeated compilation in worker-cache tests [#142911](https://github.com/openclaw/openclaw/pull/142911). Thanks @vincentkoc. +- Reuse builds in service-worker update tests [#142904](https://github.com/openclaw/openclaw/pull/142904). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reduce repeated compilation in worker-cache tests [#142911](https://github.com/openclaw/openclaw/pull/142911). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reduce startup work for focused fast tests [#142912](https://github.com/openclaw/openclaw/pull/142912) -- Reduce upgrade-test configuration launches [#142917](https://github.com/openclaw/openclaw/pull/142917). Thanks @vincentkoc. +- Reduce upgrade-test configuration launches [#142917](https://github.com/openclaw/openclaw/pull/142917). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse shared response-cancellation fixtures [#142919](https://github.com/openclaw/openclaw/pull/142919) - Share Google web-search test options [#142928](https://github.com/openclaw/openclaw/pull/142928) - Reuse Memory Wiki source-state fixtures [#142934](https://github.com/openclaw/openclaw/pull/142934) - Share agent-turn test input fixtures [#142962](https://github.com/openclaw/openclaw/pull/142962) -- Reuse package fixtures in security-scan tests [#142982](https://github.com/openclaw/openclaw/pull/142982). Thanks @vincentkoc. +- Reuse package fixtures in security-scan tests [#142982](https://github.com/openclaw/openclaw/pull/142982). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share cron context-window test fixtures [#142985](https://github.com/openclaw/openclaw/pull/142985) -- Remove duplicate model-usage aggregation testing [#142990](https://github.com/openclaw/openclaw/pull/142990). Thanks @vincentkoc. +- Remove duplicate model-usage aggregation testing [#142990](https://github.com/openclaw/openclaw/pull/142990). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove redundant worker-transform test compilation [#143009](https://github.com/openclaw/openclaw/pull/143009) -- Reuse isolated Git fixtures in release-evidence tests [#143014](https://github.com/openclaw/openclaw/pull/143014). Thanks @vincentkoc. +- Reuse isolated Git fixtures in release-evidence tests [#143014](https://github.com/openclaw/openclaw/pull/143014). Thanks [@vincentkoc](https://github.com/vincentkoc). - Serialize worker-transform test sequences [#143034](https://github.com/openclaw/openclaw/pull/143034) - Share Codex context-engine test setup [#143035](https://github.com/openclaw/openclaw/pull/143035) -- Build phone recovery test fixture once per suite [#143046](https://github.com/openclaw/openclaw/pull/143046). Thanks @vincentkoc. +- Build phone recovery test fixture once per suite [#143046](https://github.com/openclaw/openclaw/pull/143046). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse Doctor plugin-repair success fixtures [#143047](https://github.com/openclaw/openclaw/pull/143047) - Consolidate duplicate QA Lab image-result coverage [#143048](https://github.com/openclaw/openclaw/pull/143048) - Remove duplicate warm chat metadata coverage [#143059](https://github.com/openclaw/openclaw/pull/143059) -- Reuse compiled feature-plugin test fixtures [#143062](https://github.com/openclaw/openclaw/pull/143062). Thanks @vincentkoc. +- Reuse compiled feature-plugin test fixtures [#143062](https://github.com/openclaw/openclaw/pull/143062). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate xAI credential-reference test fixtures [#143075](https://github.com/openclaw/openclaw/pull/143075) - Share Doctor routing-warning fixtures [#143076](https://github.com/openclaw/openclaw/pull/143076) - Share Memory Wiki session-search fixtures [#143084](https://github.com/openclaw/openclaw/pull/143084) -- Remove obsolete WhatsApp session snapshot coverage [#143104](https://github.com/openclaw/openclaw/pull/143104). Thanks @vincentkoc. +- Remove obsolete WhatsApp session snapshot coverage [#143104](https://github.com/openclaw/openclaw/pull/143104). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse remaining xAI secret-reference test fixtures [#143108](https://github.com/openclaw/openclaw/pull/143108) - Consolidate proof-policy identity test setup [#143112](https://github.com/openclaw/openclaw/pull/143112) -- Reuse the diagnostics installation test package [#143116](https://github.com/openclaw/openclaw/pull/143116). Thanks @vincentkoc. +- Reuse the diagnostics installation test package [#143116](https://github.com/openclaw/openclaw/pull/143116). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate provider authentication precedence tests [#143117](https://github.com/openclaw/openclaw/pull/143117) -- Remove duplicate MiniMax M2.7 input coverage [#143122](https://github.com/openclaw/openclaw/pull/143122). Thanks @vincentkoc. +- Remove duplicate MiniMax M2.7 input coverage [#143122](https://github.com/openclaw/openclaw/pull/143122). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share status-rendering test fixtures [#143124](https://github.com/openclaw/openclaw/pull/143124) -- Shorten deliberate SQLite timeout test waits [#143130](https://github.com/openclaw/openclaw/pull/143130). Thanks @vincentkoc. -- Reuse Git seed setup in Testbox tests [#143154](https://github.com/openclaw/openclaw/pull/143154). Thanks @vincentkoc. +- Shorten deliberate SQLite timeout test waits [#143130](https://github.com/openclaw/openclaw/pull/143130). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse Git seed setup in Testbox tests [#143154](https://github.com/openclaw/openclaw/pull/143154). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share agent-turn execution test defaults [#143166](https://github.com/openclaw/openclaw/pull/143166) -- Remove redundant Mistral cache-cost arithmetic coverage [#143172](https://github.com/openclaw/openclaw/pull/143172). Thanks @vincentkoc. +- Remove redundant Mistral cache-cost arithmetic coverage [#143172](https://github.com/openclaw/openclaw/pull/143172). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Memory Wiki visibility test callbacks [#143181](https://github.com/openclaw/openclaw/pull/143181) -- Reduce Telegram policy test startup overhead [#143192](https://github.com/openclaw/openclaw/pull/143192). Thanks @vincentkoc. +- Reduce Telegram policy test startup overhead [#143192](https://github.com/openclaw/openclaw/pull/143192). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share mcporter security-audit test inputs [#143209](https://github.com/openclaw/openclaw/pull/143209) - Share Codex migration request fixtures [#143221](https://github.com/openclaw/openclaw/pull/143221) -- Remove duplicate xAI stream tests [#143222](https://github.com/openclaw/openclaw/pull/143222). Thanks @vincentkoc. -- Reuse initial certificates in proxy lifecycle tests [#143247](https://github.com/openclaw/openclaw/pull/143247). Thanks @vincentkoc. -- Reuse prepared CLI artifacts in Telegram QA tests [#143253](https://github.com/openclaw/openclaw/pull/143253). Thanks @vincentkoc. +- Remove duplicate xAI stream tests [#143222](https://github.com/openclaw/openclaw/pull/143222). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse initial certificates in proxy lifecycle tests [#143247](https://github.com/openclaw/openclaw/pull/143247). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse prepared CLI artifacts in Telegram QA tests [#143253](https://github.com/openclaw/openclaw/pull/143253). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share ACP metadata-update test setup [#143261](https://github.com/openclaw/openclaw/pull/143261) - Reduce repeated manifest searches during test-worker preparation [#143271](https://github.com/openclaw/openclaw/pull/143271) -- Remove unused Doctor catalog test setup [#143272](https://github.com/openclaw/openclaw/pull/143272). Thanks @vincentkoc. -- Reuse certificate setup in proxy tests [#143298](https://github.com/openclaw/openclaw/pull/143298). Thanks @vincentkoc. +- Remove unused Doctor catalog test setup [#143272](https://github.com/openclaw/openclaw/pull/143272). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse certificate setup in proxy tests [#143298](https://github.com/openclaw/openclaw/pull/143298). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Codex conversation test clients [#143300](https://github.com/openclaw/openclaw/pull/143300) - Share Docker timeout test fixtures [#143309](https://github.com/openclaw/openclaw/pull/143309) - Check authoritative restart state in update tests [#143316](https://github.com/openclaw/openclaw/pull/143316) -- Remove redundant usage-cost coverage [#143318](https://github.com/openclaw/openclaw/pull/143318). Thanks @vincentkoc. -- Reduce media QA startup overhead [#143326](https://github.com/openclaw/openclaw/pull/143326). Thanks @vincentkoc. +- Remove redundant usage-cost coverage [#143318](https://github.com/openclaw/openclaw/pull/143318). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reduce media QA startup overhead [#143326](https://github.com/openclaw/openclaw/pull/143326). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Feishu reply account test fixtures [#143336](https://github.com/openclaw/openclaw/pull/143336) - Share Docker package-builder fixtures [#143338](https://github.com/openclaw/openclaw/pull/143338) - Test archive installation with real workspaces [#143339](https://github.com/openclaw/openclaw/pull/143339) @@ -4208,7 +4208,7 @@ Reported timings cover different local workloads and cannot be added into a rele - Share Meta and Xiaomi test guards [#143358](https://github.com/openclaw/openclaw/pull/143358) - Share Feishu fetched-message fixtures [#143362](https://github.com/openclaw/openclaw/pull/143362) - Reuse Slack approval test configuration [#143370](https://github.com/openclaw/openclaw/pull/143370) -- Remove unused channel catalog fixtures [#143373](https://github.com/openclaw/openclaw/pull/143373). Thanks @vincentkoc. +- Remove unused channel catalog fixtures [#143373](https://github.com/openclaw/openclaw/pull/143373). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify Chutes test responses [#143382](https://github.com/openclaw/openclaw/pull/143382) - Share deferred fixtures in routing tests [#143383](https://github.com/openclaw/openclaw/pull/143383) - Avoid cold plugin loading in fallback tests [#143392](https://github.com/openclaw/openclaw/pull/143392) @@ -4216,23 +4216,23 @@ Reported timings cover different local workloads and cannot be added into a rele - Exercise real inbound orchestration in Signal tests [#143412](https://github.com/openclaw/openclaw/pull/143412) - Reuse compiled SDK fixtures in MCP tests [#143415](https://github.com/openclaw/openclaw/pull/143415) - Reuse prepared CLI in JSON-error tests [#143427](https://github.com/openclaw/openclaw/pull/143427) -- Remove duplicate Discord presence coverage [#143435](https://github.com/openclaw/openclaw/pull/143435). Thanks @vincentkoc. +- Remove duplicate Discord presence coverage [#143435](https://github.com/openclaw/openclaw/pull/143435). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share image resource test setup [#143443](https://github.com/openclaw/openclaw/pull/143443) -- Reuse pristine Git seeds in worktree tests [#143469](https://github.com/openclaw/openclaw/pull/143469). Thanks @RomneyDa. +- Reuse pristine Git seeds in worktree tests [#143469](https://github.com/openclaw/openclaw/pull/143469). Thanks [@RomneyDa](https://github.com/RomneyDa). - Run isolated CLI cleanup tests concurrently [#143481](https://github.com/openclaw/openclaw/pull/143481) - Reuse TypeScript transforms in update tests [#143487](https://github.com/openclaw/openclaw/pull/143487) -- Remove unnecessary diagnostic timeout test waiting [#143514](https://github.com/openclaw/openclaw/pull/143514). Thanks @RomneyDa. +- Remove unnecessary diagnostic timeout test waiting [#143514](https://github.com/openclaw/openclaw/pull/143514). Thanks [@RomneyDa](https://github.com/RomneyDa). - Reuse source transforms in proxy exit tests [#143527](https://github.com/openclaw/openclaw/pull/143527) - Simplify exec-host approval test fixtures [#143529](https://github.com/openclaw/openclaw/pull/143529) - Share Signal quote test inputs [#143532](https://github.com/openclaw/openclaw/pull/143532) -- Compact shell-completion test tables [#143533](https://github.com/openclaw/openclaw/pull/143533). Thanks @RomneyDa. -- Compact reply-payload test matrices [#143534](https://github.com/openclaw/openclaw/pull/143534). Thanks @RomneyDa. -- Compact CI concurrency test cases [#143535](https://github.com/openclaw/openclaw/pull/143535). Thanks @RomneyDa. -- Compact Labs configuration tests [#143536](https://github.com/openclaw/openclaw/pull/143536). Thanks @RomneyDa. +- Compact shell-completion test tables [#143533](https://github.com/openclaw/openclaw/pull/143533). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact reply-payload test matrices [#143534](https://github.com/openclaw/openclaw/pull/143534). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact CI concurrency test cases [#143535](https://github.com/openclaw/openclaw/pull/143535). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Compact Labs configuration tests [#143536](https://github.com/openclaw/openclaw/pull/143536). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share Discord REST proxy test spies [#143537](https://github.com/openclaw/openclaw/pull/143537) - Share empty plugin metadata fixtures [#143544](https://github.com/openclaw/openclaw/pull/143544) - Reuse transforms across cron output tests [#143559](https://github.com/openclaw/openclaw/pull/143559) -- Exercise Teams timeout handling through Gateway send [#143572](https://github.com/openclaw/openclaw/pull/143572). Thanks @RomneyDa. +- Exercise Teams timeout handling through Gateway send [#143572](https://github.com/openclaw/openclaw/pull/143572). Thanks [@RomneyDa](https://github.com/RomneyDa). - Share QA mock-provider decisions [#143603](https://github.com/openclaw/openclaw/pull/143603) - Strengthen optional plugin-tool environment coverage [#143613](https://github.com/openclaw/openclaw/pull/143613) - Reuse transformed code across native Gateway tests [#143628](https://github.com/openclaw/openclaw/pull/143628) @@ -4250,67 +4250,67 @@ Reported timings cover different local workloads and cannot be added into a rele - Reuse storage fixtures in sidebar tests [#143697](https://github.com/openclaw/openclaw/pull/143697) - Remove obsolete Venice test environment overrides [#143720](https://github.com/openclaw/openclaw/pull/143720) - Share SQLite index-drift test setup [#143749](https://github.com/openclaw/openclaw/pull/143749) -- Speed up SQLite snapshot test byte comparisons [#143751](https://github.com/openclaw/openclaw/pull/143751). Thanks @RomneyDa. +- Speed up SQLite snapshot test byte comparisons [#143751](https://github.com/openclaw/openclaw/pull/143751). Thanks [@RomneyDa](https://github.com/RomneyDa). - Simplify configuration test environment fixtures [#143815](https://github.com/openclaw/openclaw/pull/143815) - Remove Responses transport test globals [#143850](https://github.com/openclaw/openclaw/pull/143850) - Remove model planner test hooks [#143851](https://github.com/openclaw/openclaw/pull/143851) - Simplify image-generation test fixtures [#143862](https://github.com/openclaw/openclaw/pull/143862) -- Remove duplicate Signal access test [#143870](https://github.com/openclaw/openclaw/pull/143870). Thanks @vincentkoc. +- Remove duplicate Signal access test [#143870](https://github.com/openclaw/openclaw/pull/143870). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove models-writer test plumbing [#143874](https://github.com/openclaw/openclaw/pull/143874) -- Cover update permission loss during discovery [#143877](https://github.com/openclaw/openclaw/pull/143877). Thanks @fuller-stack-dev. +- Cover update permission loss during discovery [#143877](https://github.com/openclaw/openclaw/pull/143877). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). - Move type contracts to compiler-owned checks [#143888](https://github.com/openclaw/openclaw/pull/143888) - Share sidebar drag-data fixtures [#143901](https://github.com/openclaw/openclaw/pull/143901) -- Remove duplicate Telegram history coverage [#143904](https://github.com/openclaw/openclaw/pull/143904). Thanks @vincentkoc. +- Remove duplicate Telegram history coverage [#143904](https://github.com/openclaw/openclaw/pull/143904). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify configuration environment fixtures [#143925](https://github.com/openclaw/openclaw/pull/143925) -- Remove duplicate WhatsApp listener tests [#143962](https://github.com/openclaw/openclaw/pull/143962). Thanks @vincentkoc. +- Remove duplicate WhatsApp listener tests [#143962](https://github.com/openclaw/openclaw/pull/143962). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Memory Wiki deferred fixtures [#143978](https://github.com/openclaw/openclaw/pull/143978) -- Remove duplicate inbound-audio coverage [#143996](https://github.com/openclaw/openclaw/pull/143996). Thanks @vincentkoc. +- Remove duplicate inbound-audio coverage [#143996](https://github.com/openclaw/openclaw/pull/143996). Thanks [@vincentkoc](https://github.com/vincentkoc). - Test usage authentication through owning helpers [#143997](https://github.com/openclaw/openclaw/pull/143997) - Reuse auto-reply promise fixtures [#144004](https://github.com/openclaw/openclaw/pull/144004) - Exercise shared HTTP behavior in media tests [#144024](https://github.com/openclaw/openclaw/pull/144024) -- Remove duplicate reply cancellation coverage [#144028](https://github.com/openclaw/openclaw/pull/144028). Thanks @vincentkoc. +- Remove duplicate reply cancellation coverage [#144028](https://github.com/openclaw/openclaw/pull/144028). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify Discord directory fixtures [#144033](https://github.com/openclaw/openclaw/pull/144033) - Decouple UI behavior tests from class lists [#144050](https://github.com/openclaw/openclaw/pull/144050) -- Remove duplicate login-shell PATH test [#144051](https://github.com/openclaw/openclaw/pull/144051). Thanks @vincentkoc. +- Remove duplicate login-shell PATH test [#144051](https://github.com/openclaw/openclaw/pull/144051). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse terminal deferred fixtures [#144058](https://github.com/openclaw/openclaw/pull/144058) -- Remove duplicate metadata scope test [#144072](https://github.com/openclaw/openclaw/pull/144072). Thanks @vincentkoc. +- Remove duplicate metadata scope test [#144072](https://github.com/openclaw/openclaw/pull/144072). Thanks [@vincentkoc](https://github.com/vincentkoc). - Share Slack approval configuration fixtures [#144076](https://github.com/openclaw/openclaw/pull/144076) - Simplify source-reply test inputs [#144080](https://github.com/openclaw/openclaw/pull/144080) - Reuse ClawHub HTTP test helpers [#144090](https://github.com/openclaw/openclaw/pull/144090) -- Remove duplicate missing-exporter test [#144091](https://github.com/openclaw/openclaw/pull/144091). Thanks @vincentkoc. +- Remove duplicate missing-exporter test [#144091](https://github.com/openclaw/openclaw/pull/144091). Thanks [@vincentkoc](https://github.com/vincentkoc). - Consolidate package-source update tests [#144097](https://github.com/openclaw/openclaw/pull/144097) -- Remove duplicate realtime authentication test [#144105](https://github.com/openclaw/openclaw/pull/144105). Thanks @vincentkoc. +- Remove duplicate realtime authentication test [#144105](https://github.com/openclaw/openclaw/pull/144105). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse compiled source in startup tests [#144110](https://github.com/openclaw/openclaw/pull/144110) - Reuse terminal upload and queue fixtures [#144116](https://github.com/openclaw/openclaw/pull/144116) - Consolidate Brave startup fixtures [#144117](https://github.com/openclaw/openclaw/pull/144117) - Simplify Firecrawl credential fixtures [#144122](https://github.com/openclaw/openclaw/pull/144122) -- Remove duplicate CLI session-cleanup coverage [#144126](https://github.com/openclaw/openclaw/pull/144126). Thanks @vincentkoc. +- Remove duplicate CLI session-cleanup coverage [#144126](https://github.com/openclaw/openclaw/pull/144126). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify Quick Chat test inputs [#144135](https://github.com/openclaw/openclaw/pull/144135) **Bug fixes** -- Load browser cleanup before ACP test deadlines [441f69b2](https://github.com/openclaw/openclaw/commit/441f69b21fd77839345dfe247d82cbba8135984f). Thanks @Baumus. -- Require completed installation in Claw export fixtures [#120843](https://github.com/openclaw/openclaw/pull/120843). Thanks @vincentkoc. -- Find Slack QA presentations by exact message timestamp [#127300](https://github.com/openclaw/openclaw/pull/127300). Thanks @RomneyDa. +- Load browser cleanup before ACP test deadlines [441f69b2](https://github.com/openclaw/openclaw/commit/441f69b21fd77839345dfe247d82cbba8135984f). Thanks [@Baumus](https://github.com/Baumus). +- Require completed installation in Claw export fixtures [#120843](https://github.com/openclaw/openclaw/pull/120843). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Find Slack QA presentations by exact message timestamp [#127300](https://github.com/openclaw/openclaw/pull/127300). Thanks [@RomneyDa](https://github.com/RomneyDa). - Require completed serving evidence in managed upgrade tests [#141663](https://github.com/openclaw/openclaw/pull/141663) - Set explicit permissions for Doctor test state [#141672](https://github.com/openclaw/openclaw/pull/141672) - Restore the resize observer after multi-select tests [#141673](https://github.com/openclaw/openclaw/pull/141673) - Synchronize containment tests with real process stops [#141681](https://github.com/openclaw/openclaw/pull/141681) -- Preserve onboarding-test installation failure diagnostics [#141689](https://github.com/openclaw/openclaw/pull/141689). Thanks @vincentkoc and @RomneyDa. +- Preserve onboarding-test installation failure diagnostics [#141689](https://github.com/openclaw/openclaw/pull/141689). Thanks [@vincentkoc](https://github.com/vincentkoc) and [@RomneyDa](https://github.com/RomneyDa). - Preserve Doctor-written configuration in secret-reference tests [#141768](https://github.com/openclaw/openclaw/pull/141768) - Complete manifest fixtures in capability-provider tests [#141855](https://github.com/openclaw/openclaw/pull/141855) - Isolate plugin artifact loader test fixtures [#141887](https://github.com/openclaw/openclaw/pull/141887) - Preserve inbound references on queued QA replies [#141905](https://github.com/openclaw/openclaw/pull/141905) -- Align plugin install and removal QA expectations [#141964](https://github.com/openclaw/openclaw/pull/141964). Thanks @RomneyDa. -- Prepare Docker images for sandbox QA [#141965](https://github.com/openclaw/openclaw/pull/141965). Thanks @RomneyDa. -- Remove QA credentials through Gateway logout [#141974](https://github.com/openclaw/openclaw/pull/141974). Thanks @RomneyDa. -- Align Claude QA fixture with session initialization [#141978](https://github.com/openclaw/openclaw/pull/141978). Thanks @RomneyDa. -- Select compact progress for Slack draft QA [#141980](https://github.com/openclaw/openclaw/pull/141980). Thanks @RomneyDa. -- Target Teams QA timeouts at message activities [#141985](https://github.com/openclaw/openclaw/pull/141985). Thanks @RomneyDa. +- Align plugin install and removal QA expectations [#141964](https://github.com/openclaw/openclaw/pull/141964). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Prepare Docker images for sandbox QA [#141965](https://github.com/openclaw/openclaw/pull/141965). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Remove QA credentials through Gateway logout [#141974](https://github.com/openclaw/openclaw/pull/141974). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Align Claude QA fixture with session initialization [#141978](https://github.com/openclaw/openclaw/pull/141978). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Select compact progress for Slack draft QA [#141980](https://github.com/openclaw/openclaw/pull/141980). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Target Teams QA timeouts at message activities [#141985](https://github.com/openclaw/openclaw/pull/141985). Thanks [@RomneyDa](https://github.com/RomneyDa). - Drain heartbeat wakes before plugin test teardown [#142036](https://github.com/openclaw/openclaw/pull/142036) - Isolate keyless model tests from host credentials [#142049](https://github.com/openclaw/openclaw/pull/142049) -- Finish mock-provider continuations after settled work [#142060](https://github.com/openclaw/openclaw/pull/142060). Thanks @RomneyDa. -- Remove port-reuse races from probe tests [#142088](https://github.com/openclaw/openclaw/pull/142088). Thanks @RomneyDa. +- Finish mock-provider continuations after settled work [#142060](https://github.com/openclaw/openclaw/pull/142060). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Remove port-reuse races from probe tests [#142088](https://github.com/openclaw/openclaw/pull/142088). Thanks [@RomneyDa](https://github.com/RomneyDa). - Correct core session status in browser fixtures [#142097](https://github.com/openclaw/openclaw/pull/142097) - Isolate fresh mock write scenarios from earlier completions [#142137](https://github.com/openclaw/openclaw/pull/142137) - Isolate mocked Chromium selection from host settings [#142150](https://github.com/openclaw/openclaw/pull/142150) @@ -4323,27 +4323,27 @@ Reported timings cover different local workloads and cannot be added into a rele - Avoid unnecessary provider discovery in sticker tests [#142281](https://github.com/openclaw/openclaw/pull/142281) - Finish Activity test imports before teardown [#142282](https://github.com/openclaw/openclaw/pull/142282) - Wait for Gateway event-log test cleanup [#142314](https://github.com/openclaw/openclaw/pull/142314) -- Wait for startup completion in first-run recovery tests [#142339](https://github.com/openclaw/openclaw/pull/142339). Thanks @vyctorbrzezowski. -- Keep upgrade-test registry helpers on the same version [#142353](https://github.com/openclaw/openclaw/pull/142353). Thanks @RomneyDa. +- Wait for startup completion in first-run recovery tests [#142339](https://github.com/openclaw/openclaw/pull/142339). Thanks [@vyctorbrzezowski](https://github.com/vyctorbrzezowski). +- Keep upgrade-test registry helpers on the same version [#142353](https://github.com/openclaw/openclaw/pull/142353). Thanks [@RomneyDa](https://github.com/RomneyDa). - Refresh Telegram QA button lookup after menu edits [#142473](https://github.com/openclaw/openclaw/pull/142473) -- Stabilize Windows Claude CLI test fixtures [#142520](https://github.com/openclaw/openclaw/pull/142520). Thanks @vincentkoc. -- Recognize unavailable upstream models in live tests [#142561](https://github.com/openclaw/openclaw/pull/142561). Thanks @RomneyDa. -- Show nested onboarding failures in validation logs [#142645](https://github.com/openclaw/openclaw/pull/142645). Thanks @vincentkoc. +- Stabilize Windows Claude CLI test fixtures [#142520](https://github.com/openclaw/openclaw/pull/142520). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Recognize unavailable upstream models in live tests [#142561](https://github.com/openclaw/openclaw/pull/142561). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Show nested onboarding failures in validation logs [#142645](https://github.com/openclaw/openclaw/pull/142645). Thanks [@vincentkoc](https://github.com/vincentkoc). - Wait for settled attachment test geometry [#142728](https://github.com/openclaw/openclaw/pull/142728) -- Stabilize Android image-decoding tests on Linux [#142752](https://github.com/openclaw/openclaw/pull/142752). Thanks @vincentkoc. +- Stabilize Android image-decoding tests on Linux [#142752](https://github.com/openclaw/openclaw/pull/142752). Thanks [@vincentkoc](https://github.com/vincentkoc). - Synchronize cloud-worker settings browser tests [#142763](https://github.com/openclaw/openclaw/pull/142763) -- Wait for Signal delivery completion in tests [#142775](https://github.com/openclaw/openclaw/pull/142775). Thanks @vincentkoc. +- Wait for Signal delivery completion in tests [#142775](https://github.com/openclaw/openclaw/pull/142775). Thanks [@vincentkoc](https://github.com/vincentkoc). - Exercise same-version candidates in upgrade tests [#142811](https://github.com/openclaw/openclaw/pull/142811) -- Run packaged QA commands with the selected candidate [#142925](https://github.com/openclaw/openclaw/pull/142925). Thanks @vincentkoc. +- Run packaged QA commands with the selected candidate [#142925](https://github.com/openclaw/openclaw/pull/142925). Thanks [@vincentkoc](https://github.com/vincentkoc). - Close reloaded database caches in token tests [#142978](https://github.com/openclaw/openclaw/pull/142978) -- Isolate managed-update tests from host system services [#143013](https://github.com/openclaw/openclaw/pull/143013). Thanks @vincentkoc. +- Isolate managed-update tests from host system services [#143013](https://github.com/openclaw/openclaw/pull/143013). Thanks [@vincentkoc](https://github.com/vincentkoc). - Close Gateway test databases across module resets [#143045](https://github.com/openclaw/openclaw/pull/143045) - Close skill-upload test databases during cleanup [#143071](https://github.com/openclaw/openclaw/pull/143071) - Stabilize Gateway compaction race test synchronization [#143072](https://github.com/openclaw/openclaw/pull/143072) -- Prepare Gateway test startup and preserve Cron cleanup errors [#143102](https://github.com/openclaw/openclaw/pull/143102). Thanks @vincentkoc. +- Prepare Gateway test startup and preserve Cron cleanup errors [#143102](https://github.com/openclaw/openclaw/pull/143102). Thanks [@vincentkoc](https://github.com/vincentkoc). - Measure attachment layout within one browser frame [#143103](https://github.com/openclaw/openclaw/pull/143103) - Wait for socket closure before stream-test cleanup finishes [#143133](https://github.com/openclaw/openclaw/pull/143133) -- Allow more startup time for systemd test fixtures [#143134](https://github.com/openclaw/openclaw/pull/143134). Thanks @vincentkoc. +- Allow more startup time for systemd test fixtures [#143134](https://github.com/openclaw/openclaw/pull/143134). Thanks [@vincentkoc](https://github.com/vincentkoc). - Isolate the Gateway prewarm test repository [#143161](https://github.com/openclaw/openclaw/pull/143161) - Close paired-device test databases before deleting files [#143168](https://github.com/openclaw/openclaw/pull/143168) - Clean up chat preview listeners in UI tests [#143191](https://github.com/openclaw/openclaw/pull/143191) @@ -4353,32 +4353,32 @@ Reported timings cover different local workloads and cannot be added into a rele - Isolate subagent announcement tests [#143251](https://github.com/openclaw/openclaw/pull/143251) - Stabilize Doctor source-isolation tests on tmpfs [#143258](https://github.com/openclaw/openclaw/pull/143258) - Restore empty-transcript compaction coverage [#143317](https://github.com/openclaw/openclaw/pull/143317) -- Allow subpixel rounding in attachment layout tests [#143333](https://github.com/openclaw/openclaw/pull/143333). Thanks @vincentkoc. +- Allow subpixel rounding in attachment layout tests [#143333](https://github.com/openclaw/openclaw/pull/143333). Thanks [@vincentkoc](https://github.com/vincentkoc). - Close Control UI test databases before cleanup [#143398](https://github.com/openclaw/openclaw/pull/143398) - Close pairing test databases before cleanup [#143401](https://github.com/openclaw/openclaw/pull/143401) - Close token-store test databases before cleanup [#143409](https://github.com/openclaw/openclaw/pull/143409) - Close node-pairing test databases before cleanup [#143418](https://github.com/openclaw/openclaw/pull/143418) -- Complete bundled plugin directory test mock [#143444](https://github.com/openclaw/openclaw/pull/143444). Thanks @RomneyDa. -- Synchronize model catalog browser tests [#143445](https://github.com/openclaw/openclaw/pull/143445). Thanks @RomneyDa. -- Allow Chrome tab indexing time in extension tests [#143447](https://github.com/openclaw/openclaw/pull/143447). Thanks @RomneyDa. -- Recognize expected MCP resolver test diagnostics [#143450](https://github.com/openclaw/openclaw/pull/143450). Thanks @RomneyDa. -- Isolate announcement test dependencies [#143465](https://github.com/openclaw/openclaw/pull/143465). Thanks @vincentkoc. -- Recognize Slack card progress in QA checks [#143562](https://github.com/openclaw/openclaw/pull/143562). Thanks @RomneyDa. -- Correct Telegram QA receipt and preview expectations [#143563](https://github.com/openclaw/openclaw/pull/143563). Thanks @RomneyDa. -- Run repository CLI health scenarios exclusively [#143564](https://github.com/openclaw/openclaw/pull/143564). Thanks @RomneyDa. -- Correct package uninstall assertions [#143565](https://github.com/openclaw/openclaw/pull/143565). Thanks @RomneyDa. -- Accept intentional memory preparation diagnostics in QA [#143570](https://github.com/openclaw/openclaw/pull/143570). Thanks @RomneyDa. -- Coordinate Matrix QA progress with command completion [#143573](https://github.com/openclaw/openclaw/pull/143573). Thanks @RomneyDa. -- Isolate CLI announcement checks and await transcript replies [#143576](https://github.com/openclaw/openclaw/pull/143576). Thanks @RomneyDa. -- Bundle Telegram QA evidence helpers [#143582](https://github.com/openclaw/openclaw/pull/143582). Thanks @RomneyDa. +- Complete bundled plugin directory test mock [#143444](https://github.com/openclaw/openclaw/pull/143444). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Synchronize model catalog browser tests [#143445](https://github.com/openclaw/openclaw/pull/143445). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Allow Chrome tab indexing time in extension tests [#143447](https://github.com/openclaw/openclaw/pull/143447). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Recognize expected MCP resolver test diagnostics [#143450](https://github.com/openclaw/openclaw/pull/143450). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Isolate announcement test dependencies [#143465](https://github.com/openclaw/openclaw/pull/143465). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Recognize Slack card progress in QA checks [#143562](https://github.com/openclaw/openclaw/pull/143562). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct Telegram QA receipt and preview expectations [#143563](https://github.com/openclaw/openclaw/pull/143563). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Run repository CLI health scenarios exclusively [#143564](https://github.com/openclaw/openclaw/pull/143564). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct package uninstall assertions [#143565](https://github.com/openclaw/openclaw/pull/143565). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Accept intentional memory preparation diagnostics in QA [#143570](https://github.com/openclaw/openclaw/pull/143570). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Coordinate Matrix QA progress with command completion [#143573](https://github.com/openclaw/openclaw/pull/143573). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Isolate CLI announcement checks and await transcript replies [#143576](https://github.com/openclaw/openclaw/pull/143576). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Bundle Telegram QA evidence helpers [#143582](https://github.com/openclaw/openclaw/pull/143582). Thanks [@RomneyDa](https://github.com/RomneyDa). - Isolate Codex auth-refresh integration providers [#143585](https://github.com/openclaw/openclaw/pull/143585) - Close heartbeat test databases before fixture deletion [#143606](https://github.com/openclaw/openclaw/pull/143606) - Repair worker setup browser fixtures [#143666](https://github.com/openclaw/openclaw/pull/143666) - Align QA Lab OpenAI defaults with canonical model IDs [#143674](https://github.com/openclaw/openclaw/pull/143674) -- Correct Discord transcript provider assertions [#143689](https://github.com/openclaw/openclaw/pull/143689). Thanks @RomneyDa. -- Refresh model catalogs before ClawRouter assertions [#143692](https://github.com/openclaw/openclaw/pull/143692). Thanks @RomneyDa. -- Align timeout tests with direct Claude CLI execution [#143696](https://github.com/openclaw/openclaw/pull/143696). Thanks @RomneyDa. -- Correct Telegram model-picker recovery tests [#143704](https://github.com/openclaw/openclaw/pull/143704). Thanks @RomneyDa. +- Correct Discord transcript provider assertions [#143689](https://github.com/openclaw/openclaw/pull/143689). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Refresh model catalogs before ClawRouter assertions [#143692](https://github.com/openclaw/openclaw/pull/143692). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Align timeout tests with direct Claude CLI execution [#143696](https://github.com/openclaw/openclaw/pull/143696). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct Telegram model-picker recovery tests [#143704](https://github.com/openclaw/openclaw/pull/143704). Thanks [@RomneyDa](https://github.com/RomneyDa). - Wait for updater process-group cleanup in tests [#143705](https://github.com/openclaw/openclaw/pull/143705) - Stabilize concurrent ClawHub catalog assertions [#143710](https://github.com/openclaw/openclaw/pull/143710) - Consolidate config environments and isolate Doctor fixtures [#143762](https://github.com/openclaw/openclaw/pull/143762) @@ -4392,7 +4392,7 @@ Reported timings cover different local workloads and cannot be added into a rele - Keep hardlink fixtures on one filesystem [#143945](https://github.com/openclaw/openclaw/pull/143945) - Drain transcript indexing before test cleanup [#143964](https://github.com/openclaw/openclaw/pull/143964) - Align dependency-locking navigation tests [#144002](https://github.com/openclaw/openclaw/pull/144002) -- Stabilize Telegram replacement-session tests [#144049](https://github.com/openclaw/openclaw/pull/144049). Thanks @crash2kx. +- Stabilize Telegram replacement-session tests [#144049](https://github.com/openclaw/openclaw/pull/144049). Thanks [@crash2kx](https://github.com/crash2kx). - Coordinate update-ledger test shutdown [#144054](https://github.com/openclaw/openclaw/pull/144054) - Restore complete navigation regression guards [#144075](https://github.com/openclaw/openclaw/pull/144075) - Drain session fixtures before state removal [#144087](https://github.com/openclaw/openclaw/pull/144087) @@ -4415,38 +4415,38 @@ The later historical 2026.7.33 evaluator pin restores its 250% status allowance **Improvements** -- Add opt-in runtime memory attribution to CLI benchmarks [#127746](https://github.com/openclaw/openclaw/pull/127746). Thanks @vincentkoc. -- Reuse verified runner archives and handle CI inventory growth [#140680](https://github.com/openclaw/openclaw/pull/140680). Thanks @vincentkoc. -- Move macOS CodeQL to GitHub-hosted runners [#141761](https://github.com/openclaw/openclaw/pull/141761). Thanks @vincentkoc. -- Advance the historical evaluator before its calibration correction [#142058](https://github.com/openclaw/openclaw/pull/142058). Thanks @RomneyDa. +- Add opt-in runtime memory attribution to CLI benchmarks [#127746](https://github.com/openclaw/openclaw/pull/127746). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reuse verified runner archives and handle CI inventory growth [#140680](https://github.com/openclaw/openclaw/pull/140680). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Move macOS CodeQL to GitHub-hosted runners [#141761](https://github.com/openclaw/openclaw/pull/141761). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Advance the historical evaluator before its calibration correction [#142058](https://github.com/openclaw/openclaw/pull/142058). Thanks [@RomneyDa](https://github.com/RomneyDa). - Skip unrelated upgrade checks for test-only changes [#142154](https://github.com/openclaw/openclaw/pull/142154) - Skip unrelated UI E2E jobs for isolated unit-test changes [#142350](https://github.com/openclaw/openclaw/pull/142350) - Move TUI test typechecking into the command shard [#142385](https://github.com/openclaw/openclaw/pull/142385) - Reuse prerequisite decisions in CI test planning [#142630](https://github.com/openclaw/openclaw/pull/142630) -- Reuse verified Bun archives in Linux CI [#142849](https://github.com/openclaw/openclaw/pull/142849). Thanks @vincentkoc. +- Reuse verified Bun archives in Linux CI [#142849](https://github.com/openclaw/openclaw/pull/142849). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reuse Android build timestamps across CI tests and lint [#143207](https://github.com/openclaw/openclaw/pull/143207) **Bug fixes** -- Update the evaluator for late-discovered processes [#141675](https://github.com/openclaw/openclaw/pull/141675). Thanks @RomneyDa. +- Update the evaluator for late-discovered processes [#141675](https://github.com/openclaw/openclaw/pull/141675). Thanks [@RomneyDa](https://github.com/RomneyDa). - Provision ripgrep for filesystem contract tests [#141794](https://github.com/openclaw/openclaw/pull/141794) -- Let macOS security scans finish within hosted runner limits [#141851](https://github.com/openclaw/openclaw/pull/141851). Thanks @vincentkoc. -- Preserve heap settings across scorecard builds [#141915](https://github.com/openclaw/openclaw/pull/141915). Thanks @RomneyDa. -- Scope historical status CPU allowance to July release [#141935](https://github.com/openclaw/openclaw/pull/141935). Thanks @RomneyDa. -- Update performance evaluator CPU measurement pin [#142053](https://github.com/openclaw/openclaw/pull/142053). Thanks @RomneyDa. -- Update Gateway startup CPU accounting [#142085](https://github.com/openclaw/openclaw/pull/142085). Thanks @RomneyDa. -- Update performance evaluator startup discovery [#142104](https://github.com/openclaw/openclaw/pull/142104). Thanks @RomneyDa. -- Retry failed performance artifact uploads once [#142344](https://github.com/openclaw/openclaw/pull/142344). Thanks @RomneyDa. -- Correct the historical 2026.7.33 Kova benchmark pin [#142348](https://github.com/openclaw/openclaw/pull/142348). Thanks @RomneyDa. -- Bound TypeScript preflight resources on constrained CI [#142472](https://github.com/openclaw/openclaw/pull/142472). Thanks @RomneyDa. -- Use corrected release CPU calibration [#142537](https://github.com/openclaw/openclaw/pull/142537). Thanks @RomneyDa. -- Retain test timing estimates across inventory changes [#142719](https://github.com/openclaw/openclaw/pull/142719). Thanks @RomneyDa and @vincentkoc. -- Reject stale or unusable CI timing samples [#143182](https://github.com/openclaw/openclaw/pull/143182). Thanks @vincentkoc. -- Budget deferred translation catalogs separately in CI [#143219](https://github.com/openclaw/openclaw/pull/143219). Thanks @vincentkoc. -- Enforce one deferred bundle per language [#143297](https://github.com/openclaw/openclaw/pull/143297). Thanks @vincentkoc. +- Let macOS security scans finish within hosted runner limits [#141851](https://github.com/openclaw/openclaw/pull/141851). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Preserve heap settings across scorecard builds [#141915](https://github.com/openclaw/openclaw/pull/141915). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Scope historical status CPU allowance to July release [#141935](https://github.com/openclaw/openclaw/pull/141935). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Update performance evaluator CPU measurement pin [#142053](https://github.com/openclaw/openclaw/pull/142053). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Update Gateway startup CPU accounting [#142085](https://github.com/openclaw/openclaw/pull/142085). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Update performance evaluator startup discovery [#142104](https://github.com/openclaw/openclaw/pull/142104). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Retry failed performance artifact uploads once [#142344](https://github.com/openclaw/openclaw/pull/142344). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct the historical 2026.7.33 Kova benchmark pin [#142348](https://github.com/openclaw/openclaw/pull/142348). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Bound TypeScript preflight resources on constrained CI [#142472](https://github.com/openclaw/openclaw/pull/142472). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Use corrected release CPU calibration [#142537](https://github.com/openclaw/openclaw/pull/142537). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Retain test timing estimates across inventory changes [#142719](https://github.com/openclaw/openclaw/pull/142719). Thanks [@RomneyDa](https://github.com/RomneyDa) and [@vincentkoc](https://github.com/vincentkoc). +- Reject stale or unusable CI timing samples [#143182](https://github.com/openclaw/openclaw/pull/143182). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Budget deferred translation catalogs separately in CI [#143219](https://github.com/openclaw/openclaw/pull/143219). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Enforce one deferred bundle per language [#143297](https://github.com/openclaw/openclaw/pull/143297). Thanks [@vincentkoc](https://github.com/vincentkoc). - Preserve timing identities for expanded test chunks [#143639](https://github.com/openclaw/openclaw/pull/143639) - Correct CPU measurement bounds in release validation [#143808](https://github.com/openclaw/openclaw/pull/143808) -- Install search test prerequisites [#143835](https://github.com/openclaw/openclaw/pull/143835). Thanks @fuller-stack-dev. +- Install search test prerequisites [#143835](https://github.com/openclaw/openclaw/pull/143835). Thanks [@fuller-stack-dev](https://github.com/fuller-stack-dev). @@ -4463,19 +4463,19 @@ Preparation uses the frozen source manifests where required; installed-package v **Improvements** -- Use pnpm's override parser in npm lock generation [#141862](https://github.com/openclaw/openclaw/pull/141862). Thanks @RomneyDa. -- Simplify package import scanning [#142859](https://github.com/openclaw/openclaw/pull/142859). Thanks @vincentkoc. +- Use pnpm's override parser in npm lock generation [#141862](https://github.com/openclaw/openclaw/pull/141862). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Simplify package import scanning [#142859](https://github.com/openclaw/openclaw/pull/142859). Thanks [@vincentkoc](https://github.com/vincentkoc). - Simplify package dependency path resolution [#143063](https://github.com/openclaw/openclaw/pull/143063) **Bug fixes** -- Recognize extension-owned package dependencies [#141647](https://github.com/openclaw/openclaw/pull/141647). Thanks @RomneyDa. -- Preserve version comparisons in npm dependency evidence [#141800](https://github.com/openclaw/openclaw/pull/141800). Thanks @RomneyDa. -- Verify dependency ownership for built plugin chunks [#141876](https://github.com/openclaw/openclaw/pull/141876). Thanks @RomneyDa. -- Use source companion manifests in package verification [#142033](https://github.com/openclaw/openclaw/pull/142033). Thanks @RomneyDa. +- Recognize extension-owned package dependencies [#141647](https://github.com/openclaw/openclaw/pull/141647). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Preserve version comparisons in npm dependency evidence [#141800](https://github.com/openclaw/openclaw/pull/141800). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Verify dependency ownership for built plugin chunks [#141876](https://github.com/openclaw/openclaw/pull/141876). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Use source companion manifests in package verification [#142033](https://github.com/openclaw/openclaw/pull/142033). Thanks [@RomneyDa](https://github.com/RomneyDa). - Handle nested optional plugin dependencies [#142126](https://github.com/openclaw/openclaw/pull/142126) - Initialize ClawHub bootstrap packaging dependencies [#142191](https://github.com/openclaw/openclaw/pull/142191) -- Recognize Bun built-ins in package checks [#143436](https://github.com/openclaw/openclaw/pull/143436). Thanks @RomneyDa. +- Recognize Bun built-ins in package checks [#143436](https://github.com/openclaw/openclaw/pull/143436). Thanks [@RomneyDa](https://github.com/RomneyDa). - Allow shipped Markdown guides in npm checks [#143699](https://github.com/openclaw/openclaw/pull/143699) @@ -4493,103 +4493,103 @@ A recovered dispatch or collected publication status is an observation, not a pa **Improvements** -- Prepare package artifacts before release publication [#136466](https://github.com/openclaw/openclaw/pull/136466). Thanks @vincentkoc. -- Add the Node smoke path later replaced by runtime selection [#142034](https://github.com/openclaw/openclaw/pull/142034). Thanks @RomneyDa. +- Prepare package artifacts before release publication [#136466](https://github.com/openclaw/openclaw/pull/136466). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Add the Node smoke path later replaced by runtime selection [#142034](https://github.com/openclaw/openclaw/pull/142034). Thanks [@RomneyDa](https://github.com/RomneyDa). - Add published 2026.9.3 to the Mac update feed [#142235](https://github.com/openclaw/openclaw/pull/142235) - Align main with published 2026.9.3 metadata [#142240](https://github.com/openclaw/openclaw/pull/142240) -- Match default Telegram package tests to frozen source capabilities [#142378](https://github.com/openclaw/openclaw/pull/142378). Thanks @RomneyDa. -- Add a manual Android emulator diagnostic [#142780](https://github.com/openclaw/openclaw/pull/142780). Thanks @vincentkoc. -- Capture emulator boot diagnostics [#142809](https://github.com/openclaw/openclaw/pull/142809). Thanks @vincentkoc. -- Retain diagnostics after emulator readiness timeout [#142835](https://github.com/openclaw/openclaw/pull/142835). Thanks @vincentkoc. -- Complete emulator cold-boot diagnostics [#142891](https://github.com/openclaw/openclaw/pull/142891). Thanks @vincentkoc. -- Recover release-validation dispatches after lost responses [#142927](https://github.com/openclaw/openclaw/pull/142927). Thanks @vincentkoc. -- Move Android emulator workflows to Ubuntu KVM [#142979](https://github.com/openclaw/openclaw/pull/142979). Thanks @vincentkoc. -- Show publication observations alongside release validation status [#143171](https://github.com/openclaw/openclaw/pull/143171). Thanks @vincentkoc. +- Match default Telegram package tests to frozen source capabilities [#142378](https://github.com/openclaw/openclaw/pull/142378). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Add a manual Android emulator diagnostic [#142780](https://github.com/openclaw/openclaw/pull/142780). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Capture emulator boot diagnostics [#142809](https://github.com/openclaw/openclaw/pull/142809). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Retain diagnostics after emulator readiness timeout [#142835](https://github.com/openclaw/openclaw/pull/142835). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Complete emulator cold-boot diagnostics [#142891](https://github.com/openclaw/openclaw/pull/142891). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Recover release-validation dispatches after lost responses [#142927](https://github.com/openclaw/openclaw/pull/142927). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Move Android emulator workflows to Ubuntu KVM [#142979](https://github.com/openclaw/openclaw/pull/142979). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Show publication observations alongside release validation status [#143171](https://github.com/openclaw/openclaw/pull/143171). Thanks [@vincentkoc](https://github.com/vincentkoc). - Reject releases with beta tags older than stable [#143669](https://github.com/openclaw/openclaw/pull/143669) -- Validate frozen release targets from committed source [#144023](https://github.com/openclaw/openclaw/pull/144023). Thanks @vincentkoc. +- Validate frozen release targets from committed source [#144023](https://github.com/openclaw/openclaw/pull/144023). Thanks [@vincentkoc](https://github.com/vincentkoc). **Bug fixes** -- Use established session tests for historical Node checks [#141640](https://github.com/openclaw/openclaw/pull/141640). Thanks @RomneyDa. -- Accept opted-in historical same-version updater results [#141652](https://github.com/openclaw/openclaw/pull/141652). Thanks @RomneyDa. +- Use established session tests for historical Node checks [#141640](https://github.com/openclaw/openclaw/pull/141640). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Accept opted-in historical same-version updater results [#141652](https://github.com/openclaw/openclaw/pull/141652). Thanks [@RomneyDa](https://github.com/RomneyDa). - Correct release source checks and upgrade-test selection [#141746](https://github.com/openclaw/openclaw/pull/141746) -- Validate frozen releases with their shipped scenarios [#141774](https://github.com/openclaw/openclaw/pull/141774). Thanks @RomneyDa. -- Preserve frozen-release Gateway test client imports [#141814](https://github.com/openclaw/openclaw/pull/141814). Thanks @RomneyDa. -- Place frozen-release test clients beside installed dependencies [#141827](https://github.com/openclaw/openclaw/pull/141827). Thanks @RomneyDa. -- Install dependencies for the trusted native live-test harness [#141829](https://github.com/openclaw/openclaw/pull/141829). Thanks @RomneyDa. -- Fetch release-candidate history through its canonical branch [#141840](https://github.com/openclaw/openclaw/pull/141840). Thanks @RomneyDa. -- Recognize the July filesystem validation contract [#141892](https://github.com/openclaw/openclaw/pull/141892). Thanks @RomneyDa. -- Keep historical Docker validation scenarios consistent [#141893](https://github.com/openclaw/openclaw/pull/141893). Thanks @RomneyDa. -- Add maturity-result completeness checks [#141931](https://github.com/openclaw/openclaw/pull/141931). Thanks @RomneyDa. +- Validate frozen releases with their shipped scenarios [#141774](https://github.com/openclaw/openclaw/pull/141774). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Preserve frozen-release Gateway test client imports [#141814](https://github.com/openclaw/openclaw/pull/141814). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Place frozen-release test clients beside installed dependencies [#141827](https://github.com/openclaw/openclaw/pull/141827). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Install dependencies for the trusted native live-test harness [#141829](https://github.com/openclaw/openclaw/pull/141829). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Fetch release-candidate history through its canonical branch [#141840](https://github.com/openclaw/openclaw/pull/141840). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Recognize the July filesystem validation contract [#141892](https://github.com/openclaw/openclaw/pull/141892). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Keep historical Docker validation scenarios consistent [#141893](https://github.com/openclaw/openclaw/pull/141893). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Add maturity-result completeness checks [#141931](https://github.com/openclaw/openclaw/pull/141931). Thanks [@RomneyDa](https://github.com/RomneyDa). - Repair Gateway release-test capacity and scenario selection [#141954](https://github.com/openclaw/openclaw/pull/141954) -- Keep frozen upgrade tests with matching helpers [#142007](https://github.com/openclaw/openclaw/pull/142007). Thanks @RomneyDa. -- Record authorized unsupported Docker lanes as no-ops [#142020](https://github.com/openclaw/openclaw/pull/142020). Thanks @RomneyDa. -- Publish diagnostic scorecards before reporting QA failure [#142040](https://github.com/openclaw/openclaw/pull/142040). Thanks @RomneyDa. -- Use trusted tooling for preflight plugin plans [#142055](https://github.com/openclaw/openclaw/pull/142055). Thanks @RomneyDa. -- Omit unsupported historical corrupt-plugin checks [#142061](https://github.com/openclaw/openclaw/pull/142061). Thanks @RomneyDa. -- Bound ClawHub ancestry verification responses [#142072](https://github.com/openclaw/openclaw/pull/142072). Thanks @vincentkoc. +- Keep frozen upgrade tests with matching helpers [#142007](https://github.com/openclaw/openclaw/pull/142007). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Record authorized unsupported Docker lanes as no-ops [#142020](https://github.com/openclaw/openclaw/pull/142020). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Publish diagnostic scorecards before reporting QA failure [#142040](https://github.com/openclaw/openclaw/pull/142040). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Use trusted tooling for preflight plugin plans [#142055](https://github.com/openclaw/openclaw/pull/142055). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Omit unsupported historical corrupt-plugin checks [#142061](https://github.com/openclaw/openclaw/pull/142061). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Bound ClawHub ancestry verification responses [#142072](https://github.com/openclaw/openclaw/pull/142072). Thanks [@vincentkoc](https://github.com/vincentkoc). - Install trusted tooling dependencies for plugin previews [#142103](https://github.com/openclaw/openclaw/pull/142103) -- Keep release helpers from dirtying mobile source checks [#142115](https://github.com/openclaw/openclaw/pull/142115). Thanks @vincentkoc. +- Keep release helpers from dirtying mobile source checks [#142115](https://github.com/openclaw/openclaw/pull/142115). Thanks [@vincentkoc](https://github.com/vincentkoc). - Keep Docker approval waits outside the publication queue [#142250](https://github.com/openclaw/openclaw/pull/142250) -- Keep changelog credit within verified release history [#142261](https://github.com/openclaw/openclaw/pull/142261). Thanks @vincentkoc. +- Keep changelog credit within verified release history [#142261](https://github.com/openclaw/openclaw/pull/142261). Thanks [@vincentkoc](https://github.com/vincentkoc). - Keep Docker upgrade tests on an older starting version [#142273](https://github.com/openclaw/openclaw/pull/142273) - Verify closeout after separate npm and Docker recovery runs [#142291](https://github.com/openclaw/openclaw/pull/142291) - Restore Sparkle build-number output from symlinked checkouts [#142315](https://github.com/openclaw/openclaw/pull/142315) -- Handle large tooling archives during mobile beta authorization [#142360](https://github.com/openclaw/openclaw/pull/142360). Thanks @vincentkoc. -- Restore Bun execution in installation smoke checks [#142428](https://github.com/openclaw/openclaw/pull/142428). Thanks @RomneyDa. -- Supply the release Node version to frozen installer tests [#142431](https://github.com/openclaw/openclaw/pull/142431). Thanks @RomneyDa. -- Keep mobile beta authorization valid as main advances [#142432](https://github.com/openclaw/openclaw/pull/142432). Thanks @vincentkoc. -- Repair helper loading for historical upgrade checks [#142441](https://github.com/openclaw/openclaw/pull/142441). Thanks @RomneyDa. -- Align frozen 2026.7.33 Docker validation [#142456](https://github.com/openclaw/openclaw/pull/142456). Thanks @RomneyDa. -- Match frozen onboarding tests to release helpers [#142467](https://github.com/openclaw/openclaw/pull/142467). Thanks @RomneyDa. -- Record the reviewed Codex test scan finding [#142474](https://github.com/openclaw/openclaw/pull/142474). Thanks @vincentkoc. -- Set mobile beta screenshot prerequisites [#142523](https://github.com/openclaw/openclaw/pull/142523). Thanks @vincentkoc. -- Match ClawHub fixture requests to frozen candidates [#142551](https://github.com/openclaw/openclaw/pull/142551). Thanks @RomneyDa. -- Forward release Node version to Rocky installer probes [#142562](https://github.com/openclaw/openclaw/pull/142562). Thanks @RomneyDa. -- Select a supported runtime for Bun install checks [#142563](https://github.com/openclaw/openclaw/pull/142563). Thanks @RomneyDa. -- Repair frozen-package update validation fixtures [#142573](https://github.com/openclaw/openclaw/pull/142573). Thanks @RomneyDa. -- Fetch release ancestry branches independently [#142643](https://github.com/openclaw/openclaw/pull/142643). Thanks @RomneyDa. -- Derive frozen-release expectations from selected source [#142683](https://github.com/openclaw/openclaw/pull/142683). Thanks @RomneyDa. -- Preserve Git selection in frozen-release tests [#142686](https://github.com/openclaw/openclaw/pull/142686). Thanks @RomneyDa. -- Match frozen-package Telegram tests to supported scenarios [#142687](https://github.com/openclaw/openclaw/pull/142687). Thanks @RomneyDa. -- Correct frozen dirty-checkout exit expectations [#142727](https://github.com/openclaw/openclaw/pull/142727). Thanks @RomneyDa. -- Qualify Telegram progress tests against frozen source [#142731](https://github.com/openclaw/openclaw/pull/142731). Thanks @RomneyDa. -- Prepare Watch Rust tools for iOS beta builds [#142762](https://github.com/openclaw/openclaw/pull/142762). Thanks @vincentkoc. -- Isolate iOS release signing keys [#142846](https://github.com/openclaw/openclaw/pull/142846). Thanks @vincentkoc. -- Identify incompatible release-validation evidence [#142906](https://github.com/openclaw/openclaw/pull/142906). Thanks @vincentkoc. -- Check image size limits before Vercel copying [#142908](https://github.com/openclaw/openclaw/pull/142908). Thanks @vincentkoc. -- Match frozen bundle validation clients to source [#142926](https://github.com/openclaw/openclaw/pull/142926). Thanks @vincentkoc. -- Stop frozen checks on committed-source read errors [#142930](https://github.com/openclaw/openclaw/pull/142930). Thanks @vincentkoc. -- Isolate frozen-suite compatibility checks [#142935](https://github.com/openclaw/openclaw/pull/142935). Thanks @vincentkoc. -- Accept native iOS signing keychain filenames [#142968](https://github.com/openclaw/openclaw/pull/142968). Thanks @vincentkoc. -- Preserve the iOS signing tool environment [#143301](https://github.com/openclaw/openclaw/pull/143301). Thanks @vincentkoc. -- Match validation runs with omitted empty inputs [#143421](https://github.com/openclaw/openclaw/pull/143421). Thanks @RomneyDa. -- Include required plugins in candidate preparation [#143452](https://github.com/openclaw/openclaw/pull/143452). Thanks @RomneyDa. -- Validate Anthropic cache behavior against candidate capabilities [#143508](https://github.com/openclaw/openclaw/pull/143508). Thanks @RomneyDa. -- Match Telegram release checks to package source [#143510](https://github.com/openclaw/openclaw/pull/143510). Thanks @RomneyDa. -- Exclude unpublished same-version upgrade baselines [#143567](https://github.com/openclaw/openclaw/pull/143567). Thanks @RomneyDa. +- Handle large tooling archives during mobile beta authorization [#142360](https://github.com/openclaw/openclaw/pull/142360). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Restore Bun execution in installation smoke checks [#142428](https://github.com/openclaw/openclaw/pull/142428). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Supply the release Node version to frozen installer tests [#142431](https://github.com/openclaw/openclaw/pull/142431). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Keep mobile beta authorization valid as main advances [#142432](https://github.com/openclaw/openclaw/pull/142432). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Repair helper loading for historical upgrade checks [#142441](https://github.com/openclaw/openclaw/pull/142441). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Align frozen 2026.7.33 Docker validation [#142456](https://github.com/openclaw/openclaw/pull/142456). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Match frozen onboarding tests to release helpers [#142467](https://github.com/openclaw/openclaw/pull/142467). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Record the reviewed Codex test scan finding [#142474](https://github.com/openclaw/openclaw/pull/142474). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Set mobile beta screenshot prerequisites [#142523](https://github.com/openclaw/openclaw/pull/142523). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Match ClawHub fixture requests to frozen candidates [#142551](https://github.com/openclaw/openclaw/pull/142551). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Forward release Node version to Rocky installer probes [#142562](https://github.com/openclaw/openclaw/pull/142562). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Select a supported runtime for Bun install checks [#142563](https://github.com/openclaw/openclaw/pull/142563). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Repair frozen-package update validation fixtures [#142573](https://github.com/openclaw/openclaw/pull/142573). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Fetch release ancestry branches independently [#142643](https://github.com/openclaw/openclaw/pull/142643). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Derive frozen-release expectations from selected source [#142683](https://github.com/openclaw/openclaw/pull/142683). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Preserve Git selection in frozen-release tests [#142686](https://github.com/openclaw/openclaw/pull/142686). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Match frozen-package Telegram tests to supported scenarios [#142687](https://github.com/openclaw/openclaw/pull/142687). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Correct frozen dirty-checkout exit expectations [#142727](https://github.com/openclaw/openclaw/pull/142727). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Qualify Telegram progress tests against frozen source [#142731](https://github.com/openclaw/openclaw/pull/142731). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Prepare Watch Rust tools for iOS beta builds [#142762](https://github.com/openclaw/openclaw/pull/142762). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Isolate iOS release signing keys [#142846](https://github.com/openclaw/openclaw/pull/142846). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Identify incompatible release-validation evidence [#142906](https://github.com/openclaw/openclaw/pull/142906). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Check image size limits before Vercel copying [#142908](https://github.com/openclaw/openclaw/pull/142908). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Match frozen bundle validation clients to source [#142926](https://github.com/openclaw/openclaw/pull/142926). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Stop frozen checks on committed-source read errors [#142930](https://github.com/openclaw/openclaw/pull/142930). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Isolate frozen-suite compatibility checks [#142935](https://github.com/openclaw/openclaw/pull/142935). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Accept native iOS signing keychain filenames [#142968](https://github.com/openclaw/openclaw/pull/142968). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Preserve the iOS signing tool environment [#143301](https://github.com/openclaw/openclaw/pull/143301). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Match validation runs with omitted empty inputs [#143421](https://github.com/openclaw/openclaw/pull/143421). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Include required plugins in candidate preparation [#143452](https://github.com/openclaw/openclaw/pull/143452). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Validate Anthropic cache behavior against candidate capabilities [#143508](https://github.com/openclaw/openclaw/pull/143508). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Match Telegram release checks to package source [#143510](https://github.com/openclaw/openclaw/pull/143510). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Exclude unpublished same-version upgrade baselines [#143567](https://github.com/openclaw/openclaw/pull/143567). Thanks [@RomneyDa](https://github.com/RomneyDa). - Use published plugins for correction-version upgrade baselines [#143681](https://github.com/openclaw/openclaw/pull/143681) - Register the 2026.9.4 plugin scan policy [#143807](https://github.com/openclaw/openclaw/pull/143807) -- Load older candidates in Anthropic cache checks [#143810](https://github.com/openclaw/openclaw/pull/143810). Thanks @RomneyDa. -- Match Telegram queue validation to candidate capabilities [#143811](https://github.com/openclaw/openclaw/pull/143811). Thanks @RomneyDa. -- Validate contracts for omitted Docker test aliases [#144129](https://github.com/openclaw/openclaw/pull/144129). Thanks @vincentkoc. +- Load older candidates in Anthropic cache checks [#143810](https://github.com/openclaw/openclaw/pull/143810). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Match Telegram queue validation to candidate capabilities [#143811](https://github.com/openclaw/openclaw/pull/143811). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Validate contracts for omitted Docker test aliases [#144129](https://github.com/openclaw/openclaw/pull/144129). Thanks [@vincentkoc](https://github.com/vincentkoc). **Documentation** - Refresh release summaries and contribution records [685ae1b0](https://github.com/openclaw/openclaw/commit/685ae1b0c81ca9dec95e3c10f3d4b4ffffe69d46) - Add the 2026.9.4 changelog section [dd178db5](https://github.com/openclaw/openclaw/commit/dd178db54d088b3ee251f5e99e4081bad0f8fc51) - Document qualification with final release notes already committed [#141786](https://github.com/openclaw/openclaw/pull/141786) -- Add the v2026.9.3 release documentation page [#142277](https://github.com/openclaw/openclaw/pull/142277). Thanks @hannesrudolph. -- Align v2026.9.3 release-page framing with its announcement [#142307](https://github.com/openclaw/openclaw/pull/142307). Thanks @hannesrudolph. +- Add the v2026.9.3 release documentation page [#142277](https://github.com/openclaw/openclaw/pull/142277). Thanks [@hannesrudolph](https://github.com/hannesrudolph). +- Align v2026.9.3 release-page framing with its announcement [#142307](https://github.com/openclaw/openclaw/pull/142307). Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Align release validation guidance with notes preparation [#142328](https://github.com/openclaw/openclaw/pull/142328) -- Temporarily rename the v2026.9.3 statistics label [#142437](https://github.com/openclaw/openclaw/pull/142437). Thanks @hannesrudolph. +- Temporarily rename the v2026.9.3 statistics label [#142437](https://github.com/openclaw/openclaw/pull/142437). Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Correct ClawHub release-verification instructions [#142458](https://github.com/openclaw/openclaw/pull/142458) -- Correct extended-stable validation instructions [#142538](https://github.com/openclaw/openclaw/pull/142538). Thanks @RomneyDa. -- Restore the v2026.9.3 statistics label [#142541](https://github.com/openclaw/openclaw/pull/142541). Thanks @hannesrudolph. -- Organize release validation guidance by task [#142774](https://github.com/openclaw/openclaw/pull/142774). Thanks @vincentkoc. -- Split release-validation documentation into focused guides [#143163](https://github.com/openclaw/openclaw/pull/143163). Thanks @vincentkoc. -- Use HTTP liveness for unauthenticated release checks [#143709](https://github.com/openclaw/openclaw/pull/143709). Thanks @vincentkoc. -- Record landed repairs and contributor credit [#144440](https://github.com/openclaw/openclaw/pull/144440). Thanks @vincentkoc. +- Correct extended-stable validation instructions [#142538](https://github.com/openclaw/openclaw/pull/142538). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Restore the v2026.9.3 statistics label [#142541](https://github.com/openclaw/openclaw/pull/142541). Thanks [@hannesrudolph](https://github.com/hannesrudolph). +- Organize release validation guidance by task [#142774](https://github.com/openclaw/openclaw/pull/142774). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split release-validation documentation into focused guides [#143163](https://github.com/openclaw/openclaw/pull/143163). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Use HTTP liveness for unauthenticated release checks [#143709](https://github.com/openclaw/openclaw/pull/143709). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Record landed repairs and contributor credit [#144440](https://github.com/openclaw/openclaw/pull/144440). Thanks [@vincentkoc](https://github.com/vincentkoc). @@ -4613,22 +4613,22 @@ The dependency-install guard is bypassed when lifecycle scripts are disabled and - Add tooling for captioned and zoomed PR videos without audio [#142259](https://github.com/openclaw/openclaw/pull/142259) - Refresh selected translations with native context and retained aliases [#142260](https://github.com/openclaw/openclaw/pull/142260) - Load the compiler only when development checks need it [#142338](https://github.com/openclaw/openclaw/pull/142338) -- Remove unused update-triage result metadata [#142345](https://github.com/openclaw/openclaw/pull/142345). Thanks @vincentkoc. -- Reduce documentation sync source downloads [#142400](https://github.com/openclaw/openclaw/pull/142400). Thanks @hannesrudolph. +- Remove unused update-triage result metadata [#142345](https://github.com/openclaw/openclaw/pull/142345). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Reduce documentation sync source downloads [#142400](https://github.com/openclaw/openclaw/pull/142400). Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Remove obsolete people-loading translation data [#142420](https://github.com/openclaw/openclaw/pull/142420) - Combine duplicate architecture-checker scans [#142451](https://github.com/openclaw/openclaw/pull/142451) -- Reuse documentation checks and validate after rebase [#142475](https://github.com/openclaw/openclaw/pull/142475). Thanks @hannesrudolph. +- Reuse documentation checks and validate after rebase [#142475](https://github.com/openclaw/openclaw/pull/142475). Thanks [@hannesrudolph](https://github.com/hannesrudolph). - Reduce repeated lint startup for larger changes [#142691](https://github.com/openclaw/openclaw/pull/142691) - Synchronize a screenshot-fixture translation label [#142714](https://github.com/openclaw/openclaw/pull/142714) -- Consolidate QA Lab YAML validation diagnostics [#143016](https://github.com/openclaw/openclaw/pull/143016). Thanks @vincentkoc. -- Route session-history HTTP tests without full build prerequisites [#143096](https://github.com/openclaw/openclaw/pull/143096). Thanks @vincentkoc. +- Consolidate QA Lab YAML validation diagnostics [#143016](https://github.com/openclaw/openclaw/pull/143016). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Route session-history HTTP tests without full build prerequisites [#143096](https://github.com/openclaw/openclaw/pull/143096). Thanks [@vincentkoc](https://github.com/vincentkoc). - Remove unused global documentation audit indexes [#143164](https://github.com/openclaw/openclaw/pull/143164) - Reuse numeric flag parsing in performance tests [#143237](https://github.com/openclaw/openclaw/pull/143237) - Clarify CI watcher progress and timeout output [#143320](https://github.com/openclaw/openclaw/pull/143320) - Avoid repeated SDK export traversal [#143393](https://github.com/openclaw/openclaw/pull/143393) -- Skip unnecessary SDK guard parsing [#143513](https://github.com/openclaw/openclaw/pull/143513). Thanks @RomneyDa. -- Share task audit summary counting [#143682](https://github.com/openclaw/openclaw/pull/143682). Thanks @vincentkoc. -- Share dead-code scan orchestration [#143745](https://github.com/openclaw/openclaw/pull/143745). Thanks @vincentkoc. +- Skip unnecessary SDK guard parsing [#143513](https://github.com/openclaw/openclaw/pull/143513). Thanks [@RomneyDa](https://github.com/RomneyDa). +- Share task audit summary counting [#143682](https://github.com/openclaw/openclaw/pull/143682). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Share dead-code scan orchestration [#143745](https://github.com/openclaw/openclaw/pull/143745). Thanks [@vincentkoc](https://github.com/vincentkoc). - Refresh translation records for Skills screens [#143806](https://github.com/openclaw/openclaw/pull/143806) - Refresh snapshot translation records [#143914](https://github.com/openclaw/openclaw/pull/143914) - Reuse plugin metadata during docs generation [#144120](https://github.com/openclaw/openclaw/pull/144120) @@ -4637,34 +4637,34 @@ The dependency-install guard is bypassed when lifecycle scripts are disabled and - Keep local test worker counts consistent across projects [#141716](https://github.com/openclaw/openclaw/pull/141716) - Prevent source installs from modifying another checkout's dependencies [#141719](https://github.com/openclaw/openclaw/pull/141719) -- Label pull requests editing split documentation pages [#142677](https://github.com/openclaw/openclaw/pull/142677). Thanks @vincentkoc. -- Extend plugin documentation label coverage [#142735](https://github.com/openclaw/openclaw/pull/142735). Thanks @vincentkoc. -- Track shared native-translation inputs [#142786](https://github.com/openclaw/openclaw/pull/142786). Thanks @vincentkoc. -- Distinguish declared ClawHub routes from unverified headings in audits [#143002](https://github.com/openclaw/openclaw/pull/143002). Thanks @vincentkoc. -- Allow the approved historical pnpm pin in isolated checks [#143129](https://github.com/openclaw/openclaw/pull/143129). Thanks @vincentkoc. +- Label pull requests editing split documentation pages [#142677](https://github.com/openclaw/openclaw/pull/142677). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Extend plugin documentation label coverage [#142735](https://github.com/openclaw/openclaw/pull/142735). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Track shared native-translation inputs [#142786](https://github.com/openclaw/openclaw/pull/142786). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Distinguish declared ClawHub routes from unverified headings in audits [#143002](https://github.com/openclaw/openclaw/pull/143002). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Allow the approved historical pnpm pin in isolated checks [#143129](https://github.com/openclaw/openclaw/pull/143129). Thanks [@vincentkoc](https://github.com/vincentkoc). - Audit unused exports after script and root-test changes [#143268](https://github.com/openclaw/openclaw/pull/143268) - Preserve fenced examples during documentation formatting [#143394](https://github.com/openclaw/openclaw/pull/143394) - Report original source lines in documentation errors [#143404](https://github.com/openclaw/openclaw/pull/143404) - Detect overdue documentation during steady edits [#143455](https://github.com/openclaw/openclaw/pull/143455) -- Distinguish interrupted development runners from completed stops [#143676](https://github.com/openclaw/openclaw/pull/143676). Thanks @shakkernerd. +- Distinguish interrupted development runners from completed stops [#143676](https://github.com/openclaw/openclaw/pull/143676). Thanks [@shakkernerd](https://github.com/shakkernerd). - Recover locale imports after source errors [#143776](https://github.com/openclaw/openclaw/pull/143776) **Documentation** -- Organize testing guidance by task [#141221](https://github.com/openclaw/openclaw/pull/141221). Thanks @vincentkoc. +- Organize testing guidance by task [#141221](https://github.com/openclaw/openclaw/pull/141221). Thanks [@vincentkoc](https://github.com/vincentkoc). - Refresh maturity evidence and coverage reports [#141910](https://github.com/openclaw/openclaw/pull/141910) -- Split testing guidance into focused pages [#141968](https://github.com/openclaw/openclaw/pull/141968). Thanks @vincentkoc. -- Validate maturity documentation routes and anchors [#141977](https://github.com/openclaw/openclaw/pull/141977). Thanks @RomneyDa. +- Split testing guidance into focused pages [#141968](https://github.com/openclaw/openclaw/pull/141968). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Validate maturity documentation routes and anchors [#141977](https://github.com/openclaw/openclaw/pull/141977). Thanks [@RomneyDa](https://github.com/RomneyDa). - Refresh maturity scorecard evidence [#142114](https://github.com/openclaw/openclaw/pull/142114) -- Split QA automation guidance into focused pages [#142426](https://github.com/openclaw/openclaw/pull/142426). Thanks @vincentkoc. -- Link live-test filtering guidance to its current page [#142560](https://github.com/openclaw/openclaw/pull/142560). Thanks @vincentkoc. +- Split QA automation guidance into focused pages [#142426](https://github.com/openclaw/openclaw/pull/142426). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Link live-test filtering guidance to its current page [#142560](https://github.com/openclaw/openclaw/pull/142560). Thanks [@vincentkoc](https://github.com/vincentkoc). - Keep SDK alias removal pending review [#142708](https://github.com/openclaw/openclaw/pull/142708) -- Keep routine repository output inline [#142946](https://github.com/openclaw/openclaw/pull/142946). Thanks @vincentkoc. -- Organize live-testing documentation by test task [#143042](https://github.com/openclaw/openclaw/pull/143042). Thanks @vincentkoc. -- Split CI routing guidance into focused pages [#143053](https://github.com/openclaw/openclaw/pull/143053). Thanks @vincentkoc. +- Keep routine repository output inline [#142946](https://github.com/openclaw/openclaw/pull/142946). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Organize live-testing documentation by test task [#143042](https://github.com/openclaw/openclaw/pull/143042). Thanks [@vincentkoc](https://github.com/vincentkoc). +- Split CI routing guidance into focused pages [#143053](https://github.com/openclaw/openclaw/pull/143053). Thanks [@vincentkoc](https://github.com/vincentkoc). - Refresh CI and plugin validation guidance [#143287](https://github.com/openclaw/openclaw/pull/143287) - Document temporary defensive-work model routing [#143698](https://github.com/openclaw/openclaw/pull/143698) -- Consolidate contributor guidance and subsystem ownership [#143785](https://github.com/openclaw/openclaw/pull/143785). Thanks @obviyus and @vincentkoc. +- Consolidate contributor guidance and subsystem ownership [#143785](https://github.com/openclaw/openclaw/pull/143785). Thanks [@obviyus](https://github.com/obviyus) and [@vincentkoc](https://github.com/vincentkoc). @@ -4679,11 +4679,11 @@ A change to conversation-marker spacing was undone. Both changes are listed belo **Improvements** -- Record the reverted conversation rail spacing adjustment [#142667](https://github.com/openclaw/openclaw/pull/142667). Thanks @Patrick-Erichsen. +- Record the reverted conversation rail spacing adjustment [#142667](https://github.com/openclaw/openclaw/pull/142667). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen). **Bug fixes** -- Revert the canceled conversation rail spacing adjustment [#142684](https://github.com/openclaw/openclaw/pull/142684). Thanks @Patrick-Erichsen. +- Revert the canceled conversation rail spacing adjustment [#142684](https://github.com/openclaw/openclaw/pull/142684). Thanks [@Patrick-Erichsen](https://github.com/Patrick-Erichsen).