zhangqueping
15fc881281
fix(cli): clarify safe restart bounded-then-force behavior in help and docs
2026-06-28 19:18:13 -07:00
Andy Ye
ca2f4c0d67
Warn on generated wrapper overwrites and status diagnostics ( #90537 )
...
Merged via squash.
Prepared head SHA: c6b6589e6d
Co-authored-by: TurboTheTurtle <35905412+TurboTheTurtle@users.noreply.github.com >
Co-authored-by: vincentkoc <25068+vincentkoc@users.noreply.github.com >
Reviewed-by: @vincentkoc
2026-06-23 13:39:20 +08:00
Peter Steinberger
0b8aabe864
docs: document auth profile failure policy contract ( #89613 )
...
* docs: document markdown marker renderer
* docs: document rendered markdown chunking
* docs: document markdown text chunking
* docs: document shared text chunking
* docs: document plugin text chunking exports
* docs: document avatar policy constants
* docs: document node match candidates
* docs: document scoped expiring id cache
* docs: document runtime import normalization
* docs: document string sample summaries
* docs: document session usage timeseries types
* docs: document session usage response types
* docs: document manifest frontmatter shapes
* docs: document channel route input metadata
* docs: document pair loop guard settings
* docs: document migration config patch helpers
* docs: document api provider registry
* docs: document tool call repair payloads
* docs: document plugin tool payload helpers
* docs: document lazy promise loader
* docs: document store writer queue state
* docs: document thread binding lifecycle
* docs: document concurrency helper contract
* docs: document gateway client info contract
* docs: document delivery context contracts
* docs: document secret ref defaults contract
* docs: document command gating contract
* docs: document avatar policy contract
* docs: document node match policy
* docs: document message channel normalization
* docs: document boolean parsing contract
* docs: document zod parse helpers
* docs: document direct dm guard policy
* docs: document fixed window limiter contract
* docs: document node presence event contract
* docs: document secret normalization contract
* docs: document progress draft line removal
* docs: document usage formatting contracts
* docs: document agent run status contract
* docs: document runtime import helpers
* docs: document provider utility ownership
* docs: document invalid config helpers
* docs: document json compat parser
* docs: document channel config metadata ownership
* docs: document channel logging helpers
* docs: document sender identity validation ownership
* docs: document string sampling helper
* docs: document global singleton helpers
* docs: document transcript tool helpers
* docs: document exec safe-bin normalization
* docs: document reaction level resolver
* docs: document account snapshot redaction boundary
* docs: document messaging target helpers
* docs: document thread binding messages
* docs: document conversation binding context
* docs: document conversation resolution helper
* docs: document owner display secret retention
* docs: document provider request config types
* docs: document skills config types
* docs: document memory config types
* docs: document imessage config types
* docs: document crestodian config types
* docs: document tools config policies
* docs: document shared config base types
* docs: document channel config contracts
* docs: document openclaw config state types
* docs: document model config contracts
* docs: document shared agent config types
* docs: document agent defaults config types
* docs: document secret input contracts
* docs: document auth config contracts
* docs: document gateway config contracts
* docs: document tool call stream repair contracts
* docs: document memory host facades
* docs: document llm core contracts
* docs: document markdown core contracts
* docs: document gateway connect error contracts
* docs: document gateway protocol primitives
* docs: document gateway frame schemas
* docs: document gateway device schemas
* docs: document gateway environment schemas
* docs: document gateway push schemas
* docs: document gateway plugin schemas
* docs: document gateway artifact schemas
* docs: document gateway command schemas
* docs: document gateway task schemas
* docs: document gateway exec approval schemas
* docs: document gateway secret schemas
* docs: document gateway config schemas
* docs: document gateway snapshot schemas
* docs: document gateway chat schemas
* docs: document gateway wizard schemas
* docs: document gateway node schemas
* docs: document gateway plugin approval schemas
* docs: document gateway talk schemas
* docs: document gateway agent schemas
* docs: document gateway session schemas
* docs: document gateway cron schemas
* docs: document gateway agent model skill schemas
* docs: document gateway skill proposal tool schemas
* docs: document gateway protocol registry
* docs: document gateway channel status schemas
* docs: document gateway schema regression tests
* docs: document gateway schema barrel
* docs: document gateway validator tests
* docs: document gateway primitive push tests
* docs: document gateway contract tests
* docs: document native protocol guard
* docs: document channel schema tests
* docs: document gateway protocol smoke tests
* docs: document gateway protocol entrypoint
* docs: document gateway protocol type exports
* docs: document gateway error codes
* docs: document protocol schema registry
* docs: document talk audio codec
* docs: document talk activation names
* docs: document talk consult questions
* docs: document talk consult tool
* docs: document talk run control contracts
* docs: document talk run control adapter
* docs: document talkback consult queue
* docs: document talk consult transcript guard
* docs: document talk fast context runtime
* docs: document forced talk consult coordinator
* docs: document talk output activity tracker
* docs: document talk event metrics
* docs: document talk diagnostics
* docs: document talk observability hook
* docs: document talk provider resolver
* docs: document talk provider registry
* docs: document talk runtime primitives
* docs: document talk consult controller logs
* docs: document channel identity helpers
* docs: document channel account allowlist helpers
* docs: document channel metadata draft controls
* docs: document channel ingress policy
* docs: document channel sender access gates
* docs: document channel catalog message contracts
* docs: document channel account plugin helpers
* docs: document configured binding helpers
* docs: document channel acp approval config helpers
* docs: document channel bundled config write helpers
* docs: document channel plugin utility contracts
* docs: document channel config access helpers
* docs: document channel message action helpers
* docs: document channel outbound runtime helpers
* docs: document channel pairing promotion helpers
* docs: document channel registry helpers
* docs: document channel setup wizard helpers
* docs: document channel lifecycle status helpers
* docs: document channel target thread helpers
* docs: document channel session binding helpers
* docs: document channel package module probes
* docs: document channel setup wizard contracts
* docs: document channel plugin API barrels
* docs: document channel contract test helpers
* docs: document channel core helpers
* docs: document small core facades
* docs: document provider runtime helpers
* docs: document persistence and realtime helpers
* docs: document mcp and state helpers
* docs: document tool planner contracts
* docs: document music generation runtime
* docs: document crestodian command flow
* docs: document utility helpers
* docs: document node host helpers
* docs: document transcript contracts
* docs: document trajectory export contracts
* docs: document image generation contracts
* docs: document routing helper contracts
* docs: document session helper contracts
* docs: document video generation contracts
* docs: document model catalog contracts
* docs: document proxy capture contracts
* docs: document status rendering contracts
* docs: document test helper contracts
* docs: document wizard setup contracts
* docs: document process contracts
* docs: document memory host sdk contracts
* docs: document tts contracts
* docs: document secrets runtime contracts
* docs: document shared helper contracts
* docs: document hook runtime contracts
* docs: document security audit contracts
* docs: document flow contracts
* docs: document media understanding contracts
* docs: document tui contracts
* docs: document logging contracts
* docs: document llm contracts
* docs: document cron contracts
* docs: document daemon contracts
* docs: document task contracts
* docs: document acp contracts
* docs: document test utility contracts
* docs: document skill contracts
* docs: document config contracts
* docs: document outbound infra contracts
* docs: document command analysis contracts
* docs: document provider usage infra contracts
* docs: document file safety infra contracts
* docs: document exec approval infra contracts
* docs: document gateway runtime infra contracts
* docs: document infra utility contracts
* docs: document infra queue storage contracts
* docs: document heartbeat infra contracts
* docs: document remaining infra contracts
* docs: document gateway auth contracts
* docs: document gateway display helpers
* docs: document gateway http helpers
* docs: document gateway node helpers
* docs: document gateway mcp helpers
* docs: document gateway support helpers
* docs: document gateway server runtime helpers
* docs: document gateway runtime bootstrap helpers
* docs: document gateway session events
* docs: document gateway utility helpers
* docs: document gateway talk helpers
* docs: document gateway helper contracts
* docs: document gateway server method helpers
* docs: document gateway server auth helpers
* docs: document gateway server tests
* docs: document gateway test helpers
* docs: document gateway node tests
* docs: document gateway channel tests
* docs: document gateway session tests
* docs: document gateway server startup tests
* docs: document gateway tool test helpers
* docs: document gateway server test helpers
* docs: document gateway server method tests
* docs: document remaining gateway tests
* docs: document plugin sdk public subpaths
* docs: document plugin sdk runtime helpers
* docs: document plugin sdk memory provider helpers
* docs: document plugin sdk runtime facades
* docs: document plugin sdk command approval helpers
* docs: document plugin sdk runtime types
* docs: document plugin sdk browser account helpers
* docs: document plugin sdk media memory helpers
* docs: document plugin sdk core tests
* docs: document plugin sdk contract helpers
* docs: document plugin sdk test helpers
* docs: document remaining plugin sdk tests
* docs: document cli utility helpers
* docs: document cli runtime helpers
* docs: document cli command registration helpers
* docs: document node cli helpers
* docs: document cli program registration
* docs: document message cli registration
* docs: document daemon cli helpers
* docs: document cli route parsers
2026-06-03 15:20:39 -07:00
Yuval Dinodia
b988e2f92b
fix(daemon): detect system-scope systemd gateway units on Linux
...
Detect OpenClaw gateway units installed in the system systemd scope, including marker-owned custom unit names such as `openclaw.service`. Route status/restart/stop through the system manager when appropriate, and show non-root users the matching `sudo systemctl ...` command instead of falling back to unmanaged process signaling.
Fixes #87577 .
Thanks @yetval.
Verification:
- `node scripts/run-vitest.mjs src/daemon/systemd.test.ts src/cli/daemon-cli/lifecycle.test.ts src/daemon/inspect.test.ts src/cli/daemon-cli/lifecycle-core.test.ts src/cli/daemon-cli/status.gather.test.ts src/cli/daemon-cli/response.test.ts src/commands/doctor-gateway-daemon-flow.test.ts src/cli/update-cli/restart-helper.test.ts src/infra/outbound/message-action-runner.core-send.test.ts`
- AWS Crabbox `cbx_69f97dff5e5c`, run `run_a68431b3dad6`: exact SHA checkout, focused tests, real `/etc/systemd/system/openclaw.service` status/restart/stop proof.
2026-05-31 18:52:02 +01:00
Peter Steinberger
deb7bc6539
chore(lint): enable readability lint rules
2026-05-31 07:17:57 +01:00
Peter Steinberger
00d8d7ead0
refactor: extract normalization core package
...
Extract shared normalization/coercion helpers into private @openclaw/normalization-core workspace package while preserving existing plugin SDK helper subpaths.\n\nAlso keeps direct normalization-core imports internal, wires UI/build/loader resolution, and replaces the slow PR network CodeQL lane with a fast added-line boundary scan while retaining full CodeQL for scheduled/manual runs.\n\nVerification: local moved tests, plugin SDK boundary tests, extension loader tests, agents-support shard, UI build/test, build artifacts, lint, workflow guards, autoreview, and GitHub CI passed on PR head 963d893715 .
2026-05-31 01:33:00 +01:00
Peter Steinberger
de1dfab03e
refactor: move terminal core into package ( #88279 )
...
* refactor: move terminal core into package
* refactor: move terminal module files
* fix: clean terminal package CI followups
* test: update lint suppression allowlist
* fix: ship terminal core runtime aliases
2026-05-30 11:07:45 +02:00
Peter Steinberger
6369bf64cd
fix(gateway): trace restart intent reasons
2026-05-16 21:23:06 +01:00
Solomon Neas
b81414be45
fix: expose safe restart deferral bypass ( #78658 )
...
Expose the existing safe-restart skipDeferral escape hatch through gateway RPC and the daemon CLI, document the flag, and add restart/CLI regression coverage.
Also keep CLI failure output off the cold bootstrap graph and align CLI guidance expectations needed by current CI.
Co-authored-by: Solomon Neas <solomonneas@users.noreply.github.com >
2026-05-08 20:42:36 -04:00
Peter Steinberger
1f88cb2ce5
fix(gateway): persist macOS stop disable after bootout
...
Summary:
- carry forward #78412 's macOS LaunchAgent bootout-by-default stop behavior and repair guard
- fix the remaining `gateway stop --disable` tail when the service is already not loaded after bootout
- add lifecycle regressions, docs, and changelog
Verification:
- pnpm install
- pnpm test src/cli/daemon-cli/lifecycle-core.test.ts src/cli/daemon-cli/lifecycle.test.ts src/daemon/launchd.test.ts
- pnpm exec oxfmt --check --threads=1 CHANGELOG.md src/cli/daemon-cli/lifecycle-core.ts src/cli/daemon-cli/lifecycle.ts src/cli/daemon-cli/lifecycle-core.test.ts src/cli/daemon-cli/lifecycle.test.ts docs/cli/gateway.md docs/gateway/index.md src/daemon/launchd.ts src/daemon/launchd.test.ts src/cli/daemon-cli/register-service-commands.ts src/cli/daemon-cli/types.ts src/daemon/service-types.ts
- git diff --check origin/main...HEAD
- pnpm build
- Parallels macOS Tahoe VM reproduce/fix proof in PR body
- PR checks green: Real behavior proof, auto-response, dispatch, label, label-issues
Co-authored-by: wdeveloper16 <25180374+wdeveloper16@users.noreply.github.com >
2026-05-08 05:35:21 +01:00
Satoshi F.
103cdd9d96
fix(gateway): add safe restart coordinator ( #76923 )
...
Add a safe restart coordinator that preflights active Gateway work before restart.
- expose gateway.restart.preflight and gateway.restart.request RPC methods
- add explicit openclaw gateway restart --safe / openclaw daemon restart --safe path
- narrow restart blockers to running non-ended tasks so queued records no longer block indefinitely
- keep existing restart behavior unchanged; --force remains the immediate override
Co-authored-by: NikolaFC <54186359+NikolaFC@users.noreply.github.com >
Co-authored-by: galiniliev <5711535+galiniliev@users.noreply.github.com >
2026-05-04 10:58:36 -07:00
Peter Steinberger
2a7d6f6f13
fix(ci): satisfy lint after restart controls
2026-05-02 23:05:26 +01:00
Vincent Koc
f6f8d74419
fix(gateway): expose restart drain controls
2026-05-02 14:43:59 -07:00
Peter Steinberger
3b1a020eba
fix: repair stale gateway service on start
2026-05-02 20:56:35 +01:00
Vincent Koc
60d4d5e1fa
fix(daemon): reconcile macOS LaunchAgent supervision state ( #72616 )
2026-04-26 22:39:15 -07:00
Peter Steinberger
6d409a6182
test: harden Parallels fresh install smoke
2026-04-21 05:34:25 +01:00
Vincent Koc
604a5e07d0
perf(cli): lazy-resolve daemon stop fallback port
2026-04-14 17:39:21 +01:00
Vincent Koc
3059b36306
fix(config): split command flag helpers
2026-04-12 00:05:01 +01:00
Peter Steinberger
0ebeee8b0d
chore: enable consistent-return
2026-04-10 20:56:43 +01:00
Peter Steinberger
9869941c06
refactor: dedupe auth session readers
2026-04-07 06:07:13 +01:00
Peter Steinberger
aa497e9c52
refactor: extract daemon launchd recovery helper
2026-04-05 09:16:44 +01:00
Peter Steinberger
fd968bfb2d
fix: recover unloaded macOS launch agents ( #43766 )
2026-04-05 17:06:22 +09:00
tmimmanuel
0fef95b17d
fix: preserve Windows scheduled task restart/install behavior ( #59335 ) (thanks @tmimmanuel)
...
* fix(daemon): preserve Windows Task Scheduler settings on reinstall and exit early on failed restart
* fix(daemon): add test coverage for Create/Change paths, fix early exit grace period
* fix(daemon): fix startup-fallback tests for new isRegisteredScheduledTask call
* fix(daemon): report early restart failure accurately
* fix: preserve Windows scheduled task restart/install behavior (#59335 ) (thanks @tmimmanuel)
---------
Co-authored-by: Ayaan Zaidi <hi@obviy.us >
2026-04-04 08:46:00 +05:30
bot_apk
98f6ec50aa
fix: address 6 review comments on PR #47719
...
1. [P1] Treat remap failures as resume failures — if replaceSubagentRunAfterSteer
returns false, do NOT clear abortedLastRun, increment failed count.
2. [P2] Count scan-level exceptions as retryable failures — set result.failed > 0
in the outer catch block so scheduleOrphanRecovery retry logic triggers.
3. [P2] Persist resumed-session dedupe across recovery retries — accept
resumedSessionKeys as a parameter; scheduleOrphanRecovery lifts the Set to
its own scope and passes it through retries.
4. [Greptile] Use typed config accessors instead of raw structural cast for TLS
check in lifecycle.ts.
5. [Greptile] Forward gateway.reload.deferralTimeoutMs to deferGatewayRestartUntilIdle
in scheduleGatewaySigusr1Restart so user-configured value is not silently ignored.
6. [Greptile] Same as #4 — already addressed by the typed config fix.
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-03-15 22:32:36 -07:00
Joey Krug
c780b6a6ab
fix: address all review comments on PR #47719 + implement resume context and config idempotency guard
2026-03-15 22:32:36 -07:00
Peter Steinberger
5ea03efe92
fix: harden windows gateway lifecycle
2026-03-13 18:33:59 +00:00
Peter Steinberger
b31836317a
fix(cli): handle scheduled gateway restarts consistently
2026-03-12 01:38:39 +00:00
Peter Steinberger
32a6eae576
refactor: share gateway argv parsing
2026-03-08 23:38:24 +00:00
Peter Steinberger
f2a4bdf069
fix(ci): resolve current gate regressions
2026-03-08 03:34:36 +00:00
Vincent Koc
bf9c362129
Gateway: stop and restart unmanaged listeners ( #39355 )
...
* Daemon: allow unmanaged gateway lifecycle fallback
* Status: fix service summary formatting
* Changelog: note unmanaged gateway lifecycle fallback
* Tests: cover unmanaged gateway lifecycle fallback
* Daemon: split unmanaged restart health checks
* Daemon: harden unmanaged gateway signaling
* Daemon: reject unmanaged restarts when disabled
2026-03-07 18:20:29 -08:00
Vincent Koc
2c7fb54956
Config: fail closed invalid config loads ( #39071 )
...
* Config: fail closed invalid config loads
* CLI: keep diagnostics on explicit best-effort config
* Tests: cover invalid config best-effort diagnostics
* Changelog: note invalid config fail-closed fix
* Status: pass best-effort config through status-all gateway RPCs
* CLI: pass config through gateway secret RPC
* CLI: skip plugin loading from invalid config
* Tests: align daemon token drift env precedence
2026-03-07 17:48:13 -08:00
Peter Machona
c2d41dc473
fix(daemon): recover Windows restarts from unknown stale listeners (openclaw#24734) thanks @chilu18
...
Verified:
- pnpm vitest src/cli/daemon-cli/restart-health.test.ts src/cli/gateway-cli.coverage.test.ts
- pnpm oxfmt --check src/cli/daemon-cli/restart-health.ts src/cli/daemon-cli/restart-health.test.ts
- pnpm check (fails on unrelated repo baseline tsgo errors in extensions/* and src/process/exec.windows.test.ts)
Co-authored-by: chilu18 <7957943+chilu18@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-02 08:24:25 -06:00
Peter Machona
097a6a83a0
fix(cli): replace stale doctor/restart command hints ( #24485 )
...
* fix(cli): replace stale doctor and restart hints
* fix: add changelog for CLI hint updates (#24485 ) (thanks @chilu18)
---------
Co-authored-by: Muhammed Mukhthar CM <mukhtharcm@gmail.com >
2026-02-24 14:49:59 +05:30
Peter Steinberger
80f430c2be
fix(daemon): extend restart health timeout and improve restart errors
2026-02-23 01:50:02 +01:00
Peter Steinberger
905e355f65
fix: verify gateway restart health after daemon restart
2026-02-21 18:02:14 +01:00
Peter Steinberger
b8b43175c5
style: align formatting with oxfmt 0.33
2026-02-18 01:34:35 +00:00
Peter Steinberger
31f9be126c
style: run oxfmt and fix gate failures
2026-02-18 01:29:02 +00:00
Sebastian
111a24d55c
fix(daemon): scope token drift warnings
2026-02-17 08:44:24 -05:00
cpojer
d0cb8c19b2
chore: wtf.
2026-02-17 13:36:48 +09:00
Sebastian
ed11e93cf2
chore(format)
2026-02-16 23:20:16 -05:00
cpojer
90ef2d6bdf
chore: Update formatting.
2026-02-17 09:18:40 +09:00
Peter Steinberger
1b9c1c648d
refactor(daemon): share service lifecycle runner
2026-02-14 15:39:45 +00: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
58f638463f
fix: stop gateway before uninstall
2026-01-23 07:17:42 +00:00
Peter Steinberger
9e22f019db
feat: fold gateway service commands into gateway
2026-01-21 17:45:26 +00:00
Peter Steinberger
8a67d29748
fix: improve WSL2 systemd daemon hints
2026-01-17 18:19:55 +00:00
Peter Steinberger
2b8ce3f06b
feat: add json output for daemon lifecycle
2026-01-16 05:40:47 +00:00
Benjamin Jesuiter
daf471c450
fix: unify daemon service label resolution with env
2026-01-15 22:10:27 +00:00
Peter Steinberger
77cf40da87
feat: profile-aware gateway service names ( #671 )
...
Thanks @bjesuiter.
Co-authored-by: Benjamin Jesuiter <bjesuiter@gmail.com >
2026-01-15 05:23:41 +00:00