Commit Graph

34459 Commits

Author SHA1 Message Date
Peter Steinberger
55389f4be2 perf: narrow msteams attachment imports 2026-04-24 04:29:12 +01:00
Vincent Koc
248baba54b docs(faq): fix stale openai fast-mode anchor 2026-04-23 20:29:01 -07:00
Peter Steinberger
88b53b7f0a docs: align talk silence defaults 2026-04-24 04:26:47 +01:00
Peter Steinberger
9ac52e0737 test: remove duplicate telegram retry tests 2026-04-24 04:26:31 +01:00
Vincent Koc
031c3b22de docs: clarify pruning behavior and setup TL;DR orientation 2026-04-23 20:26:26 -07:00
Peter Steinberger
a42bd94b21 ci: keep install smoke off pull requests 2026-04-24 04:24:58 +01:00
Peter Steinberger
b5779b992f fix(plugins): mirror SDK alias for staged sidecars 2026-04-24 04:24:58 +01:00
Peter Steinberger
e0d3256311 test(codex): cover app-server Docker flows 2026-04-24 04:24:08 +01:00
Peter Steinberger
69566e43cb feat(codex): add app-server protocol bridge 2026-04-24 04:24:08 +01:00
Peter Steinberger
553162c998 feat(agents): support Codex app-server runs 2026-04-24 04:24:07 +01:00
Peter Steinberger
5d0887574b feat(plugin-sdk): add conversation binding hooks 2026-04-24 04:24:07 +01:00
Vincent Koc
ffa5f4514f docs: unify See also/Related headings across remaining pages 2026-04-23 20:23:06 -07:00
Peter Steinberger
e93113db09 perf: lazy reply dispatch sdk runtime 2026-04-24 04:22:56 +01:00
Vincent Koc
34f7a93c04 docs(channels): rewrite passive-voice notes in msteams UPN and whatsapp fromMe bullets 2026-04-23 20:20:36 -07:00
Vincent Koc
3a5e535bed docs(help): split FAQ by extracting quick start and first-run Q&A into faq-first-run 2026-04-23 20:19:28 -07:00
Peter Steinberger
7d47183736 docs: fix config agent defaults link 2026-04-24 04:15:52 +01:00
Peter Steinberger
dbdf2863d6 docs: fix broken internal links 2026-04-24 04:13:20 +01:00
Vincent Koc
ed7033bc0a docs(providers): add Related sections to remaining provider pages 2026-04-23 20:12:50 -07:00
Vincent Koc
f051204bea docs(gateway): split configuration-reference by extracting channels cluster into config-channels 2026-04-23 20:12:09 -07:00
Vincent Koc
07cee914aa docs(gateway): split configuration-reference by extracting agent-defaults cluster into config-agents 2026-04-23 20:11:12 -07:00
Vincent Koc
72a8e4e5db docs(codex): clarify hook layering
Clarify Codex hook layering in the harness docs.
2026-04-23 20:09:46 -07:00
Peter Steinberger
60956ba6ac perf: narrow telegram bot test imports 2026-04-24 04:09:13 +01:00
Vincent Koc
8d1f98ef08 docs(gateway,platforms,cli): add Related sections to entry and reference pages 2026-04-23 20:08:26 -07:00
Vincent Koc
f0b6c65e3b docs(install,reference): add Related sections to pages missing them 2026-04-23 20:07:25 -07:00
Vincent Koc
b5120ab22a docs(platforms): link Bun warning to the Bun install page for context 2026-04-23 20:06:34 -07:00
Vincent Koc
78e4f5188a docs(install): move system requirements above the installer script section 2026-04-23 20:06:06 -07:00
Vincent Koc
1dfc84d0a4 docs(video-generation): convert provider notes table to accordion for scannability 2026-04-23 20:05:13 -07:00
Vincent Koc
9153598e65 docs(plugins): split architecture by extracting internals (load pipeline, runtime hooks, HTTP routes, schemas) 2026-04-23 20:03:22 -07:00
Peter Steinberger
47372a5567 fix: point minimax live docs test at split guide 2026-04-24 03:55:06 +01:00
Peter Steinberger
c6684af682 fix: guard openai realtime browser fetch 2026-04-24 03:50:43 +01:00
Patrick Erichsen
3a18801343 Add Discord live QA lane (#70792)
* Add Discord live QA lane

* Add Discord native command QA coverage
2026-04-23 19:48:37 -07:00
Peter Steinberger
1616510996 perf: narrow memory core test imports 2026-04-24 03:46:18 +01:00
Peter Steinberger
feb3cc70fb perf: narrow qa bus test imports 2026-04-24 03:44:56 +01:00
Peter Steinberger
85a2d1d05e fix: update realtime protocol swift models 2026-04-24 03:44:52 +01:00
Peter Steinberger
913f97c956 perf: lazy codex app server test imports 2026-04-24 03:42:00 +01:00
Vincent Koc
d3f6783b16 docs(tools): convert perplexity-search params to ParamField 2026-04-23 19:41:09 -07:00
Vincent Koc
5f19e288b1 docs(tools): convert search and web-fetch param tables to ParamField 2026-04-23 19:40:05 -07:00
Vincent Koc
f4b61e7277 docs(help): split testing by extracting live (network-touching) test suites 2026-04-23 19:38:59 -07:00
Vincent Koc
f4d73e1dcd docs(tools): split ACP agents by extracting acpx harness, plugin setup, and permissions 2026-04-23 19:36:19 -07:00
Vincent Koc
743b69d307 docs(tools): split browser docs by extracting control API and CLI reference 2026-04-23 19:34:50 -07:00
Vincent Koc
60d892d700 fix(reply): parse markdown image replies as media
* fix(reply): parse markdown image replies as media

* fix(reply): preserve inline markdown image captions

* fix(reply): harden markdown image parsing
2026-04-23 19:34:30 -07:00
Peter Steinberger
04066d246a feat: add browser realtime talk 2026-04-24 03:33:36 +01:00
Vincent Koc
d42069b11e fix(replay): preserve synthetic tool repair aliases
* fix(replay): preserve synthetic tool repair aliases

* test(replay): cover Bedrock repair ownership
2026-04-23 19:33:05 -07:00
Truffle
a958b6e723 fix(runner): surface provider errors to webchat (#70848)
Surface non-retryable assistant provider failures from the embedded runner instead of letting surface_error fall through to continue_normal.

- Preserve external abort and plain timeout fall-through paths.
- Preserve raw provider error diagnostics on surfaced FailoverError.
- Add regression coverage for billing/auth/rate-limit/null-reason/error fall-through cases.
- Update changelog.

Fixes #70124.
Thanks @truffle-dev.
2026-04-24 03:28:38 +01:00
Peter Steinberger
7c18b765e8 perf: reduce discord provider test imports 2026-04-24 03:27:31 +01:00
Peter Steinberger
dd1576204a docs(changelog): credit bundled runtime deps fix 2026-04-24 03:27:04 +01:00
Peter Steinberger
0daf51d645 fix(plugins): mirror sdk alias for external bundled deps 2026-04-24 03:27:04 +01:00
Peter Steinberger
49c95b31c0 test(e2e): run root-owned gateway logging as appuser 2026-04-24 03:27:04 +01:00
Peter Steinberger
b0244f613e fix(plugins): clean bundled runtime install stage 2026-04-24 03:27:04 +01:00
simonemacario
02a9dd0ddc fix(plugins): stage bundled-plugin runtime-dep install outside the plugin root
When a packaged bundled plugin's `pluginRoot` is used directly as the npm
execution cwd, `npm install <specs>` resolves the plugin's own
`package.json` as the project manifest and fails with
`EUNSUPPORTEDPROTOCOL: Unsupported URL Type "workspace:": workspace:*`
whenever that manifest declares a `workspace:` runtime dep (e.g.
`"@openclaw/plugin-sdk": "workspace:*"`). This takes out every plugin
with any runtime deps at gateway startup.

`ensureBundledPluginRuntimeDeps` already filters `workspace:` specs from
the CLI arguments, but npm's own resolver reads the cwd manifest
regardless, so the filter alone is not enough. The existing isolated
execution-root + `replaceNodeModulesDir` machinery handles this exact
problem for source-checkout + cache-hit installs. This change activates
the same staging path for the packaged case: when `installRoot ===
pluginRoot` and we are not in the source-checkout cache path, stage the
install inside `<pluginRoot>/.openclaw-install-stage` (which has a
minimal generated `package.json`) and move the produced `node_modules/`
back to the plugin root as before.

- Add regression test `stages plugin-root install when the plugin's own
  package.json declares workspace:* deps` covering the Docker scenario
  (mixed `workspace:*` + concrete runtime dep, e.g. anthropic-style
  `@openclaw/plugin-sdk` + `@anthropic-ai/sdk`).
- Update existing plugin-root-install expectations (`installs
  plugin-local runtime deps when one is missing`, `skips workspace-only
  runtime deps before npm install`, `installs deps that are only present
  in the package root`, `does not trust runtime deps that only resolve
  from the package root`, `does not treat sibling extension runtime deps
  as satisfying a plugin`) to assert the new `installExecutionRoot`.

Reported in #70844; same root cause as #70701, #70756, #70773, #70818,
#70839 which see the downstream "Cannot find package 'openclaw' from
plugin-runtime-deps" symptom because their
`resolveBundledRuntimeDependencyInstallRoot` resolves to an external
stage dir (clean manifest) so the install succeeds but the resulting
node_modules tree cannot satisfy the filtered-out workspace packages at
ESM import time.

## AI assistance

This PR was AI-assisted with Claude Code.

Testing degree: fully tested for the touched `bundled-runtime-deps`
install staging surface.

- `pnpm exec vitest run --config test/vitest/vitest.plugins.config.ts src/plugins/bundled-runtime-deps.test.ts` (31/31)
- `pnpm exec vitest run --config test/vitest/vitest.plugins.config.ts src/plugins/` (43/43 across 8 files)
- `pnpm exec tsgo --noEmit -p tsconfig.core.json`, `pnpm exec tsgo --noEmit -p tsconfig.core.test.json` (clean)
- `pnpm exec oxlint src/plugins/bundled-runtime-deps.ts src/plugins/bundled-runtime-deps.test.ts` (0 warnings, 0 errors)
- `node scripts/check-src-extension-import-boundary.mjs --json` and `node scripts/check-sdk-package-extension-import-boundary.mjs --json` (both `[]`)

I understand the code path changed here: packaged bundled plugins now
stage their runtime-dep install one directory below `pluginRoot` so npm
never reads the plugin's `workspace:*`-containing manifest during
install; after install completes, the produced `node_modules/` is moved
back to `pluginRoot` via the existing `replaceNodeModulesDir` helper.

Signed-off-by: Simone Macario <simone@sharly.ai>
2026-04-24 03:27:04 +01:00