Peter Steinberger
f27980fec5
fix(plugin-sdk): restore sqlite compatibility shims
2026-05-27 21:37:00 +01:00
Peter Steinberger
d559e1dca6
Reapply "refactor: move runtime state to SQLite"
...
This reverts commit 694ca50e97 .
2026-05-27 21:36:57 +01:00
Peter Steinberger
bb46b79d3c
refactor: internalize OpenClaw agent runtime ( #85341 )
...
* refactor: extract agent core package
Introduce packages/agent-core as the OpenClaw-owned home for reusable agent loop, harness, session, prompt, and runtime dependency contracts.
* refactor: extract shared llm runtime
Move provider model registries, stream wrappers, OAuth helpers, and LLM utilities into src/llm with plugin-sdk barrels instead of depending on the old embedded runtime layout.
* refactor: remove pi runtime internals
Rename remaining Pi-shaped agent surfaces to OpenClaw agent runtime names, delete obsolete Pi docs and package graph checks, and add the third-party notice for incorporated code.
* refactor: tighten agent session runtime
Make agent-core/runtime dependencies explicit, consolidate compaction and session transcript helpers, and move model/session helpers behind OpenClaw-owned contracts.
* refactor: remove static model and pi auth paths
Drop static model catalogs and Pi auth bridges, move model/provider facts to manifest-owned runtime contracts, and harden internal embedded-agent utilities.
* refactor: remove legacy provider compat paths
* docs: remove agent parity notes
* fix: skip provider wildcard metadata parsing
* refactor: share session extension sdk loading
* refactor: inline acpx proxy error formatter
* refactor: fold edit recovery into edit tool
* fix: accept extension batch separator
* test: align startup provider plugin expectations
* fix: restore provider-scoped release discovery
* test: align static asset packaging expectations
* fix: run static provider catalogs during scoped discovery
* fix: add provider entry catalogs for scoped live discovery
* fix: load lightweight provider catalog entries
* fix: refresh provider-scoped plugin metadata
* fix: keep provider catalog entries on release live path
* fix: keep static manifest models in release live checks
* fix: harden release model discovery
* fix: reduce OpenAI live cache probe reasoning
* fix: disable OpenAI cache probe reasoning
* ci: extend OpenAI gateway live timeout
* fix: extend live gateway model budget
* fix: stabilize release validation regressions
* fix: honor provider aliases in model rows
* fix: stabilize release validation lanes
* fix: stabilize release memory qa
* ci: stabilize release validation lanes
* ci: prefer ipv4 for live docker node calls
* fix: restore shared tool-call stream wrapper
* ci: remove legacy pi test shard alias
* fix: clean up embedded agent test drift
* fix: stabilize runtime alias status
* fix: clean up embedded agent ci drift
* fix: restore release ci invariants
* fix: clean up post-rebase runtime drift
* fix: restore release ci checks
* fix: restore release ci after rebase
* fix: remove stale pi runtime path
* test: align compaction runtime expectations
* test: update plugin prerelease expectations
* fix: handle claude live tool approvals
* fix: stabilize release validation gates
* fix: finish agent runtime import
* test: finish post-rebase agent runtime mocks
* fix: keep codex compaction native
* fix: stabilize codex app-server hook tests
* test: isolate codex diagnostic active run
* test: remove codex diagnostic completion race
# Conflicts:
# extensions/codex/src/app-server/run-attempt.test.ts
* ci: fix full release manifest performance run id
* refactor: narrow llm plugin sdk boundary
* chore: drop generated google boundary stamps
* fix: repair rebase fallout
* fix: clean up rebased runtime references
* fix: decode codex jwt payloads as base64url
* fix: preserve shipped pi runtime alias
* fix: add scoped sdk virtual modules
* fix: decode llm codex oauth jwt as base64url
* fix: avoid stale vertex adc negative cache
* fix: harden tool arg decoding and codeql path
* fix: keep vertex adc negative checks live
* refactor: consolidate codex jwt and edit helpers
* fix: await codex oauth node runtime imports
* fix: preserve sdk tool and notice contracts
* fix: preserve shipped compat config boundaries
* fix: align codex oauth callback host
* fix: terminate agent-core loop streams on failure
* fix: keep codex oauth callback alive during fallback
* ci: include session tools in critical codeql scans
* fix: keep Cloudflare Anthropic provider auth header
* docs: redirect legacy pi runtime pages
* fix: honor bundled web provider compat discovery
* fix: protect session output spill files
* fix: keep legacy agent dir env blocked
* fix: contain auto-discovered skill symlinks
* fix: harden agent core sdk proxy surfaces
* fix: restore approval reaction sdk compat
* fix: keep live docker runs bounded
* fix: keep codex oauth redirect host aligned
* fix: resolve post-rebase agent runtime drift
* fix: redact anthropic oauth parse failures
* fix: preserve responses strict tool shaping
* fix: repair agent runtime rebase cleanup
* docs: redirect retired parity pages
* fix: bound auto-discovered resources to roots
* fix: repair post-rebase agent test drift
* fix: preserve bundled provider allowlist migration
* fix: preserve manifest-owned provider aliases
* fix: declare photon image dependency
* fix: keep provider headers out of proxy body
* fix: preserve shipped env aliases
* fix: refresh control ui i18n generated state
* fix: quote read fallback paths
* fix: preview edits through configured backend
* test: satisfy core test typecheck
* fix: preserve ZAI usage auth fallback
* test: repair codex diagnostic test
* fix: repair agent runtime rebase drift
* test: finish embedded runner import rename
* fix: repair agent runtime rebase integrations
* test: align compaction oauth fallback expectations
* fix: allow sdk-auth session models
* fix: update doctor tool schema import
* fix: preserve bedrock plugin region
* fix: stream harmony-like prose immediately
* ci: include session runtime in codeql shards
* fix: repair latest rebase integrations
* fix: honor explicit codex websocket transport
* fix: keep openai-compatible credentials provider-scoped
* fix: refresh sdk api baseline after rebase
* fix: route cli runtime aliases through openclaw harness
* test: rename stale harness mock expectation
* test: rename embedded agent overflow calls
* test: clean embedded auth test wording
* test: use openclaw stream types in deepinfra cache test
* fix: refresh sdk api baseline on latest main
* fix: honor bundled discovery compat allowlists
* fix: refresh sdk api baseline after latest rebase
* fix: remove stale rebase imports
* test: rename stale model catalog mock
* test: mock renamed doctor runtime modules
* fix: map canonical kimi env auth
* fix: use internal model registry in bench script
* fix: migrate deepinfra provider catalog entry
* fix: enforce builtin tool suppression
* fix: route compaction auth and proxy payloads safely
* refactor: prune unused llm registry leftovers
* test: update codex hooks session import
* test: fix model picker ci coverage
* test: align model picker auth mock types
2026-05-27 19:24:04 +01:00
Dallin Romney
2c95752c1e
fix(diffs): align language pack host floor ( #87370 )
2026-05-27 11:13:50 -07:00
Dallin Romney
d638611684
feat: split diffs language pack
...
Split the diffs viewer Shiki language pack into an external publishable plugin.
The diffs plugin keeps the default curated syntax set, while the new @openclaw/diffs-language-pack package carries the extended Shiki languages for npm and ClawHub distribution. The install metadata includes the external ClawHub spec, and the curated C# alias set keeps both c# and cs supported without the language pack.
Co-authored-by: Dallin Romney <dallinromney@gmail.com >
2026-05-27 18:08:40 +01:00
Vincent Koc
d2a1f62d23
fix(matrix): keep fallback tool warnings mention-inert
2026-05-27 18:07:24 +02:00
Peter Steinberger
ef17bbaabf
ci(release): harden postpublish verification
2026-05-27 13:58:14 +01:00
Mason Huang
75221e0550
fix(agents): separate heartbeat runtime template ( #85416 )
...
Summary:
- The PR moves the runtime `HEARTBEAT.md` bootstrap template into `src/agents/templates`, keeps docs templates ... or other workspace files, adds a legacy heartbeat-template doctor repair, and updates package guards/tests.
- PR surface: Source +281, Tests +283, Docs +11, Config +1, Other 0. Total +576 across 15 files.
- Reproducibility: yes. from source inspection: current main loads `HEARTBEAT.md` from the docs template, and ... pty heartbeat file non-empty to the runtime. I did not run a live heartbeat repro in this read-only review.
Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(doctor): recognize heartbeat docs boilerplate
- PR branch already contained follow-up commit before automerge: fix(agents): update heartbeat workspace test
- PR branch already contained follow-up commit before automerge: fix(doctor): tighten heartbeat template repair
Validation:
- ClawSweeper review passed for head e34e85864c .
- Required merge gates passed before the squash merge.
Prepared head SHA: e34e85864c
Review: https://github.com/openclaw/openclaw/pull/85416#issuecomment-4519851630
Co-authored-by: Mason Huang <masonxhuang@tencent.com >
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: hxy91819
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com >
2026-05-27 12:30:22 +00:00
Vincent Koc
53662094c3
chore(pixverse): publish as external plugin
2026-05-27 12:41:10 +02:00
Georgi Atsev
9e7c2b356b
fix(deepinfra): load all DeepInfra models when user wants to browse t… ( #84549 )
...
* fix(deepinfra): load all DeepInfra models when user wants to browse them during onboarding
* docs(deepinfra): align TTS default
* fix(deepinfra): refresh video fallbacks
* fix(deepinfra): share credential-aware catalog discovery
* test(deepinfra): narrow catalog regression types
* test(deepinfra): keep catalog narrowing across callback
* fix(deepinfra): preserve default model in live catalog
* fix(deepinfra): align default model pricing
* fix(deepinfra): keep pixverse as video default
* docs(deepinfra): match video fallback default
* fix(deepinfra): honor config api keys for live catalog
* test(e2e): wait for watchdog stdio close
* test(media): align live harness provider expectation
* fix(deepinfra): always augment custom catalogs
* test(e2e): resolve watchdog commands before spawning
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-05-27 10:43:37 +01:00
Vincent Koc
8caa44fba3
fix(lint): cap oxlint helper memory locally
2026-05-27 10:32:53 +02:00
Peter Steinberger
1507a9701b
refactor: centralize inbound supplemental context
...
* refactor: centralize inbound supplemental context
* refactor: trim supplemental finalizer typing
* docs: clarify supplemental context projection
* refactor: move inbound finalization into core
* refactor: simplify channel inbound facts
* refactor: fold supplemental media into inbound finalizer
* refactor: migrate channel inbound callers to builder
* docs: mark inbound finalizer compat types deprecated
* refactor: wire runtime turn context builder
* refactor: replace channel turn runtime API
* fix: respect discord quote visibility
* fix: avoid deprecated line dispatch helper
* refactor: deprecate channel message SDK seams
* docs: trim channel outbound SDK page
* test: migrate irc inbound assertion
* refactor: deprecate outbound SDK facades
* refactor: deprecate channel helper SDK facades
* refactor: deprecate channel streaming SDK facade
* refactor: move direct dm helpers into inbound SDK
* chore: mark legacy test-utils SDK alias deprecated
* refactor: remove unused allow-from read helper
* refactor: route remaining channel dispatch through core
* refactor: enforce modern extension SDK imports
* test: give slow image root tests more time
* ci: support node fallback on windows
* fix: add transcripts tool display metadata
* refactor: trim legacy channel test seams
* fix: preserve channel compat after rebase
* fix: keep deprecated channel inbound aliases
* fix: preserve discord thread context visibility
* fix: clean final rebase conflicts
* fix: preserve channel message dispatch aliases
* fix: sync channel refactor after rebase
* fix: sync channel refactor after latest main
* fix: dedupe memory-core subagent mock
* test: align clickclack inbound dispatch assertions
* fix: sync plugin sdk api hash after rebase
* fix: sync channel refactor after latest main
* fix: sync plugin sdk api hash after rebase
* fix: sync plugin sdk api hash after latest main
* test: remove stale inbound context awaits
2026-05-27 09:26:06 +01:00
Vincent Koc
57b1c0b3d9
fix(test): fail empty extension test requests
2026-05-27 09:57:18 +02:00
Peter Steinberger
cf399d65d8
test: harden e2e instance package fixture
2026-05-27 03:30:57 -04:00
Dallin Romney
780bc79147
fix(plugin-sdk): stop exporting vitest test helpers ( #87120 )
2026-05-26 23:10:41 -07:00
Peter Steinberger
10056c9346
test: harden docker smoke portability
2026-05-27 00:19:07 -04:00
Vincent Koc
d58f864e23
fix(e2e): bound HTTP readiness probes
2026-05-27 05:52:01 +02:00
Vincent Koc
d0cb7ba55b
fix(e2e): bound package cli scenarios
2026-05-27 04:00:55 +02:00
Vincent Koc
b74984dd50
fix(e2e): bound logged onboard commands
2026-05-27 03:41:52 +02:00
Vincent Koc
6ef0cbb94f
fix(docker): bound e2e image builds
2026-05-27 01:53:22 +02:00
Vincent Koc
3e701449ff
fix(e2e): keep mac smoke commands bounded without timeout
2026-05-27 01:37:57 +02:00
Vincent Koc
0028c2f793
fix(e2e): require bounded helper timeouts
2026-05-27 01:18:48 +02:00
Kevin Lin
7d6b7f434c
feat(plugin-sdk): add reaction approval helpers ( #86735 )
...
* feat(plugin-sdk): add reaction approval helpers
* fix(signal): register target approval reactions
* Remove legacy WhatsApp approval reaction appender
* refactor(plugin-sdk): share native exec prompt suppression
* revert(discord): keep exec prompt suppression local
* refactor(plugin-sdk): share native approval fallback suppression
* fix(whatsapp): bind outbound approval reactions
* chore(plugin-sdk): refresh api baseline
* revert(imessage): defer reaction approval changes
2026-05-26 15:28:50 -07:00
Vincent Koc
96307ca9b4
fix(docker): bound live docker runs
2026-05-27 00:26:27 +02:00
Vincent Koc
3736d7b60b
fix(docker): require bounded e2e docker commands
2026-05-27 00:03:00 +02:00
Vincent Koc
5c1ecda0ca
fix(e2e): support plain timeout wrappers
2026-05-26 21:49:04 +02:00
Vincent Koc
71cb60706b
fix(e2e): bound docker lifecycle hangs
2026-05-26 21:22:01 +02:00
Vincent Koc
e89afa6afa
fix(e2e): kill timed docker helper commands
2026-05-26 17:16:20 +02:00
Vincent Koc
dc0d4c263e
fix(e2e): kill timed live docker runs
2026-05-26 17:03:57 +02:00
Peter Steinberger
cac0b2db18
refactor: move transcripts into core
...
Move meeting notes into core transcripts, remove the bundled meeting-notes plugin/API, and require explicit transcripts.enabled before exposing the recording-capable tool.
2026-05-26 14:51:11 +01:00
Vincent Koc
ce61d224d8
fix(e2e): kill timed npm install process groups
2026-05-26 15:49:29 +02:00
Vincent Koc
295b5ea9ab
fix(mac): fail closed on restart gateway check
2026-05-26 15:05:16 +02:00
Vincent Koc
a07dc3896b
fix(e2e): time out package npm installs
2026-05-26 14:18:58 +02:00
Vincent Koc
d1f2eb0709
fix(e2e): time out live Docker runs
2026-05-26 12:24:13 +02:00
Vincent Koc
8e110a2122
fix(mac): fail closed on dist plist reads
2026-05-26 11:44:05 +02:00
Vincent Koc
55af31e0c6
fix(e2e): time out Docker image reuse probes
2026-05-26 11:42:02 +02:00
Vincent Koc
91080fde68
fix(mac): fail closed on plist stamp errors
2026-05-26 11:28:51 +02:00
Vincent Koc
b34e1b32d8
fix(e2e): honor Docker harness run timeouts
2026-05-26 10:42:34 +02:00
Vincent Koc
b377618fae
fix(e2e): clean package mount tarballs
2026-05-26 09:43:40 +02:00
Vincent Koc
abc7b7b331
fix(e2e): clean functional Docker build inputs
2026-05-26 09:29:57 +02:00
Vincent Koc
4a1d772f3d
fix(e2e): fail on invalid test state payloads
2026-05-26 09:15:06 +02:00
Peter Steinberger
4beadbf951
ci(release): apply exact extension batch excludes
2026-05-26 08:08:50 +01:00
Peter Steinberger
3b023e9bdb
ci(release): pass vitest batch options before roots
2026-05-26 07:50:52 +01:00
Peter Steinberger
4118a32aad
test: enforce per-test ci threshold
2026-05-26 04:35:20 +01:00
Vincent Koc
a695c28bfb
fix(tooling): skip gauntlet declaration prebuild
2026-05-26 05:01:03 +02:00
Peter Steinberger
6f57286678
refactor: use Rastermill for image processing ( #86621 )
...
* refactor: use Rastermill for image processing
* docs: clarify autoreview heartbeat patience
* refactor: use simplified rastermill api
* fix: preserve rastermill media safety boundaries
* build: update rastermill api pin
* build: use published rastermill package
2026-05-26 02:54:49 +01:00
Vincent Koc
6984a823af
fix(test): bound plugin gauntlet prebuilds
2026-05-26 03:38:09 +02:00
Vincent Koc
6defcb0a40
fix(scripts): bound guard inventory file reads
2026-05-26 01:49:15 +02:00
Vincent Koc
57748a66fd
fix(scripts): bound source scan file reads
2026-05-26 01:43:43 +02:00
Peter Steinberger
fda0141a01
Refactor realtime voice turn context tracking ( #86650 )
...
* refactor: share realtime turn context tracking
* chore: track realtime voice sdk api baseline
* fix: preserve pruned realtime turn handle state
2026-05-25 23:13:27 +01:00