-
-
Notifications
You must be signed in to change notification settings - Fork 52.6k
Description
Description
After upgrading from v2026.2.25 to v2026.2.26 via pnpm add -g openclaw@latest, the gateway refuses to start with config validation errors for every bundled extension plugin:
plugins: plugin: unsafe plugin manifest path: /home/yvy/.local/share/pnpm/global/5/.pnpm/openclaw@2026.2.26_.../node_modules/openclaw/extensions/acpx/openclaw.plugin.json (validation)
plugins: plugin: unsafe plugin manifest path: /home/yvy/.local/share/pnpm/global/5/.pnpm/openclaw@2026.2.26_.../node_modules/openclaw/extensions/telegram/openclaw.plugin.json (validation)
... (35+ bundled extensions, all rejected)
openclaw doctor --fix cannot resolve it. Downgrading to v2026.2.25 resolves the issue immediately.
Root Cause
v2026.2.26 introduced several security hardening changes for path resolution:
- Security/Sandbox path alias guard — reject broken symlink targets by resolving through existing ancestors
- Security/Workspace FS boundary aliases — harden canonical boundary resolution for non-existent-leaf symlink aliases
- Security/Config includes — harden
$includefile loading with verified-open reads, reject hardlinked include aliases
pnpm's global store uses a content-addressable symlink layout:
~/.local/share/pnpm/global/5/node_modules/openclaw
-> ../.pnpm/openclaw@2026.2.26_.../node_modules/openclaw
The new path validation appears to resolve plugin manifest paths through these symlinks and then reject them as "unsafe" because the resolved path falls outside the expected boundary.
Steps to Reproduce
- Install openclaw globally via pnpm:
pnpm add -g openclaw@2026.2.26 - Run
openclaw gateway - All bundled extension
openclaw.plugin.jsonmanifests are rejected as unsafe
Expected Behavior
Bundled plugin manifests shipped inside the openclaw package should be trusted regardless of the symlink layout used by the package manager (pnpm, npm, yarn, etc.).
Workaround
Downgrade to v2026.2.25: pnpm add -g openclaw@2026.2.25
Environment
- openclaw: v2026.2.26 (bc50708)
- Package manager: pnpm v10.29.1
- Node: v25.6.0 (via nvm)
- OS: Linux (WSL2) 6.6.87.2-microsoft-standard-WSL2