Rami Abdelrazzaq
0b8b95f2c9
fix(update): prevent gateway crash loop after failed self-update
...
The gateway unconditionally scheduled a SIGUSR1 restart after every
update.run call, even when the update itself failed (broken deps,
build errors, etc.). This left the process restarting into a broken
state — corrupted node_modules, partial builds — causing a crash loop
that required manual intervention.
Three fixes:
1. Only restart on success: scheduleGatewaySigusr1Restart is now
gated on result.status === "ok". Failed or skipped updates still
write the restart sentinel (so the status can be reported back to
the user) but the running gateway stays alive.
2. Early bail on step failure: deps install, build, and ui:build now
check exit codes immediately (matching the preflight section) so a
failed deps install no longer cascades into a broken build and
ui:build.
3. Auto-repair config during update: the doctor step now runs with
--fix alongside --non-interactive, so unknown config keys left over
from schema changes between versions are stripped automatically
instead of causing a startup validation crash.
2026-02-16 23:54:49 +01:00
Peter Steinberger
dece9e8b07
refactor(update): share package.json readers
2026-02-16 00:41:28 +00:00
Peter Steinberger
e89c7b7735
refactor(infra): dedupe update checkout step
2026-02-15 16:22:06 +00:00
Peter Steinberger
ffa27ddcbc
refactor(update): dedupe package manager detection
2026-02-15 04:34:39 +00:00
Gustavo Madeira Santana
c75275f109
Update: harden control UI asset handling in update flow ( #10146 )
...
* Update: harden control UI asset handling in update flow
* fix: harden update doctor entrypoint guard (#10146 ) (thanks @gumadeiras)
2026-02-06 01:14:00 -05:00
Gustavo Madeira Santana
b40da2cb7a
fix: remove dead restore control-ui step from update runner
2026-02-05 22:10:55 -05:00
Gustavo Madeira Santana
7b2a221212
chore: run lint step after build during preflight check
2026-02-05 21:22:27 -05:00
Peter Steinberger
bbe9cb3022
fix(update): honor update.channel for update.run
2026-02-03 17:57:55 -08:00
Peter Steinberger
57d008a33d
fix(update): harden global updates
2026-02-02 04:45:14 -08:00
cpojer
f06dd8df06
chore: Enable "experimentalSortImports" in Oxfmt and reformat all imorts.
2026-02-01 10:03:47 +09:00
cpojer
5ceff756e1
chore: Enable "curly" rule to avoid single-statement if confusion/errors.
2026-01-31 16:19:20 +09:00
Peter Steinberger
9a7160786a
refactor: rename to openclaw
2026-01-30 03:16:21 +01:00
Peter Steinberger
6d16a658e5
refactor: rename clawdbot to moltbot with legacy compat
2026-01-27 12:21:02 +00:00
Peter Steinberger
83460df96f
chore: update molt.bot domains
2026-01-27 12:21:01 +00:00
Shadow
6d60c32570
Update: ignore dist/control-ui in dirty check ( #1976 )
...
Co-authored-by: Glucksberg <glucksberg@users.noreply.github.com >
2026-01-25 21:07:51 -06:00
Peter Steinberger
ff3d8cab2b
feat: preflight update runner before rebase
2026-01-22 04:19:33 +00:00
Peter Steinberger
5dcd48544a
feat: align update channel installs
2026-01-21 06:00:54 +00:00
Peter Steinberger
3d5ffee07f
fix: prefer stable release when beta lags
2026-01-20 16:36:04 +00:00
Peter Steinberger
4ebf55f1db
feat: add dev update channel
2026-01-20 13:41:30 +00:00
Peter Steinberger
a9f21b3d3a
feat: add update channel support
2026-01-17 11:40:05 +00:00
Peter Steinberger
a51ed8a5dd
fix(cli): auto-update global installs
2026-01-16 11:45:37 +00:00
Peter Steinberger
c379191f80
chore: migrate to oxlint and oxfmt
...
Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com >
2026-01-14 15:02:19 +00:00
Rony Kelner
07bdb8af7e
fix: pass --non-interactive to doctor during update
2026-01-13 00:57:18 +00:00
Peter Steinberger
5ec3663748
fix: guard update spinner output ( #701 ) (thanks @bjesuiter)
2026-01-11 03:03:09 +01:00
Benjamin Jesuiter
f3bd6e4957
fix(update): use git status --porcelain for dirty check cross-platform
2026-01-11 03:00:43 +01:00
Benjamin Jesuiter
6cb55eaaa7
feat(update): show stderr for failed steps
2026-01-11 03:00:43 +01:00
Benjamin Jesuiter
4102e2f1b8
refactor(update): simplify progress with proper exit codes
2026-01-11 03:00:43 +01:00
Benjamin Jesuiter
35d42be828
fix(update): show skipped status with warning indicator for dirty repo
2026-01-11 03:00:43 +01:00
Benjamin Jesuiter
88c404bcfc
feat(update): add progress spinner during update steps
2026-01-11 03:00:43 +01:00
Peter Steinberger
3389231ecb
feat(doctor): offer update first
2026-01-10 21:34:59 +01:00
Peter Steinberger
4c4c167416
fix(update): harden root selection
2026-01-10 20:33:02 +01:00
Peter Steinberger
c46bab35df
fix: drop explicit ui:install step
2026-01-09 07:02:42 +00:00
Peter Steinberger
71c31266a1
feat: add gateway config/update restart flow
2026-01-08 01:30:02 +01:00