Symptom
openclaw update --yes --no-restart on Windows fails in package-swap with ENOENT: no such file or directory, stat of node-pty-darwin-arm64. The install stays on the previous version.
Evidence what you'll see
- Admission checks passed (
config: ok, database-schema: ok, node-runtime: ok, plugin-availability: ok).validatingthen ran for5855.48sand failed. - The report printed
Failed: package-swap — Exit code: 1; ENOENT: no such file or directory, stat [redacted-path]andFailing check package-swap (ENOENT). Recovery then printedFailing check gateway recovery verification (restart-unhealthy)even though the install was not mutated. - The support bundle path ended in
.pnpm\<redacted-handle>+node-pty@1.2.0-beta.15\node_modules\<redacted-handle>\node-pty-darwin-arm64. The host tree had@lydell/node-pty-win32-x64@1.2.0-beta.15and no Darwin directories.
Why it happens
@lydell/node-pty lists six platform packages in optionalDependencies. pnpm records all of them in the lockfile and materializes only the host package. The swap stats a dangling optional link in the staged copy. Pull request 181596 drops that dangling link when the owner declares it optional, and a missing required link still fails.
Affected versions
Windows 11 10.0.26200 x64, Node v24.22.1, pnpm 10.33.0, pnpm-global OpenClaw 2026.10.1 (e178c39) updating to 2026.10.6. Gateway via Scheduled Task OpenClaw Gateway → gateway.vbs. The same ENOENT reproduced toward 2026.10.5 and 2026.10.6.
Fix steps
0 of 2 done
Your check marks stay in this browser only.
How to check it worked
openclaw updateon a Windows pnpm-global install finishespackage-swapwithoutENOENTonnode-pty-darwin-arm64, and recovery no longer reportsrestart-unhealthywhen the install was not touched.
If it still fails
- No published release tag contains pull request 181596. Tag
v2026.10.6was compared against merge94cee2abf21ae692ce14dd3cb66bf21e53f2cecaand does not contain it (diverged). - The swap ran for about 97 minutes in the report. A preflight-only check will not hit this path.
Sources and credit
Summarized in our own words from these public reports. Credit goes to their authors.
Provided as is, without warranty. Try changes in a non-production environment and back up first. Security-related steps: verify against the official docs. Terms · Request removal or attribution change
Hit an error we don't cover? Submit it