-`vendor/openclaw-runtime` is reserved for the pinned runtime payload
-`vendor/openclaw-runtime` is reserved for the pinned runtime payload
-`installer-smoke.ps1` performs a real silent NSIS install into `.tmp`, launches the installed app in smoke mode, and validates packaged paths plus diagnostics output
-`installer-smoke.ps1` performs a real silent NSIS install into `.tmp`, launches the installed app in smoke mode, and validates packaged paths plus diagnostics output
-`electron-smoke.ps1` launches the desktop app directly under Electron with isolated `userData` and `logs` paths, then validates execution-policy smoke output
-`electron-smoke.ps1` launches the desktop app directly under Electron with isolated `userData` and `logs` paths, then validates execution-policy smoke output
-`materialize-runtime-payload.ps1` generates a local bundled runtime payload under `vendor/openclaw-runtime/`from the machine's installed `node.exe`, `openclaw`, local OpenClaw config, and a locked Python dependency set
-`materialize-runtime-payload.ps1` generates a local bundled runtime payload under `vendor/openclaw-runtime/`by copying the local `node.exe`, the installed OpenClaw package, a local OpenClaw config snapshot, and a self-contained Python runtime with the locked dependency set installed into it
-`bundled-runtime-smoke.ps1` materializes the local runtime payload, forces bundled-runtime mode, and validates that Electron can launch and use the managed runtime end to end
-`bundled-runtime-smoke.ps1` materializes the local runtime payload, forces bundled-runtime mode, and validates that Electron can launch and use the managed runtime end to end
-`installer-smoke.ps1` also validates the packaged Python runtime by importing the preinstalled table/document/web dependencies from `resources/vendor/openclaw-runtime/python`
-`installer-smoke.ps1` validates the packaged Python runtime by importing the preinstalled table/document/web dependencies from `resources/vendor/openclaw-runtime/python/python.exe`
Immutable packaged payload under `vendor/openclaw-runtime/` now includes:
Immutable packaged payload under endor/openclaw-runtime/ includes:
-`node/node.exe`
-
-`openclaw/index.js`
ode/node.exe
-`config/openclaw.json`
- openclaw/index.js
-`python/Scripts/python.exe`
- openclaw/package/openclaw.mjs
-`python/python-manifest.json`
- config/openclaw.json
-`python/runtime-requirements.lock.txt`
- python/python.exe
- python/python-manifest.json
- python/runtime-requirements.lock.txt
Mutable runtime data lives outside the installer payload and should be created under Electron `userData/runtime/`:
Mutable runtime data lives outside the installer payload and should be created under Electron userData/runtime/.
-`runtime/logs/`
The payload is considered ready only when the Node entry, OpenClaw package, Python executable, Python manifest, and locked Python imports all validate successfully on the target machine.
-`runtime/state/`
\ No newline at end of file
-`runtime/workspace/`
- future writable caches and lock files
Current payload is generated locally for packaging and smoke validation by `build/scripts/materialize-runtime-payload.ps1`.
The Python layer is part of the bundled-runtime contract. A payload is not considered ready unless:
- the Node/OpenClaw files exist
- the Python executable and manifest exist
- the locked Python dependencies can all be imported successfully