Peter Steinberger
7bc994aee8
fix(install): avoid success after incomplete lifecycle changes ( #125992 )
...
* fix(install): make lifecycle mutations transactional
Standalone installers now apply npm-version-aware lifecycle approval. Updates verify and repair the installation before reporting success and preserve the prior install owner during method switches. Uninstall now exits nonzero when requested cleanup is only partially completed. Plugin update behavior is unchanged.
Closes #125925
* test(uninstall): assert aggregated live-owner failure
* fix(install): satisfy standalone shell checks
* fix(update): scan PATH for prior Git wrapper
* test(hooks): await Gmail watcher descendant exit
* fix(install): verify Windows npm candidate
* fix(ci): normalize package acceptance version
* fix(update): preserve staged local package links
* test(update): fold staged symlink coverage
* fix(update): retire every legacy Git wrapper
* test(docs): align consolidated ownership checks
2026-08-18 20:50:15 -07:00
Peter Steinberger
076a8cc616
fix(install): avoid unusable checkout directories after failed clones ( #124872 )
...
* fix(install): publish fresh git clones transactionally
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* fix(installer): preserve empty clone destinations transactionally
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* fix(update): satisfy transactional clone lint
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* test(update): type recovery directory assertion
* fix(installer): retain canonical clone checkout
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* fix(update): retain published checkout root
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* test(update): cover package preflight before clone
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
---------
Co-authored-by: Amp <amp@ampcode.com >
2026-08-17 02:40:07 -07:00
Peter Steinberger
a917c99e92
fix(runtime): classify Node releases consistently across install and launch ( #124812 )
...
* fix(runtime): align Node release version guards
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* test(runtime): include Node version helper in source fixture
* fix(install): align Node release checks across boundaries
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* fix: keep node version guard legacy-compatible
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* test(runtime): exercise legacy launcher preflight
* fix(installer): validate installed Node release versions
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* fix(installer): compare Node version parts numerically
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* test(installer): cover 17-digit Node major
---------
Co-authored-by: Amp <amp@ampcode.com >
2026-08-17 00:42:23 -07:00
Peter Steinberger
0d78854415
fix(install): reject invalid PowerShell installer options ( #124882 )
...
* fix(install): reject invalid PowerShell installer options
Bind installer parameters strictly so unknown switches and positional arguments cannot enter the mutating installer body. Validate environment options before initialization, add explicit help, and gate website publication on Windows PowerShell 5.1 and pwsh probes.
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
* test(installer): validate strict PowerShell options
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
---------
Co-authored-by: Amp <amp@ampcode.com >
2026-08-16 21:16:40 -07:00
Peter Steinberger
0c01534426
fix(installer): finalize deferred PATH installs successfully ( #124678 )
...
Amp-Thread-ID: https://ampcode.com/threads/T-01a00ae0-190d-718b-8a76-b75f3e8d1fae
Co-authored-by: Amp <amp@ampcode.com >
2026-08-16 19:59:23 -07:00
Peter Steinberger
1348387076
refactor(plugins): replace node-llama-cpp with managed llama-server ( #123105 )
...
Move llama.cpp chat and local embeddings onto a verified externally managed llama-server runtime. Remove the in-process native runtime, forked embedding workers, and node-llama-cpp dependency while preserving guided setup, local GGUF models, tool-capable agent runs, diagnostics, and operator docs.
2026-08-13 16:58:20 -07:00
Peter Steinberger
aa7cf44c75
fix(install): Windows installer no longer reports failed doctor migration as complete ( #120033 )
...
* fix(install): Windows installer surfaces doctor migration failures
Invoke-OpenClawCommand ignored the child exit code, so a failed
'openclaw doctor --non-interactive' still printed '[OK] Migration complete'.
The wrapper now throws on nonzero exit and Run-Doctor reports the failure
with the exact command to rerun instead of claiming success.
* chore: re-fire CI
* chore: re-fire CI against fixed main baseline
2026-08-07 01:19:59 -07:00
ooiuuii
807506381a
fix(install): reject commit-less git checkouts ( #113809 )
...
* fix(install): reject commit-less git checkouts
* test(install): fix incomplete-checkout coverage
* fix(install): pin incomplete checkout validation
* test(install): update pinned checkout stub
* fix(install): require checkout HEAD commit object
2026-08-02 08:05:42 -07:00
Peter Steinberger
abfe7c64a7
docs(install): recommend Node 26 as the OpenClaw runtime ( #114399 )
...
* docs(install): recommend Node 26; CI/installer stay on Node 24 for now
* feat(cli): point unsupported-runtime nvm hint at Node 26
* feat(install): provision Node 26 by default (brew mainline node formula, NodeSource 26.x, portable win zip)
* test(install): align installer tests with Node 26 provisioning defaults
* docs(install): state per-platform Node provisioning accurately
2026-07-27 04:32:21 -04:00
ooiuuii
ceeb861418
fix(install): report source UI build failures correctly ( #112053 )
2026-07-25 05:42:23 -07:00
ooiuuii
f12b4af021
fix(install): normalize Windows temp short paths ( #108050 )
...
* Normalize Windows installer temp paths
* fix(install): canonicalize Windows temp root
Co-authored-by: luyifan <al3060388206@gmail.com >
* fix(install): resolve Windows temp aliases with Get-Item
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 08:02:31 -07:00
lybnnnn
02f494b51e
fix: clarify SQLite version error message to prevent user confusion ( #108382 )
...
* fix: clarify SQLite version error message to prevent user confusion
The error message "3.44.6+" was misinterpreted by users as meaning "3.44.6 and above",
when it actually means "3.44.6+ for the 3.44.x series only". This commit clarifies the
error message to explicitly state that only specific patched versions (3.44.6+, 3.50.7+,
and 3.51.3+) are safe, and that SQLite 3.46.1 is not among them.
Changes:
- Update error message in src/infra/node-sqlite.ts to clarify version requirements
- Update test expectations in src/infra/node-sqlite.test.ts to match new error format
- Fix unnecessary template literal expressions flagged by oxlint
The code logic remains unchanged - SQLite 3.46.1 is correctly rejected as unsafe.
* fix: clarify SQLite version error message to prevent user confusion
The previous error message stated '3.44.6+' which users misinterpreted as
'3.44.6 and above', leading to confusion when versions like 3.46.1 were rejected.
The new message explicitly states '3.44.6+ in the 3.44.x series' and
'3.50.7+ in the 3.50.x series' to make it clear that only specific
minor version series received the WAL-reset bug fix.
This matches the SQLite team's actual fix announcement which only
backported the fix to 3.44.x and 3.50.x series, plus 3.51.3+.
* fix(sqlite): align unsafe version diagnostics
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 05:24:14 -07:00
Peter Steinberger
8dd204e4fc
fix(installer): retry transient Windows npm failures
2026-07-16 11:19:41 +01:00
Alix-007
e3e071f8c1
fix(installer): bound PowerShell download stalls ( #108791 )
2026-07-16 03:13:26 -07:00
Peter Steinberger
9de11f098e
fix(release): forward-port July guards and restore main validation ( #107462 )
...
* fix(installer): validate upgraded Windows SQLite runtime
* fix(release): lock packed AI runtime dependency
* test(mattermost): tolerate additional fallback diagnostics
* test(live): make Claude resume proof explicit
* test(plugins): repair exact-main prerelease coverage
* test(release): restore root test type coverage
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
Co-authored-by: Vincent Koc <25068+vincentkoc@users.noreply.github.com >
2026-07-14 05:41:24 -07:00
Peter Steinberger
0f9cc945e3
fix: Windows installer fails after winget installs Node.js ( #106862 )
...
* fix(installer): recover winget Node path
* docs(changelog): note winget installer recovery
2026-07-13 15:43:19 -07:00
Peter Steinberger
f355f6afbb
fix(installer): pass SQLite probe over stdin ( #106252 )
2026-07-13 03:13:14 -07:00
Vincent Koc
f33ab243cf
fix(sqlite): reject runtimes vulnerable to WAL corruption ( #106065 )
...
* fix(sqlite): require WAL-reset-safe Node runtime
* docs(sqlite): document safe Node runtime floor
* fix(sqlite): defer runtime library validation until use
* fix(ci): align startup memory with Node 24.15
2026-07-13 13:59:00 +08:00
Jason (Json)
cccc856b82
fix: reject incompatible Node 23 runtimes ( #99832 )
...
* fix: reject incompatible Node 23 runtimes
* fix: repair installer CI coverage
* docs: clarify supported Node ranges
* fix: fail closed on unreadable runtime versions
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-04 00:03:49 -07:00
Josh Avant
cee2aca409
Scope agent cron operations to the calling agent ( #96883 )
...
* Scope agent cron operations to caller
* Scope OpenClaw tools MCP cron by session
* Address cron scope review feedback
* Preserve unscoped cron update retargeting
* Move cron caller identity into gateway context
* Clarify Gateway restart guidance
* Add cron caller identity regression proof
2026-06-26 21:41:14 -05:00
Vincent Koc
1252378018
fix(installer): unblock Windows source installs
2026-06-23 09:48:43 +08:00
Vincent Koc
fac091b39d
fix(installer): detect native Windows ARM64 hosts
2026-06-23 07:00:59 +08:00
Vincent Koc
ea9065bc68
fix(installer): skip llama postinstall in Windows source installs
2026-06-23 06:08:48 +08:00
Vincent Koc
3f4c04f4df
fix(windows): prefer native arm64 portable git
2026-06-18 16:25:39 +02:00
Vincent Koc
c72c82726f
fix(installer): print npm debug logs on Windows install failure
2026-06-05 23:16:39 -07:00
Vincent Koc
ff5667a582
fix(installer): fail on onboarding exit code
2026-06-03 15:39:31 +02:00
Vincent Koc
dc5671edae
fix(install): harden Windows git installs
2026-05-28 11:47:05 +02:00
Peter Steinberger
316d97c938
fix: handle npm min-release-age in installers
...
Replays #84749 because the contributor fork branch became conflicted and was no longer maintainer-writable.
Co-authored-by: TeodoroRodrigo <rodrigoteodoro.90@gmail.com >
2026-05-25 08:13:47 +01:00
Vincent Koc
2edd6e2462
fix(installer): fail failed Windows git builds
2026-05-23 11:08:04 +08:00
Vincent Koc
684a9b2e6e
fix(installer): tolerate WSL UNC launch cwd
2026-05-23 04:59:08 +08:00
Vincent Koc
5b90a48e9d
fix(installer): persist portable Git on Windows
2026-05-23 00:20:34 +08:00
Peter Steinberger
e842869003
fix(installer): extract portable Node directly
2026-05-22 15:46:28 +01:00
Peter Steinberger
a54a8813bf
fix(installer): prefer tar for portable Node extraction
2026-05-22 15:31:16 +01:00
Peter Steinberger
ffa6cd888f
fix(installer): extract portable Node with ZipFile
2026-05-22 15:16:13 +01:00
Peter Steinberger
c21ca883b0
fix(installer): copy portable Node into place
2026-05-22 14:51:26 +01:00
Peter Steinberger
2890b1a24a
fix(installer): install portable Node directory atomically
2026-05-22 14:36:50 +01:00
Vincent Koc
3551e98433
fix(installer): bootstrap portable Windows Node
2026-05-22 19:59:45 +08:00
Vincent Koc
15a0156a8c
fix(update): reject openclaw source package targets
2026-05-22 07:35:57 +08:00
Sarah Fortune
aef93881af
fix(installer): preserve windows onboarding tui ( #84044 )
...
Co-authored-by: sjf-oa <sjf-oa@users.noreply.github.com >
2026-05-19 01:12:26 -07:00
Peter Steinberger
f7196e3b53
build: update pi dependencies to 0.75.1
2026-05-18 06:22:36 +01:00
Peter Steinberger
97d1f5fd15
fix: bypass npm freshness filters during updates
...
Bypass npm min-release-age/before quarantine for OpenClaw-managed package installs and update installer scripts/tests/docs.\n\nFixes #82630 .
2026-05-16 18:17:18 +01:00
Sarah Fortune
d06f0a0ee7
fix(install): don't abort install.ps1 when git writes to stderr ( #80834 )
...
PowerShell 7+ honors $ErrorActionPreference=Stop for native commands,
so git's normal progress line ("From https://...") on stderr during
`git pull --rebase` would turn into a terminating error and abort the
installer immediately after a fresh clone — before pnpm install/build
ever runs. The existing `2>$null` redirects the display but the error
record is still generated.
Wrap the git status / pull calls in try/catch so the pull stays
best-effort and the rest of the installer can proceed. Reproduced on
Windows 11 ARM under PowerShell 7.x with -InstallMethod git.
2026-05-12 17:26:30 -07:00
Peter Steinberger
e60928d13c
ci: verify and sync website installers ( #80067 )
...
* ci: verify and sync website installers
* test: fix pi runner boundary test type cast
* fix(installer): scope Windows legacy cleanup to git checkout
* ci: install curl for minimal install-cli smoke
* fix(installer): promote supported Linux node after install
* test(cli): align command hint expectations
* fix(installer): avoid shellcheck warning in node promotion
* fix(installer): sync Linux path hardening
* ci: raise build artifact testbox heap
* test(installer): align PowerShell installer tests
2026-05-09 23:48:49 -04:00
Peter Steinberger
c3b8e5c812
fix(release): stabilize windows npm install
2026-05-02 05:49:45 +01:00
Peter Steinberger
7d7b610a24
fix: handle bin-only runtime deps
2026-05-01 09:07:32 +01:00
Peter Steinberger
4a3030df9e
fix: avoid PowerShell error variable collision
2026-04-26 16:26:31 +01:00
Peter Steinberger
a87edd732d
fix: harden Windows Parallels smoke
2026-04-26 16:13:13 +01:00
Peter Steinberger
6f50253a4d
fix: clarify install switching
2026-04-26 09:46:41 +01:00
Peter Steinberger
8368026986
fix(installer): preserve PowerShell host on failure
2026-04-26 07:23:48 +01:00
Onur
900e291f31
CI: expand native release validation coverage ( #67144 )
...
* Actions: grant reusable release checks actions read
* Actions: use read-all for reusable release checks
* CI: add native cross-OS release checks
* CI: wire Discord smoke secrets for cross-OS checks
* CI: fix native cross-OS installer compatibility
* CI: skip empty pnpm cache saves in matrix jobs
* CI: honor workflow runner override envs
* CI: finish native cross-OS update checks
* CI: fix native cross-OS workflow regressions
* Installer: capture Windows npm stderr safely
* CI: harden cross-OS release checks
* CI: resolve reusable workflow harness ref
* CI: stabilize cross-OS dev update lanes
* CI: tighten release-check workflow semantics
* CI: repoint repaired git CLI on POSIX
* CI: repair native dev-update shell handoff
* CI: preserve real updater semantics
* CI: harden supported release-check refs
* CI: harden release-check refs and fresh mode
* CI: skip dev-update for immutable tag refs
* CI: repair fresh installer release checks
* CI: fix native release check installer lanes
* CI: install release checks from candidate artifacts
* CI: use Windows cmd shims in release checks
* Installer: run Windows npm shim via PowerShell
* CI: pin dev update verification to candidate sha
* CI: pin reusable harness and published installers
* CI: isolate Windows dev-update PATH validation
* CI: align Windows dev-update bootstrap validation
* CI: avoid Windows installer gateway flake
* CI: run cross-OS release checks via TypeScript
* CI: bootstrap tsx for release-check workflow
* CI: fix native release-check follow-ups
* CI: tighten dev-update release checks
* CI: peel annotated workflow refs
* CI: harden native release checks
* CI: fix release-check verifier drift
* CI: fix release-check workflow drift
* CI: fix release-check ref resolution
* CI: harden Windows release-check gateway startup
* CI: fix release-check fallback validation
* CI: harden cross-os release checks
* CI: pin dev-update release checks to candidate SHA
* CI: resolve remote dev target refs
* CI: detect cloned dev-update checkouts
* CI: harden Windows release-check launcher
* Windows: harden task fallback and runner overrides
* Release checks: preserve Windows PATH and baseline version reads
* CI: add release validation live lanes
* CI: expand live and e2e release coverage
* CI: add branch dispatch for live and e2e checks
2026-04-16 19:58:19 +02:00