Peter Steinberger
252a76d25c
refactor: stage external output writes through fs-safe
2026-05-07 06:05:24 +01:00
Peter Steinberger
58fa23b4a2
test: align fs-safe dependency expectations
2026-05-07 04:16:13 +01:00
Shakker
f011d6bc0a
Fix repeated Codex native approval prompts after allow-always ( #78234 )
...
* fix: reuse codex native approvals
* fix: scope native approval reuse by session
* fix: let codex guardian own native permission approvals
* fix: refresh plugin approval protocol models
---------
Co-authored-by: pashpashpash <nik@vault77.ai >
2026-05-07 05:55:38 +09:00
Peter Steinberger
3baf4de2cf
test(commands): skip temp home cleanup in agent suite
2026-05-06 21:25:48 +01:00
Josh Lehman
b22c8998ca
fix(doctor): discover load-path plugin contracts ( #77477 )
...
Merged via squash.
Prepared head SHA: d428fd47f5
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Reviewed-by: @jalehman
2026-05-06 11:50:47 -07:00
Peter Steinberger
4c177bbe65
test(perf): fold duplicate compaction fallback coverage
2026-05-06 16:57:12 +01:00
Shakker
79f21a4442
fix: normalize symbolic fetch headers
2026-05-06 15:40:33 +01:00
Peter Steinberger
8256b747be
test(perf): narrow provider contract imports
2026-05-06 11:40:15 +01:00
Peter Steinberger
1d3efb7e9e
test(perf): trim focused runtime contract imports
2026-05-06 11:23:49 +01:00
Vincent Koc
16321a27b6
fix(talk): add bounded lifecycle logging
2026-05-06 03:02:02 -07:00
Vincent Koc
e2501b2d6d
fix(diagnostics): export Talk metrics after SDK refactor
...
Adds bounded Talk lifecycle/audio diagnostics and session recovery metrics for OTEL, Prometheus, and stability snapshots after the Talk SDK/session refactor. Includes changelog/docs updates and Testbox/live proof.
2026-05-06 02:01:52 -07:00
Peter Steinberger
3915089a25
test: cache provider contract entries
2026-05-06 08:51:25 +01:00
Shakker
d52f581f76
fix: avoid fetch runtime proxy imports
2026-05-06 07:01:02 +01:00
Peter Steinberger
f1636d5e28
refactor: unify talk session runtime
2026-05-06 02:39:15 +01:00
Peter Steinberger
c90c68c636
feat: add shared talk runtime primitives
2026-05-06 02:39:15 +01:00
Peter Steinberger
538605ff44
[codex] Extract filesystem safety primitives ( #77918 )
...
* refactor: extract filesystem safety primitives
* refactor: use fs-safe for file access helpers
* refactor: reuse fs-safe for media reads
* refactor: use fs-safe for image reads
* refactor: reuse fs-safe in qqbot media opener
* refactor: reuse fs-safe for local media checks
* refactor: consume cleaner fs-safe api
* refactor: align fs-safe json option names
* fix: preserve fs-safe migration contracts
* refactor: use fs-safe primitive subpaths
* refactor: use grouped fs-safe subpaths
* refactor: align fs-safe api usage
* refactor: adapt private state store api
* chore: refresh proof gate
* refactor: follow fs-safe json api split
* refactor: follow reduced fs-safe surface
* build: default fs-safe python helper off
* fix: preserve fs-safe plugin sdk aliases
* refactor: consolidate fs-safe usage
* refactor: unify fs-safe store usage
* refactor: trim fs-safe temp workspace usage
* refactor: hide low-level fs-safe primitives
* build: use published fs-safe package
* fix: preserve outbound recovery durability after rebase
* chore: refresh pr checks
2026-05-06 02:15:17 +01:00
Peter Steinberger
8bfabd6bb1
feat: add channel message lifecycle sdk
2026-05-06 01:46:42 +01:00
Peter Steinberger
e428a2dfe2
test: add focused seams for faster isolated tests
2026-05-06 00:53:05 +01:00
Peter Steinberger
d94e7f5114
fix(discord): show reasoning text in progress drafts ( #78050 )
...
* fix(discord): show reasoning text in progress drafts
* fix(discord): handle reasoning progress snapshots
* test: isolate usage-format models fixture
2026-05-05 21:57:00 +01:00
Peter Steinberger
782963ae66
refactor: compact generated protocol metadata
2026-05-05 20:47:38 +01:00
Peter Steinberger
35da7d2c99
refactor: remove legacy agent dir resolver
2026-05-05 20:07:49 +01:00
Vincent Koc
177167c846
fix(video): recover generation parameter fallbacks
2026-05-04 22:26:58 -07:00
Peter Steinberger
b17bb63b9e
fix: repair stale session route state in doctor
2026-05-05 01:51:23 +01:00
Sally O'Malley
02ac7dc5a6
fix(openrouter): keep DeepSeek V4 reasoning effort valid ( #77423 )
...
Summary:
- The PR removes `max` from OpenRouter DeepSeek V4 thinking profiles, maps stale OpenRouter `max` overrides to `xhigh`, preserves direct DeepSeek behavior, and updates docs, tests, and changelog.
- Reproducibility: yes. Source inspection on current main shows OpenRouter DeepSeek V4 advertises `max` and se ... ffort: "max"`, matching the linked 400 logs; I did not need a live OpenRouter request for this assist pass.
Automerge notes:
- Ran the ClawSweeper repair loop before final review.
- Addressed earlier ClawSweeper review findings before merge.
- Included post-review commit in the final squash: docs(changelog): credit OpenRouter duplicate fix
- Included post-review commit in the final squash: fix(openrouter): keep DeepSeek V4 reasoning effort valid
Validation:
- ClawSweeper review passed for head becdea4223 .
- Required merge gates passed before the squash merge.
Prepared head SHA: becdea4223
Review: https://github.com/openclaw/openclaw/pull/77423#issuecomment-4372880583
Co-authored-by: sallyom <somalley@redhat.com >
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-05-04 21:05:05 +00:00
stain lu
74ab62c6a2
fix: pass claude cli thinking effort ( #77410 )
...
Summary:
- Adds a plugin-owned CLI backend argument rewrite hook and wires Anthropic `claude-cli` to translate non-off `/think` levels into Claude Code `--effort`, with docs, changelog, API baseline, and tests.
- Reproducibility: yes. Current main has a high-confidence source reproduction: choose `claude-cli`, set a non ... builds argv from backend args that contain no `--effort` even though `thinkLevel` exists on the run params.
Automerge notes:
- No ClawSweeper repair was needed after automerge opt-in.
Validation:
- ClawSweeper review passed for head be17754009 .
- Required merge gates passed before the squash merge.
Prepared head SHA: be17754009
Review: https://github.com/openclaw/openclaw/pull/77410#issuecomment-4372812685
Co-authored-by: stainlu <stainlu@newtype-ai.org >
2026-05-04 18:13:53 +00:00
Eva
cb38535875
[plugin sdk] Project session extension slots ( #75609 )
...
Merged via squash.
Prepared head SHA: d9b670a867
Co-authored-by: 100yenadmin <239388517+100yenadmin@users.noreply.github.com >
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Reviewed-by: @jalehman
2026-05-04 08:04:27 -07:00
Val Alexander
098b72910d
Refine responsive Control UI chat controls
...
Summary:
- Add agent-scoped Control chat session filtering and agent-first session controls.
- Refine responsive chat controls, transcript, result-panel, and duplicate-message behavior.
- Reduce chat load churn by avoiding duplicate initial avatar refreshes.
Verification:
- pnpm test ui/src/ui/app-gateway.node.test.ts ui/src/ui/app-gateway-chat-load.node.test.ts ui/src/ui/chat/chat-responsive.browser.test.ts ui/src/ui/app-render.helpers.browser.test.ts ui/src/ui/app-render.helpers.node.test.ts ui/src/ui/views/chat.test.ts ui/src/ui/app-scroll.test.ts
- pnpm test src/plugin-sdk/file-lock.test.ts
- pnpm exec oxfmt --check --threads=1 ui/src/ui/chat/chat-responsive.browser.test.ts src/plugin-sdk/file-lock.test.ts
- pnpm --dir ui build
- Testbox pnpm check:changed: https://github.com/openclaw/openclaw/actions/runs/25309629891
- PR CI on cd22d3d1ab : https://github.com/openclaw/openclaw/actions/runs/25310534399
2026-05-04 04:10:33 -05:00
Vincent Koc
6e8cdd7d59
test(plugin): harden source loader fallback tests
2026-05-04 01:40:58 -07:00
Peter Steinberger
585ce38015
fix(telegram): stabilize topic dispatch runtime
2026-05-04 08:25:09 +01:00
Peter Steinberger
605e89468e
fix(discord): avoid blocking startup on probe ( #77129 )
...
* fix(discord): avoid blocking startup on probe
* fix(discord): clear degraded probe status
* test(plugin-sdk): isolate jiti loader override
* test(plugin-sdk): fix circular facade fixture path
* fix(plugins): preserve sdk aliases for native loads
* fix(plugins): route sdk alias loads through transform
2026-05-04 07:41:42 +01:00
Peter Steinberger
fa689295c6
fix: resolve small triage issues
2026-05-04 07:38:42 +01:00
Val Alexander
21ac476904
fix(telegram): stabilize reply dispatch runtime
...
Summary:
- Add a stable provider-dispatcher dist entry and legacy alias coverage for stale reply-dispatch chunks.
- Make Telegram reasoning stream previews transient after final delivery and harden visible-send reasoning sanitization.
- Document transient /reasoning stream behavior and credit @BunsDev in the changelog.
Verification:
- pnpm test src/agents/tools/message-tool.test.ts src/infra/tsdown-config.test.ts test/scripts/runtime-postbuild.test.ts extensions/telegram/src/bot-message-dispatch.test.ts src/plugin-sdk/channel-streaming.test.ts src/plugin-sdk/channel-entry-contract.test.ts
- OPENCLAW_VITEST_MAX_WORKERS=1 pnpm test src/channels/plugins/module-loader.test.ts src/plugin-sdk/channel-entry-contract.test.ts
- pnpm exec oxfmt --check --threads=1 <changed files>
- git diff --check
- pnpm build
- GitHub PR checks for b8b7a91834
2026-05-04 01:07:57 -05:00
Peter Steinberger
eeff1f7cb6
test: satisfy jiti mock type contracts
2026-05-04 06:56:35 +01:00
Peter Steinberger
ea04e019ac
test: restore jiti override seams for loader tests
2026-05-04 06:56:35 +01:00
Peter Steinberger
cbd91676ac
fix: log google meet agent tts backend
2026-05-04 06:41:22 +01:00
Peter Steinberger
b5d408cd69
feat: add rich Slack progress drafts
2026-05-04 05:38:56 +01:00
Vincent Koc
973e240bb3
fix(channels): scope progress tool status config
2026-05-03 20:51:21 -07:00
Vincent Koc
8846fe0998
fix(channels): balance compact progress markdown
2026-05-03 19:59:47 -07:00
Peter Steinberger
a3c36a0931
fix: compact progress draft lines
2026-05-04 03:50:19 +01:00
Vincent Koc
c979ed3a3a
fix(channels): pass raw progress detail to drafts
2026-05-03 18:43:11 -07:00
Vincent Koc
df39e611f8
fix(channels): quiet disabled preview tool progress
2026-05-03 18:33:09 -07:00
Peter Steinberger
5d09b4b92c
feat(agents): add tool progress detail modes
2026-05-04 01:35:27 +01:00
Vincent Koc
34b3471f85
feat(openrouter): add opt-in response caching
...
Adds opt-in OpenRouter response caching params, preserves alias precedence across config scopes, and documents the behavior.\n\nVerification:\n- pnpm test:serial src/agents/pi-embedded-runner/proxy-stream-wrappers.test.ts src/agents/pi-embedded-runner-extraparams-openrouter.test.ts -- --reporter=verbose\n- pnpm exec oxfmt --check --threads=1 src/agents/pi-embedded-runner/proxy-stream-wrappers.ts src/plugin-sdk/provider-stream.ts src/agents/pi-embedded-runner/proxy-stream-wrappers.test.ts src/agents/pi-embedded-runner-extraparams-openrouter.test.ts docs/providers/openrouter.md CHANGELOG.md\n- git diff --check\n- Testbox tbx_01kqr4dakpsk9rswz9pem49nz0: pnpm check:changed (https://github.com/openclaw/openclaw/actions/runs/25294515012 )
2026-05-03 17:02:18 -07:00
Peter Steinberger
36c047c026
fix(channels): unify progress draft line formatting
2026-05-04 00:50:09 +01:00
Peter Steinberger
392897304c
fix(channels): delay progress drafts until work is visible
2026-05-04 00:22:13 +01:00
Peter Steinberger
88b983a713
fix: stabilize Google Meet realtime audio
2026-05-04 00:17:57 +01:00
Peter Steinberger
107aad9742
fix(channels): add ellipses to progress draft defaults
2026-05-04 00:05:02 +01:00
Vincent Koc
257c5a517f
fix(channels): normalize progress auto labels
2026-05-03 14:12:39 -07:00
Peter Steinberger
c33e578554
feat: add channel progress drafts
...
Adds unified progress-draft streaming for chat channels, with docs and per-channel regressions.
2026-05-03 22:01:08 +01:00
Peter Steinberger
ee6052a169
fix(bonjour): default LAN discovery on macOS only
...
Summary:
- add manifest-backed platform-specific default enablement for bundled plugins
- auto-start Bonjour LAN discovery on macOS hosts only
- keep Linux, Windows, and containerized Gateway deployments opt-in while preserving explicit enablement
Verification:
- pnpm test extensions/bonjour/src/advertiser.test.ts src/plugins/bundled-plugin-metadata.test.ts src/plugins/manifest-registry.test.ts src/plugins/channel-plugin-ids.test.ts
- pnpm exec oxfmt --check --threads=1 CHANGELOG.md docs/gateway/bonjour.md docs/gateway/configuration-reference.md docs/gateway/discovery.md docs/gateway/security/index.md docs/plugins/manifest.md extensions/bonjour/openclaw.plugin.json src/plugin-sdk/facade-activation-check.runtime.ts src/plugins/bundled-manifest-contract-plugins.ts src/plugins/bundled-plugin-metadata.test.ts src/plugins/channel-presence-policy.ts src/plugins/default-enablement.ts src/plugins/gateway-startup-plugin-ids.ts src/plugins/installed-plugin-index-record-builder.ts src/plugins/installed-plugin-index-store.ts src/plugins/installed-plugin-index-types.ts src/plugins/installed-plugin-index.ts src/plugins/loader.ts src/plugins/manifest-contract-eligibility.ts src/plugins/manifest-owner-policy.ts src/plugins/manifest-registry-installed.ts src/plugins/manifest-registry.test.ts src/plugins/manifest-registry.ts src/plugins/manifest.ts src/plugins/providers.ts
- git diff --check
- Testbox: pnpm check:changed via Blacksmith Testbox tbx_01kqqf3f8rbrt8afjtcg0ck7qs
Refs #74209
2026-05-03 19:07:27 +01:00