Files
Peter Steinberger b3d5265f58 fix(docker): harden runtime images against CVE surface (#123282)
* fix(docker): harden runtime image dependencies

* chore(deps): update container security dependencies

* docs(docker): explain image security contents

* test(browser): align file-chooser and install tests with #114506 contract

* test(browser): restore extension install test isolation

* test(browser): add temporary CI diagnostics for pre-registration refusal

* test(browser): make install fixture interpreter hermetic

The suite passed process.execPath as the native-host interpreter; on
GitHub-hosted runners the hostedtoolcache node binary is group/world-
writable, which installChromeExtensionBootstrap correctly refuses, so
every registration test failed CI-only. The fixture now provides an
owned 0700 interpreter; only the launcher-exec test keeps the real
node it must spawn.

* fix(qa-lab): stop re-polling after a probe consumes the discovery deadline

The Matrix health-probe loop re-entered when the probe timeout fired
marginally before Date.now() crossed the deadline, starting a doomed
extra probe. Flaked on contended CI runners as 'expected 1 fetch, got
2'. A timed-out probe now ends discovery.

* test(ui): poll the callout inset invariant in device-scope E2E

One-shot boundingBox reads raced the nav-collapse transition and
intermittently measured a 20px stale offset on CI.
2026-08-13 14:02:39 -07:00

27 lines
565 B
JSON

{
"name": "@openclaw/browser-plugin",
"version": "2026.8.1",
"private": true,
"description": "OpenClaw browser tool plugin",
"type": "module",
"dependencies": {
"@modelcontextprotocol/sdk": "1.30.0",
"express": "5.2.1",
"playwright-core": "1.62.1",
"typebox": "1.3.6",
"ws": "8.21.1"
},
"devDependencies": {
"@openclaw/plugin-sdk": "workspace:*",
"undici": "8.9.0"
},
"openclaw": {
"extensions": [
"./index.ts"
],
"assetScripts": {
"copy": "node scripts/copy-chrome-extension.mjs"
}
}
}