Commit Graph

2957 Commits

Author SHA1 Message Date
Peter Steinberger
3e8b5b4ee7 fix: skip npm uninstall when managed root is absent 2026-05-06 22:06:59 +01:00
Peter Steinberger
858038320d fix: clean stale managed npm plugin deps on uninstall 2026-05-06 22:06:59 +01:00
Peter Steinberger
4f73cd23b7 test(plugins): cache bundled metadata fixture scans 2026-05-06 21:11:09 +01:00
Peter Steinberger
a74b459f7a test(plugins): reuse conversation binding imports 2026-05-06 21:06:03 +01:00
Peter Steinberger
0eeb19f300 test(plugins): parallelize publishable package scans 2026-05-06 20:51:01 +01:00
Vincent Koc
aa9247e0ce fix(plugins): skip managed npm peer resolution (#78348) 2026-05-06 12:17:34 -07: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
Shakker
3dffef651b fix: reuse turn plugin metadata snapshot 2026-05-06 17:33:46 +01:00
Shakker
c795a1a8ef fix: propagate diagnostics timeline phase 2026-05-06 17:33:46 +01:00
Peter Steinberger
99b17263a1 perf: avoid duplicate provider policy artifact misses 2026-05-06 16:17:58 +01:00
Jesse Merhi
1c42c77433 feat: add user input blocking lifecycle gates (#75035)
Summary:
- The PR adds a `before_agent_run` plugin hook with pass/block decisions, redacted blocked-turn persistence, diagnostics/docs/changelog updates, and focused runner, gateway, session, and plugin tests.
- Reproducibility: not applicable. as a feature PR rather than a current-main bug report. Current main lacks ` ... un`, while the PR head adds source coverage and copied live Gateway/WebChat log proof for the new behavior.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix: trim before agent hook PR scope
- PR branch already contained follow-up commit before automerge: fix: keep before-agent blocks redacted
- PR branch already contained follow-up commit before automerge: fix: keep runtime context out of model prompt
- PR branch already contained follow-up commit before automerge: docs: refresh config baseline after rebase
- PR branch already contained follow-up commit before automerge: fix: align blocked turn clients with redacted content
- PR branch already contained follow-up commit before automerge: fix: remove out-of-scope client block UI changes

Validation:
- ClawSweeper review passed for head 767e46fde8.
- Required merge gates passed before the squash merge.

Prepared head SHA: 767e46fde8
Review: https://github.com/openclaw/openclaw/pull/75035#issuecomment-4351843275

Co-authored-by: Jesse Merhi <jessejmerhi@gmail.com>
Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-05-06 11:41:04 +00:00
Peter Steinberger
8256b747be test(perf): narrow provider contract imports 2026-05-06 11:40:15 +01:00
Vincent Koc
5d557171b3 fix(plugins): apply npm overrides to managed roots (#78386) 2026-05-06 02:47:25 -07:00
Vincent Koc
0ddbf2e258 fix(plugins): keep managed npm mutations in legacy peer mode 2026-05-06 01:29:52 -07:00
Peter Steinberger
2eaf8ad712 feat(plugins): support npm pack installs 2026-05-06 09:16:49 +01:00
Edionwheels
58f81b0e04 fix(codex): honor OAuth contextTokens in native harness
Fixes #77858.

Co-authored-by: Edionwheels <267595845+lilesjtu@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-05-06 08:54:52 +01:00
Peter Steinberger
5969ac8ccf test: parallelize plugin package scan 2026-05-06 08:38:58 +01:00
Peter Steinberger
900e416688 test: avoid deepseek loader cold path 2026-05-06 08:17:44 +01:00
Peter Steinberger
95fd321b68 test: mock web provider fast-path artifacts 2026-05-06 08:08:48 +01:00
Peter Steinberger
8f3a34e2a1 refactor: share fs-safe JSON helpers 2026-05-06 07:40:10 +01:00
Peter Steinberger
8e533490ab fix(plugins): repair managed npm openclaw peers
Remove stale managed-root openclaw manifests, locks, hidden locks, and installed copies before npm plugin installs.

Relink plugin-local openclaw peer symlinks after shared-root npm install, rollback, update, and uninstall mutations so SDK-using plugins keep resolving openclaw/plugin-sdk/*.

Force safe npm commands out of inherited legacy/strict peer-dependency modes.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-06 07:32:25 +01:00
Peter Steinberger
e9987ffc3a fix: clamp xAI live gateway thinking 2026-05-06 05:33:38 +01:00
pickaxe
d221d7b6a9 fix(plugins): isolate peer-link repair failures 2026-05-06 05:13:01 +01:00
pickaxe
4d248b887f test(plugins): remove unnecessary peer-link assertion 2026-05-06 05:13:01 +01:00
pickaxe
fb42c722f0 fix(plugins): repair peer links after npm updates 2026-05-06 05:13:01 +01:00
Peter Steinberger
b85b1c68d1 Refactor file access to use fs-safe primitives (#78255)
* refactor: use fs-safe primitives across file access

* fix: preserve invalid managed npm manifests

* fix: keep fs seams for startup metadata
2026-05-06 05:03:11 +01:00
Peter Steinberger
9e108fa9a7 fix: repair fs-safe ci expectations 2026-05-06 02:56:12 +01:00
Peter Steinberger
8294229592 test: refresh fs-safe boundary expectations 2026-05-06 02:50:36 +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
601b4819cb test: refresh plugin loader boundary assertions 2026-05-06 02:24:43 +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
e3b0707a53 fix: preserve source plugin loading fallbacks 2026-05-06 01:46:42 +01:00
hcl
d193d15f17 fix(plugins): explain source-only package diagnostics (#77835) (#77842) 2026-05-05 17:43:13 -07:00
Vincent Koc
2014c2327b fix(plugins): sync official plugin installs during update (#78065)
* fix(plugins): sync official npm installs during update

* fix(plugins): sync official clawhub installs during update

* test(update): mock official plugin sync helpers

---------

Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-05 17:27:32 -07:00
Peter Steinberger
093b2b9b5f test: speed extension and contract scenarios 2026-05-06 00:54:06 +01:00
Vincent Koc
92b04557a6 test(plugins): accept shared bundled runtime roots 2026-05-05 15:47:29 -07:00
Patrick Erichsen
8aa7b7a4ca Tolerate corrupt plugins during update (#77706)
* fix(update): tolerate corrupt plugin state

* fix(update): preserve corrupt plugin proof state

* fix(update): narrow corrupt plugin warnings

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-05-05 14:18:26 -07:00
scoootscooob
79dd65e208 feat(voice-call): improve realtime Meet voice agent
* feat(voice-call): inject agent context into realtime voice

* fix(voice-call): stabilize realtime meet audio

* fix(voice-call): delegate realtime consults to agent

* Improve realtime Meet voice consult routing

* Pin voice consult delivery to call session

* Move voice changelog entries to changes

* fix(voice-call): isolate final realtime transcripts

* test(voice-call): trim redundant realtime coverage
2026-05-05 12:56:31 -07:00
Peter Steinberger
35da7d2c99 refactor: remove legacy agent dir resolver 2026-05-05 20:07:49 +01:00
Peter Steinberger
55d1cf87d7 refactor: compute base config schema at runtime 2026-05-05 19:55:36 +01:00
Peter Steinberger
64b1f5fbf4 test: speed up changed test paths 2026-05-05 19:48:19 +01:00
Pumpkin Xing
5fae1c32b5 fix(plugins): forward install records to channel catalog registry (#77269)
Merged via squash.

Prepared head SHA: d06034b037
Co-authored-by: pumpkinxing1 <271513653+pumpkinxing1@users.noreply.github.com>
Co-authored-by: odysseus0 <8635094+odysseus0@users.noreply.github.com>
Reviewed-by: @odysseus0
2026-05-05 10:47:01 -07:00
Alex Knight
cd24da031b feat(plugin-sdk): expose sessionTarget and agentId on cron_changed hook events (#77641) 2026-05-05 18:48:06 +10:00
Vincent Koc
b0f841ef37 fix(plugins): honor beta channel for auto installs 2026-05-04 21:33:46 -07:00
pickaxe
2e8761c5c1 fix(plugins): repair missing openclaw peer links on update 2026-05-05 05:04:22 +01:00
Peter Steinberger
0eb06caae3 fix: start configured generation providers 2026-05-05 05:03:54 +01:00
Vincent Koc
0131343db8 docs(doctor): clarify configured plugin repair (#77613) 2026-05-04 18:16:29 -07:00
Peter Steinberger
0747e63006 test(plugins): align metadata snapshot policy fixtures 2026-05-05 02:09:50 +01:00
Peter Steinberger
b17bb63b9e fix: repair stale session route state in doctor 2026-05-05 01:51:23 +01:00