Commit Graph

1428 Commits

Author SHA1 Message Date
Peter Steinberger
0b0c062e97 fix: avoid Claude CLI subscription prompt classifier 2026-04-10 10:52:35 +01:00
Peter Steinberger
56cf1bd40c test: move image generation live sweep out of src 2026-04-10 09:47:57 +01:00
Sliverp
1bbe66450e fix: copy SKILL.md as hard copy in dist-runtime to prevent realpath security check failure (#64166)
SKILL.md files were created as symlinks pointing to dist/, causing
realpathSync() in resolveContainedSkillPath to resolve outside the
dist-runtime/ directory. The security check then rejected the path,
resulting in all 23 plugin skills being skipped at load time.

Add SKILL.md to the shouldCopyRuntimeFile whitelist so it gets a hard
copy instead of a symlink, matching the existing behavior for
package.json and plugin.json files.

Fixes #64138
2026-04-10 15:41:28 +08:00
Vincent Koc
3cea11d3b6 test(boundary): route helper imports through bundled plugin surfaces 2026-04-10 08:05:56 +01:00
Pavan Kumar Gondhi
2d126fc623 fix(infra): expand host env security policy denylist [AI] (#63277)
* fix: address issue

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: close host env inherited sanitization gap

* fix: enforce host env reported baseline coverage

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* docs: add changelog entry for PR merge
2026-04-10 11:36:39 +05:30
Sean
c61be87b0e fix: prevent sandbox browser CDP startup hangs (#62873) (thanks @Syysean)
* refactor(sandbox): remove socat proxy and fix chromium keyring deadlock

* fix(sandbox): address review feedback by reinstating cdp isolation and stability flags

* fix(sandbox): increase entrypoint cdp timeout to 20s to honor autoStartTimeoutMs

* fix(sandbox): align implementation with PR description (keyring bypass, fail-fast, watchdog)

* fix

* fix(sandbox): remove bash CDP watchdog to eliminate dual-timeout race

* fix(sandbox): apply final fail-fast and lifecycle bindings

* fix(sandbox): restore noVNC and CDP port offset

* fix(sandbox): add max-time to curl to prevent HTTP hang

* fix(sandbox): align timeout with host and restore env flags

* fix(sandbox): pass auto-start timeout to container and restore wait -n

* fix(sandbox): update hash input type to include autoStartTimeoutMs

* fix(sandbox): implement production-grade lifecycle and timeout management

- Add strict integer validation for port and timeout environment variables
- Implement robust two-stage trap cleanup (SIGTERM with SIGKILL fallback) to prevent zombie processes
- Refactor CDP readiness probe to use absolute millisecond-precision deadlines
- Add early fail-fast detection if Chromium crashes during the startup phase
- Track all daemon PIDs explicitly for reliable teardown via wait -n

* fix(sandbox): allow renderer process limit to be 0 for chromium default

* fix(sandbox): add autoStartTimeoutMs to SandboxBrowserHashInput type

* test(sandbox): cover browser timeout cleanup

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-10 10:26:38 +05:30
Altay
8cf02e7c47 fix(ci): clear check-additional follow-up regressions (#63934)
* fix(ci): route messaging temp files through openclaw tmp dir

* fix(ci): clear qa-lab follow-up guardrails

* fix(ci): own-check ACP fallback resolvers

* fix(ci): preserve memory-core write error causes

* fix(ci): narrow qa-channel boundary alias

* fix(test): type memory-core dreaming api stubs
2026-04-09 23:47:59 +01:00
Mason
164287f056 docs-i18n: avoid ambiguous body-only wrapper unwrap (#63808)
* docs-i18n: avoid ambiguous body-only wrapper unwrap

* docs: clarify targeted testing tip

* changelog: include docs-i18n follow-up thanks
2026-04-10 00:01:17 +08:00
Mason
06dea262c4 docs-i18n: chunk raw doc translation (#62969)
Merged via squash.

Prepared head SHA: 6a16d66486
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com>
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com>
Reviewed-by: @hxy91819
2026-04-09 23:22:16 +08:00
Peter Steinberger
fbbb4f02d1 test: allow slower CLI metadata help rendering 2026-04-09 10:13:20 +01:00
Davanum Srinivas
08ae021d1f fix(qqbot): guard image-size probe against SSRF (#63495)
* fix(qqbot): replace raw fetch in image-size probe with SSRF-guarded fetchRemoteMedia

Replace the bare fetch() in getImageSizeFromUrl() with fetchRemoteMedia()
from the plugin SDK, closing the blind SSRF via markdown image dimension
probing (GHSA-2767-2q9v-9326).

fetchRemoteMedia options: maxBytes 65536, maxRedirects 0, generic
public-network-only SSRF policy (no hostname allowlist, blocks
private/reserved/loopback/link-local/metadata IPs after DNS resolution).

Also fixes the repo-root resolution in scripts/lib/ts-guard-utils.mjs
which caused lint:tmp:no-raw-channel-fetch to miss extension files
entirely. The guard now walks up to .git instead of hardcoding two parent
traversals, and the allowlist is refreshed with all pre-existing raw
fetch callsites that became visible.

* fix(qqbot): guard image-size probe against SSRF (#63495) (thanks @dims)

---------

Co-authored-by: sliverp <870080352@qq.com>
2026-04-09 16:48:04 +08:00
Vincent Koc
89acb92011 test(boundary): guard src imports from bundled plugin paths 2026-04-09 09:30:45 +01:00
Vincent Koc
62eca3770f test(boundary): guard sdk and package imports from bundled plugin paths 2026-04-09 09:10:05 +01:00
Peter Steinberger
15ab29b4a9 test: harden macOS npm update smoke fallback 2026-04-09 04:07:45 +01:00
Peter Steinberger
d41188b65e ci: add runtime import cycle guard 2026-04-09 03:56:22 +01:00
Peter Steinberger
b5c3c15dcf test: keep local full suite serial by default 2026-04-09 03:23:00 +01:00
Peter Steinberger
5b28ab83ef test: run local full suite project shards in parallel 2026-04-09 02:26:22 +01:00
Mason Huang
edc6c13f1f plugin-sdk: drop investigative weixin repro harness 2026-04-09 01:35:15 +01:00
Mason Huang
ba636d1206 plugin-sdk: keep command status compatibility path light 2026-04-09 01:35:15 +01:00
Mason Huang
aa15de8fdc plugin-sdk: split command status surface 2026-04-09 01:35:15 +01:00
Peter Steinberger
a8c47db668 fix: repair Windows dev-channel updater 2026-04-09 01:26:28 +01:00
Peter Steinberger
aa79b9fb7d test(docker): quiet success-path e2e logs 2026-04-09 00:29:24 +01:00
Peter Steinberger
b76681f28d test(docker): reduce e2e log noise 2026-04-08 23:27:43 +01:00
Peter Steinberger
f4704184f6 build: narrow plugin SDK declaration build 2026-04-08 20:00:51 +01:00
Peter Steinberger
757fc49506 test: harden Parallels macOS smoke fallback 2026-04-08 20:00:51 +01:00
Peter Steinberger
a3d21539ef test: stabilize full-suite execution 2026-04-08 19:40:57 +01:00
Ayaan Zaidi
17e6ef4076 fix(build): keep tsdown prune best-effort 2026-04-08 21:16:49 +05:30
Ayaan Zaidi
f4ec59c431 fix(build): honor postinstall disable flag 2026-04-08 21:01:53 +05:30
Ayaan Zaidi
66ec8909bd fix(build): address bundled plugin prune review 2026-04-08 21:01:53 +05:30
Ayaan Zaidi
b28fe1b92f fix(build): prune stale bundled plugin node_modules 2026-04-08 21:01:53 +05:30
Peter Steinberger
3dd19a1705 refactor: dedupe test helpers and script warning filter 2026-04-08 15:58:45 +01:00
Peter Steinberger
edf6b490a6 fix: harden bundled plugin dependency release checks 2026-04-08 15:15:44 +01:00
Peter Steinberger
e673efe537 ci: split parallel full suite into leaf shards 2026-04-08 13:20:05 +01:00
Peter Steinberger
4d2ea434d2 ci: skip duplicate full extension shard 2026-04-08 13:03:51 +01:00
Peter Steinberger
d35c46d6c7 test: fix postpublish verifier sidecar handling 2026-04-08 12:51:15 +01:00
scoootscooob
d52d5ad6ff release: mirror bundled channel deps at root (#63065)
Merged via squash.

Prepared head SHA: ac26799a54
Co-authored-by: scoootscooob <167050519+scoootscooob@users.noreply.github.com>
Co-authored-by: scoootscooob <167050519+scoootscooob@users.noreply.github.com>
Reviewed-by: @scoootscooob
2026-04-08 04:00:17 -07:00
Peter Steinberger
928a9e4915 fix: keep installer doctor non-interactive 2026-04-08 11:47:59 +01:00
Nimrod Gutman
6681878339 feat(ios): pin calver release versioning (#63001)
* feat(ios): decouple app versioning from gateway

* feat(ios): pin calver release versioning

* refactor(ios): drop prerelease version helper fields

* docs(changelog): note pinned ios release versioning (#63001) (thanks @ngutman)
2026-04-08 11:25:35 +03:00
Vincent Koc
45542fa726 fix(test): stabilize windows tooling assertions 2026-04-08 09:12:08 +01:00
Vincent Koc
be530f085d refactor(plugin-sdk): share tool payload extraction 2026-04-08 09:07:28 +01:00
Vincent Koc
490c9c80ef perf(plugin-sdk): split web search config contract 2026-04-08 09:03:07 +01:00
Vincent Koc
2e7a0fc7fb perf(plugins): report slow boundary compiles 2026-04-08 08:52:51 +01:00
Peter Steinberger
2f5b5b7e35 test: remove gpt 4.1 install e2e fallbacks 2026-04-08 07:41:00 +01:00
Peter Steinberger
4f5c137f88 fix: unblock windows update build 2026-04-08 07:18:31 +01:00
Peter Steinberger
0a5aefefbd test: harden Docker install e2e agent lane 2026-04-08 07:15:51 +01:00
Peter Steinberger
f4c64168e7 test: route gateway HTTP history and startup wiring to e2e 2026-04-08 06:17:52 +01:00
Peter Steinberger
75fe554db7 test: smoke packed bundled channel entries 2026-04-08 05:58:29 +01:00
Peter Steinberger
993abc1fb9 test: move gateway e2e fixture out of unit lane 2026-04-08 05:57:51 +01:00
Peter Steinberger
5eab61b45d test: add opt-in leaf project scheduler 2026-04-08 05:28:55 +01:00
Tak Hoffman
8069b990a6 add bundled channel prepack smoke 2026-04-07 23:09:26 -05:00