Commit Graph

4721 Commits

Author SHA1 Message Date
Vincent Koc
2d545c16c3 fix(ci): use corrected Kova release evaluator (#116920) 2026-08-01 19:44:38 +08:00
Dallin Romney
6baf4dd15f fix(release): validate candidates before Docker publication (#117252)
* fix(release): validate candidates before Docker publication

* fix(release): complete Docker publication gates

* fix(release): serialize Docker publication
2026-08-01 16:08:49 +08:00
Vincent Koc
f5a8cb02ea test(release): repair full validation regressions (#116931)
* test(discord): mock thread delete listener

* test(qa): expect blocked update evidence

* test(telegram): preserve recovered context body

* fix(test): configure kitchen-sink personality

* test(browser): expect canonical staged upload paths

* test(browser): canonicalize macOS download roots

* test(feishu): seed legacy session rows offline

* test(telegram): isolate message context session stores

* test(qqbot): expect canonical media paths

* test(anthropic): match canonical transcript paths

* test(qa): expect canonical session store keys

* test(gateway): isolate rewind media reads

* test(release): review plugin child spawns

* test(plugins): expect process-stable manifest metadata

* test(google): retire usage telemetry contracts
2026-08-01 15:42:50 +08:00
Peter Steinberger
137050cedd perf(update): reuse dev preflight build cache (#117246) 2026-07-31 22:59:44 -07:00
xingzhou
1f40646f7e fix(board): prevent emoji corruption in event notices (#111702)
* fix(board): preserve Unicode notice boundaries

* test(board): document surrogate boundary

* test(pr): isolate wrapper command inventory
2026-07-31 22:57:11 -07:00
Vincent Koc
6922ddd936 fix(qa): isolate runner discovery facades (#117203) 2026-08-01 13:40:11 +08:00
Dallin Romney
947886e764 fix(qa): align release harness contracts (#116812) 2026-08-01 13:24:10 +08:00
Peter Steinberger
45c2d5911a refactor(i18n): remove unused Apple contradiction report (#117182) 2026-07-31 20:36:52 -07:00
Sasan
6938f7dddb fix: allow gateway service commands for named profiles (#116314)
* fix: gateway service commands refuse a named profile or relocated OPENCLAW_HOME

- Resolve the default install identity against the canonical state directory
  for the active OpenClaw home and profile instead of the unprofiled OS
  account default.
- `--profile <name>` / `--dev` project `.openclaw-<profile>` state and config
  paths, so every named profile was classified as isolated state and refused
  `install`, `start`, `stop`, `restart`, `uninstall`, Doctor service repair,
  and self-update service handling.
- `OPENCLAW_HOME` relocates all OpenClaw path defaults and is documented for
  running as a dedicated service user; a relocated home is now an install
  identity. `HOME` alone still is not.
- An `OPENCLAW_STATE_DIR` or `OPENCLAW_CONFIG_PATH` pointing outside those
  canonical paths is still treated as isolated state.
- Recovery guidance in the refusal message now names the paths that must match.

Verified: focused vitest shards for the changed suites plus the daemon, CLI,
and doctor suites that consume the identity check; tsgo core and core-test
lanes; oxlint; docs format, MDX, link, and map checks.

* fix(gateway): keep relocated homes isolated

* fix(config): validate service profile identity

* fix(daemon): enforce named-profile service ownership

* fix(update): reject drifted service selectors before probes

* test(windows): prove scheduled task lifecycle

* test(windows): harden scheduled task proof cleanup

* test(windows): bind lifecycle proof to checkout

* test(windows): normalize cleanup exit status

* test(windows): verify effective task privilege

* test(windows): protect scheduled task proof roots

* test(windows): prove listener-owned task lifecycle

* test(windows): fix scheduled task proof contracts

* test(windows): remove redundant mock coercions

* test(windows): measure fallback before task probes

* test(windows): prove scheduled task process origin

* fix(gateway): preserve unmanaged restart fallback

* test(gateway): cover denied restart ownership

* test(gateway): keep restart helper types private

* test(gateway): classify lifecycle helpers as test code

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-08-01 11:28:39 +08:00
Peter Steinberger
7e78de747b refactor(ui): replace duplicated locale bundles with canonical translation memory (#117157)
* refactor(ui): generate locale bundles from canonical translation memory

* fix(ui): keep server-only locale config out of browser test helpers
2026-07-31 19:40:27 -07:00
Vincent Koc
89aadef6ef feat(plugins): externalize iMessage channel (#117101) 2026-08-01 08:01:18 +08:00
Peter Steinberger
2fcb47ad1e refactor(test): derive changed-test routes from canonical owners (#117099)
* refactor(test): derive changed-test routes from canonical owners

* fix(test): type workflow owner descriptors for lint
2026-07-31 16:40:46 -07:00
Peter Steinberger
433bb3f954 fix(cli): make commands, completion, and JSON output reliable (#116033)
* fix(cli): make commands, completion, and JSON output reliable

* fix(cli): reconcile completion coverage with current main

* test(cli): keep test routing stable across isolation lanes
2026-07-31 16:20:34 -07:00
Vincent Koc
61fb29e90a feat(plugins): externalize OpenCode Go provider (#117064) 2026-08-01 06:31:19 +08:00
Vincent Koc
a26f6c8374 fix(test): avoid macOS release gate deadlocks (#116972)
Fix macOS test harness deadlocks in workflow and release evidence fixtures.
2026-08-01 06:19:23 +08:00
Jason (Json)
ae27d79364 fix(updater): harden launchd replacement timing (#117030)
* fix(updater): harden launchd replacement timing

* fix(updater): recover failed launchd replacement
2026-07-31 16:02:00 -06:00
Peter Steinberger
21fba83254 fix: live updater no-op restarts healthy gateways (#117038)
* fix(updater): route managed health through overlay

* style: format live updater probe

* test: align live updater readiness types
2026-07-31 14:34:14 -07:00
Vincent Koc
e73250f54b feat(plugins): externalize OpenCode provider (#117035)
* feat(plugins): externalize OpenCode provider

* docs: refresh OpenCode provider map
2026-08-01 05:07:35 +08:00
Peter Steinberger
d66b514a7e fix: allow slower gateway readiness after updates (#117032) 2026-07-31 13:38:06 -07:00
Vincent Koc
e84e2a49fc feat(plugins): externalize NovitaAI provider (#117007) 2026-08-01 03:53:46 +08:00
Vincent Koc
8b93fd963c feat(plugins): externalize Mistral provider (#116919)
* feat(plugins): externalize Mistral provider

* fix(update): preserve external provider models during repair

* chore(release): keep Mistral note in PR body
2026-08-01 03:04:12 +08:00
Vincent Koc
a1026663ae feat(plugins): externalize ComfyUI provider (#116888) 2026-07-31 23:26:51 +08:00
Vincent Koc
b45ca07ec9 fix(ci): keep full release validation aligned with runtime state (#116653)
Align Telegram artifact reuse and packaged Docker validation with current GitHub Actions and runtime state contracts. Refresh affected regression fixtures and isolate test state.
2026-07-31 23:03:02 +08:00
Vincent Koc
e93de36081 feat(plugins): externalize BytePlus provider (#116866) 2026-07-31 22:37:47 +08:00
Vincent Koc
a4b8ec7890 fix(ci): require fresh untrusted Crabbox leases 2026-07-31 22:28:20 +08:00
Vincent Koc
51988ee066 fix(ci): keep workload fallback provider-neutral 2026-07-31 22:28:20 +08:00
Vincent Koc
c630e4aec3 fix(ci): restore Crabbox routing type contracts 2026-07-31 22:28:20 +08:00
Vincent Koc
89e4ef2ab7 fix(ci): preserve routing failure diagnostics 2026-07-31 22:28:20 +08:00
Vincent Koc
3cf0de893e fix(ci): clarify broker recovery guidance 2026-07-31 22:28:20 +08:00
Vincent Koc
6eea564450 fix(ci): preserve original provider intent 2026-07-31 22:28:20 +08:00
Vincent Koc
11edc89613 fix(ci): harden direct cloud exemptions 2026-07-31 22:28:20 +08:00
Vincent Koc
adf07590f1 fix(ci): enforce workload provider eligibility 2026-07-31 22:28:20 +08:00
Vincent Koc
702de1a196 fix(ci): scope direct cloud overrides 2026-07-31 22:28:20 +08:00
Vincent Koc
fe08359ca8 fix(ci): preserve explicit provider overrides 2026-07-31 22:28:20 +08:00
Vincent Koc
67bde2fc3f fix(ci): keep workload routing broker-only 2026-07-31 22:28:20 +08:00
Vincent Koc
dca99ee4f2 fix(ci): preserve explicit direct cloud commands 2026-07-31 22:28:20 +08:00
Vincent Koc
642ded397b fix(ci): route changed checks through Crabbox policy 2026-07-31 22:28:20 +08:00
Vincent Koc
c2e5b3a67c feat(ci): add workload-aware Crabbox routing 2026-07-31 22:28:20 +08:00
Vincent Koc
b7eceb4595 fix(ci): target Testbox VM SSH sockets 2026-07-31 22:14:56 +08:00
Vincent Koc
a133f63488 fix(ci): preserve Testbox cancellation finalization 2026-07-31 22:14:56 +08:00
Vincent Koc
b702dcf4c5 fix(ci): close inbound Testbox SSH sessions 2026-07-31 22:14:56 +08:00
Vincent Koc
76ec3e96b6 test(ci): align Testbox lifecycle assertions 2026-07-31 22:14:56 +08:00
Vincent Koc
e47a1c3e1c fix(ci): close Testbox client sockets 2026-07-31 22:14:56 +08:00
Vincent Koc
3d2dbec9ce fix(ci): close Testbox SSH sessions on teardown 2026-07-31 22:14:56 +08:00
Vincent Koc
bd997c686f fix(ci): reuse Testbox dependency snapshot 2026-07-31 22:14:56 +08:00
Vincent Koc
fab2c33cad feat(plugins): externalize Xiaomi provider (#116861) 2026-07-31 22:02:07 +08:00
Vincent Koc
b2b62b2e1e feat(plugins): externalize Volcengine provider (#116854) 2026-07-31 21:28:01 +08:00
Vincent Koc
ba1a6722bb feat(plugins): externalize Vydra provider (#116813) 2026-07-31 20:35:43 +08:00
Vincent Koc
eb55c8ea8f feat(plugins): externalize Voyage embeddings (#116785)
* feat(voyage): externalize embedding provider

* fix(voyage): drop stale bundled description
2026-07-31 19:52:33 +08:00
wangyan2026
d865c9b8f5 fix(build): fail closed on symlinked build output roots (#116705)
Reject symlinked generated-output roots before build and postbuild mutation paths can recurse into unrelated targets. Cover aggregate, UI, export-template, bundled-plugin, Docker-prune, and plugin-runtime entry points with regression tests and migration guidance.

Closes #116498

Co-authored-by: WangYan <wang.yan29@xydigit.com>
2026-07-31 19:37:05 +08:00