Commit Graph

3390 Commits

Author SHA1 Message Date
Vincent Koc
6f695c1864 fix(test): clean kitchen sink rpc temp state 2026-05-25 16:47:23 +02:00
Mason Huang
f0bfb3fc33 test(tools): add unmocked image custom-provider auth regression (#85733)
Summary:
- The branch adds an unmocked image-tool custom-provider auth regression test, fixes split agents Vitest config routing, adds routing coverage, and records a changelog entry.
- PR surface: Tests +203, Docs +1, Other +8. Total +212 across 4 files.
- Reproducibility: not applicable. as a current-main failing issue: the production runtime bug was addressed by the linked predecessor, and this PR adds regression coverage plus test-routing verification for that path.

Automerge notes:
- PR branch already contained follow-up commit before automerge: test(tools): polish image auth regression and fix agents vitest routing
- PR branch already contained follow-up commit before automerge: test(tools): remove proof test filename after regression rename
- PR branch already contained follow-up commit before automerge: fix(test): remove duplicate agent shard constants
- PR branch already contained follow-up commit before automerge: test(tools): add unmocked image custom-provider auth regression
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): address review for automerge-openclaw-openclaw-8573…

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

Prepared head SHA: cff5476aeb
Review: https://github.com/openclaw/openclaw/pull/85733#issuecomment-4525628364

