Peter Steinberger
8fe6ac7fb9
refactor: remove pre-2026.4 compatibility shims and legacy migrations ( #104650 )
...
* refactor(matrix): retire pre-2026.4 legacy crypto and flat-storage migrations
* refactor(cli): drop pre-tsdown daemon-cli dist compat shim from the build
* refactor(diffs): remove deprecated image*/format tool params and output aliases
* refactor(ui): drop pre-gateway-scoped localStorage readers and legacy theme map
* refactor: remove assorted pre-2026.4 compat shims and deprecated aliases
* fix(discord): map legacy thread-binding fields in the doctor JSON import
* fix(msteams): keep bot read fallback for legacy imported conversation rows
* test(msteams): cover legacy bot-only imported conversation references
* fix(ui): keep channel-prefixed session key display fallback
* chore: refresh native i18n inventory and build-docker step count
* chore(matrix): drop now-unused migration-config module
* chore: re-pin plugin SDK public export budget after compat removals
* chore: refresh native i18n inventory after rebase
* chore: re-pin plugin SDK callable budget and refresh i18n inventory after rebase
2026-07-11 13:22:27 -07:00
Peter Steinberger
4b751ce48a
feat(tooling): complete packages/* noUncheckedIndexedAccess adoption (phase 2) ( #104626 )
...
* feat(tooling): extend strict-ratchet lane to all remaining leaf packages
* fix(packages): burn down indexed-access debt in ai and agent-core
All 196 noUncheckedIndexedAccess errors fixed behavior-identically
(iteration, .at()/slices, DataView byte math, guarded queue peeks) plus
cleanup finds: a sparse-tool diagnostic bug, deduplicated Responses
call/item ID parsing with an honest string|undefined splitter, and a
clearer local failure for redacted-thinking blocks missing signatures.
Removes all 17 remaining non-null assertions across ai, gateway-client,
and llm-core so the assertion ban aligns 1:1 with the ratchet lane.
speech-core joins memory-host-sdk as structurally deferred (imports
src/** via plugin-sdk path mappings).
2026-07-11 11:54:06 -07:00
NianJiu
54eda58447
fix(gateway-client): stop unbounded requests masking stalled transports ( #103407 )
...
* fix(gateway-client): keep watchdog active for unbounded requests
* test(gateway-client): prove watchdog recovery lifecycle
* style(gateway-client): satisfy watchdog test lint
---------
Co-authored-by: NianJiuZst <180004567+NianJiuZst@users.noreply.github.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-11 00:27:34 -07:00
Peter Steinberger
1bcc4c5e70
feat(gateway): add cooperative host suspension ( #103618 )
...
* feat(gateway): add cooperative suspension preparation
* style: satisfy suspension lint checks
* test(gateway): reset work admission between shared suites
* fix(gateway): reject upgrades during suspension
* fix(gateway): preserve admitted work during suspension
* test(gateway): isolate suspension and restart state
* fix(gateway): close suspension false-ready gaps
* refactor(protocol): slim suspension declaration graph
* refactor(plugin-sdk): sever protocol registry edges
* fix(gateway): preserve admitted restart follow-ups
* fix(gateway): make suspension recovery fail closed
* fix(protocol): keep validation formatter re-export only
* test(gateway): simplify deferred fixture type
* style(gateway): clarify suspension entry name
* fix(gateway): retain detached work admission
2026-07-10 20:24:53 +01:00
Dallin Romney
8fa83d2742
refactor(gateway): consolidate client contracts ( #101012 )
2026-07-08 10:56:31 -06:00
Dallin Romney
95e3b9243b
test: execute media and Talk runtime boundaries ( #101091 )
...
* test: execute media and Talk runtime boundaries
* test(qa): centralize gateway fixture startup
* test(qa): check in voice call plugin fixture
2026-07-06 16:25:33 -07:00
Peter Steinberger
0acd851a3b
feat(agents): add managed git worktree lifecycle (create/provision/snapshot/restore/GC) ( #100535 )
...
Centralized managed worktrees under <state-dir>/worktrees/<repo-fingerprint>/<name>
with branch-per-task (openclaw/<name>), .worktreeinclude provisioning, an optional
.openclaw/worktree-setup.sh repo hook, and a SQLite registry in the shared state DB.
Removal always snapshots the tree (untracked included, gitignored excluded) to
refs/openclaw/snapshots/<id>; restore rebuilds the branch at the original commit with
the snapshot content as uncommitted state. Lossless run-end cleanup, 7-day idle GC for
run-owned worktrees (manual exempt), orphan reconciliation, 30-day snapshot retention.
Surfaces: worktrees.* gateway RPC (operator.admin mutations), openclaw worktrees CLI,
Control UI page, plugin-SDK facade + Workboard kind:"worktree" materialization.
E2E-verified on Testbox: full create->work->remove->restore->gc lifecycle.
2026-07-06 05:24:58 +01: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
Peter Lee
6256ad86c9
fix(gateway): classify probe reachability by validated transport ( #93948 )
...
Distinguish validated gateway reachability from pre-open and TLS-validation failures, and sanitize close diagnostics before terminal output.
Fixes #79099 .
Co-authored-by: xialonglee <li.xialong@xydigit.com >
2026-06-19 11:56:16 +01:00
Vincent Koc
09427aa760
fix(gateway): contain lifecycle callback errors
2026-06-19 05:15:20 +02:00
Vincent Koc
47cad606f4
fix(gateway): clean pending request when send fails
2026-06-17 14:38:34 +02:00
Vincent Koc
9d04064e73
fix(gateway): honor injected env for watchdog timeouts
2026-06-17 14:26:07 +02:00
Vincent Koc
20964d3e3b
fix(gateway): tolerate transient pre-hello clean closes ( #93528 )
...
* fix(gateway): tolerate transient pre-hello clean closes
Co-authored-by: RayRuan <43744645+ruanrrn@users.noreply.github.com >
* fix(clownfish): address review for ghcrawl-156871-autonomous-smoke (1)
Co-authored-by: RayRuan <43744645+ruanrrn@users.noreply.github.com >
---------
Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com>
Co-authored-by: RayRuan <43744645+ruanrrn@users.noreply.github.com >
2026-06-16 14:43:36 +08:00
Vincent Koc
66749a3713
test: consolidate wrapper facade coverage
2026-06-09 20:12:25 +09:00
Peter Steinberger
4df95d3c3f
docs: document package sources
2026-06-04 20:54:41 -04:00
Peter Steinberger
5a10f46c56
docs: document sdk package facades
2026-06-04 01:26:12 -04:00
Vincent Koc
8c89d35a8a
fix(gateway): cancel stop terminate fallback
2026-06-03 17:28:00 +02:00
Peter Steinberger
27dde7a4d6
chore(lint): enable stricter error rules
2026-06-01 01:12:21 +01:00
Peter Steinberger
22cb7fb6b7
chore(lint): enable no-promise-executor-return
2026-05-31 23:06:13 +01:00
Peter Steinberger
85beee613c
docs: clarify inline code comments
...
Comment-only follow-up documenting reusable gateway, auth, proxy, device, Talk, session, and agent helper contracts.\n\nVerification: git diff --check plus targeted tests recorded in PR body.
2026-05-31 14:37:41 +01:00
Peter Steinberger
32c0279cec
perf(cli): narrow gateway dispatch startup
2026-05-31 13:56:27 +01:00
Peter Steinberger
f5eca3f84c
chore(lint): enable object and reassignment rules
2026-05-31 09:32:52 +01:00
Peter Steinberger
2bdb2e8e02
fix(gateway-client): clamp readiness intervals
2026-05-31 01:37:46 -04:00
Peter Steinberger
984951f55c
fix(gateway-client): clamp tick watchdog intervals
2026-05-31 01:37:46 -04:00
Peter Steinberger
8d8f5a59e2
fix(agents): cap overflowed wait timeout grace
2026-05-30 03:30:42 -04:00
Peter Steinberger
fe69df6b3a
fix(gateway-client): cap stop wait timeout
2026-05-29 17:55:17 -04:00
Vincent Koc
f019e27c1d
refactor: share gateway client readiness helpers
2026-05-29 15:19:29 +02:00
Peter Steinberger
ed62aefeee
refactor(gateway): centralize handshake timeout parsing
2026-05-29 05:56:21 -04:00
Peter Steinberger
8e56c024df
fix(gateway): cap handshake timer delays
2026-05-29 02:38:45 -04:00
Peter Steinberger
2f8b1a8c0e
fix(gateway): default non-finite readiness waits
2026-05-28 22:24:00 -04:00
Peter Steinberger
6f2add2cc6
fix(gateway): centralize safe timeout delays
2026-05-28 22:15:15 -04:00
Peter Steinberger
025e6ac31d
refactor: tighten gateway client test boundary
2026-05-29 02:56:51 +01:00
Peter Steinberger
b1117d9862
refactor: extract gateway client package ( #87797 )
...
* refactor: extract gateway client package
* chore: drop generated gateway package artifacts
* refactor: move gateway protocol package
* refactor: remove old gateway protocol tree
* test: keep auth compat split in run mode
* test: expose gateway wrapper options for internals
* fix: watch moved gateway package sources
* test: normalize slash command import guard
* chore: teach knip gateway package entries
* ci: route gateway client package checks
* fix: reuse ipaddr for gateway client hosts
* fix: sync gateway protocol usage schema
2026-05-29 02:23:42 +01:00