Co-authored-by: Mason Huang <masonxhuang@tencent.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.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-25 14:19:04 +00:00
Peter Steinberger
a3ae5c8382 refactor(plugin-sdk): rename plain text tool-call compat wrapper 2026-05-25 15:08:01 +01:00
Peter Steinberger
b9f975b64e Replace Sharp image backend with Photon (#86437)
* refactor: replace sharp image backend with photon

* refactor: remove whatsapp jimp dependency

* chore: remove stale sharp install workarounds

* test: keep image fixtures off photon

* test: use valid prompt image fixtures

* test: account for optimized PNG fixtures

* test: use valid minimax image fixtures
2026-05-25 15:04:44 +01:00
Vincent Koc
ee5f8c7c22 fix(crabbox): bootstrap macos js toolchain 2026-05-25 15:52:57 +02:00
Vincent Koc
6eb46ceac8 fix(test): dedupe kitchen sink command assertions 2026-05-25 14:48:57 +02:00
Peter Steinberger
fcf0bff929 test: derive deprecated sdk usage guard (#86403) 2026-05-25 13:45:08 +01:00
Vincent Koc
968c87d798 fix(ui): move control ui chunking helper out of runtime source 2026-05-25 14:31:38 +02:00
Peter Steinberger
dc2c4aab6d fix: rotate realtime voice sessions on max duration
- Rotate OpenAI Realtime voice sessions on provider max-duration events without surfacing the expected expiry as a Discord voice error.
- Add lifecycle logging for Realtime rotation/reconnect and regression coverage for max-duration reconnect.
- Allowlist the existing Control UI chunking helper for the optional Knip unused-file guard so the dependency shard stays green on the current base.
2026-05-25 13:16:48 +01:00
Vincent Koc
fc3cd4970c fix(test): stream bundled plugin sweep logs 2026-05-25 13:37:38 +02:00
Vincent Koc
d270879c4b fix(scripts): restore sparse crabbox changed gates 2026-05-25 13:16:51 +02:00
Vincent Koc
0bb9b421f3 fix(build): support Windows UI builds 2026-05-25 13:06:56 +02:00
Vincent Koc
5e944691b7 fix(scripts): dedupe docker lane resources 2026-05-25 12:14:37 +02:00
Vincent Koc
e9b8a6ecbf fix(test): avoid source gateway import in rpc walk 2026-05-25 12:05:31 +02:00
Peter Steinberger
a1fe86a0ff feat(qa): add coverage scenario matching 2026-05-25 10:22:51 +01:00
Vincent Koc
4a45098a86 fix(perf): avoid duplicate docker package ui build 2026-05-25 11:16:09 +02:00
Vincent Koc
82bbcf60b0 fix(perf): harden gateway restart bench exits 2026-05-25 10:43:01 +02:00
Vincent Koc
b1b28415c2 fix(scripts): avoid duplicate install smoke ui build 2026-05-25 09:58:39 +02:00
Peter Steinberger
c3ab2def0a refactor: keep plain text tool-call promotion private (#86374)
Move the plain-text tool-call promotion wrapper out of the public provider stream SDK helper and into a private local-only bundled-provider runtime seam.
2026-05-25 08:43:21 +01:00
Vincent Koc
a8fc28c71a fix(perf): fail startup bench on early gateway exit 2026-05-25 09:16:09 +02:00
Peter Steinberger
316d97c938 fix: handle npm min-release-age in installers
Replays #84749 because the contributor fork branch became conflicted and was no longer maintainer-writable.

Co-authored-by: TeodoroRodrigo <rodrigoteodoro.90@gmail.com>
2026-05-25 08:13:47 +01:00
xin zhuang
6704d0ab27 fix(scripts): include ui:build in build-all full and ciArtifacts profiles (#86010)
* fix(scripts): include ui:build in build-all full and ciArtifacts profiles

Closes #85206.

scripts/build-all.mjs only ran ui:build via a separate `pnpm ui:build`
command. Because `pnpm build` invokes tsdown which removes `dist/`,
a backend rebuild silently deletes any previously generated
dist/control-ui assets, leaving the gateway to serve the
"Control UI assets not found" message at startup. Documentation and
startup auto-repair masked the bug at the worst possible time
(LaunchAgent readiness / remote recovery) instead of guaranteeing the
build artifact contract.

This change adds ui:build as a build-all step after
copy-export-html-templates and before write-build-info, and includes
it in the full and ciArtifacts profiles. Minimal backend dev profiles
(gatewayWatch, cliStartup) keep their existing fast-loop step lists
and do not run ui:build.

Regression coverage:
- ciArtifacts step list assertion updated to match the new ordering.
- Three new resolveBuildAllSteps assertions: ui:build is in full and
  ciArtifacts and runs after tsdown/runtime-postbuild-stamp and before
  write-build-info; ui:build is excluded from gatewayWatch/cliStartup;
  ui:build cache outputs declare dist/control-ui.

* fix(scripts): leave ui:build uncached so dist/control-ui never restores stale build IDs

ClawSweeper review on #86010 flagged that the original ui:build cache only
hashed ui/, scripts/ui.js, and scripts/lib/copy-assets.ts, but
ui/vite.config.ts also reads package.json plus git HEAD and the
OPENCLAW_CONTROL_UI_BUILD_ID/OPENCLAW_VERSION env vars to embed a build ID
into the app and service worker. A file-input cache signature cannot
exactly invalidate those metadata sources, so a warm build-all hit could
restore a previously generated dist/control-ui after tsdown clears dist
and ship stale service-worker/app cache metadata.

Leaving the step uncached keeps the contract simple: every pnpm build
re-runs Vite, which is fast for the Control UI bundle and matches the
existing behavior of every other un-cached build-all step. Backend-only
profiles (gatewayWatch, cliStartup) are still unchanged.

Tests:
- Updated the ui:build cache assertion to require step.cache to be
  undefined and explain the metadata-input reason.
- Existing presence/order/exclusion assertions for ui:build are unchanged
  and still cover the full and ciArtifacts profile contract.

* fix(scripts): keep ui build fallback pnpm-free

---------

Co-authored-by: 1052326311 <1052326311@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-05-25 08:08:52 +01:00
Vincent Koc
73189e3ecb fix(e2e): sample Windows kitchen sink gateway RSS 2026-05-25 08:59:11 +02:00
Vincent Koc
e2bd20f0aa fix(cli): suppress self-update version warnings 2026-05-25 08:46:31 +02:00
sallyom
908b894432 fix(docker): restore config parent ownership 2026-05-25 01:00:10 -04:00
Vincent Koc
5bd5509e06 fix(scripts): budget restart benchmark timeouts 2026-05-25 06:38:43 +02:00
Shakker
56a383cdfa fix: route explicit ui vitest targets narrowly 2026-05-25 05:17:45 +01:00
Shakker
777402eeb5 fix: route unit ui vitest targets narrowly 2026-05-25 05:17:45 +01:00
Vincent Koc
95d1b39b96 fix(scripts): fail restart benchmark regressions 2026-05-25 05:41:38 +02:00
Vincent Koc
3db1508f1e fix(ci): stabilize deadcode and catalog checks 2026-05-25 04:54:24 +02:00
Vincent Koc
ca70015a7c fix(scripts): prebuild gateway cpu bench 2026-05-25 04:24:01 +02:00
Vincent Koc
4798264a29 fix(e2e): harden bundled lifecycle probe on Windows 2026-05-25 04:14:00 +02:00
Vincent Koc
60c0f249ad test(e2e): sample kitchen sink rpc peak rss 2026-05-25 03:50:01 +02:00
Vincent Koc
ea3bb9282c fix(scripts): remove stale deadcode allowlist entries 2026-05-25 03:40:29 +02:00
Vincent Koc
793e300cc5 fix(plugins): support linked source checkouts on Windows 2026-05-25 03:36:06 +02:00
Vincent Koc
732cf54240 fix(test): fail multi-node update regressions 2026-05-25 02:44:02 +02:00
Vincent Koc
ec168fa2bd test(e2e): harden multi-node update smoke 2026-05-25 01:59:32 +02:00
Vincent Koc
f68ed721b1 fix(installer): support alpine cli installs 2026-05-25 01:28:13 +02:00
Vincent Koc
4d4ce9e2f3 fix(scripts): launch env package scripts on Windows 2026-05-25 01:15:49 +02:00
Vincent Koc
8ae997749d fix(test): make import timing scripts Windows-safe 2026-05-25 00:35:04 +02:00
Vincent Koc
b681d5d5a6 fix(test): make max Vitest scripts Windows-safe 2026-05-24 23:54:29 +02:00
Vincent Koc
500c95b1ba fix(scripts): prefilter conflict marker scans 2026-05-24 23:25:05 +02:00
Andy Ye
4742db6c31 fix(installer): avoid before with npm release-age configs (#85491)
Summary:
- The PR updates the Unix installers to avoid emitting npm `--before` when raw npm config contains `min-releas ...  records a changelog fix, and widens an internal model-catalog test helper type to accept sync auth checks.
- PR surface: Source +1, Tests +421, Docs +1, Other +150. Total +573 across 7 files.
- Reproducibility: yes. The linked report at https://github.com/openclaw/openclaw/issues/84743 gives an isolat ...  exclusivity, and current main still has the source path that can generate the conflicting `--before` flag.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(installer): avoid before with npm release-age configs
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): address review for automerge-openclaw-openclaw-8549…

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

Prepared head SHA: fb0762f468
Review: https://github.com/openclaw/openclaw/pull/85491#issuecomment-4522229812

Co-authored-by: Andy Ye <35905412+TurboTheTurtle@users.noreply.github.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
2026-05-24 21:18:58 +00:00
Vincent Koc
3e275a53dc fix(e2e): retry Windows kitchen sink probes 2026-05-24 23:10:33 +02:00
Vincent Koc
367d584ee3 fix(installer): install node with apk on alpine 2026-05-24 23:03:12 +02:00
Vincent Koc
acfed375ee fix(installer): detect musl linux shells 2026-05-24 22:47:05 +02:00
Vincent Koc
0acc3e3216 test(e2e): select installable bundled plugins 2026-05-24 21:36:08 +02:00
Vincent Koc
43252c8099 fix(scripts): harden Windows native opus install 2026-05-24 21:28:09 +02:00
Vincent Koc
0a98559440 fix(scripts): harden Windows generated formatting 2026-05-24 20:50:07 +02:00
Vincent Koc
dfa1a51225 fix(test): focus plugin binding Docker smoke 2026-05-24 20:28:43 +02:00