Peter Steinberger
41257a5f6f
fix(plugins): rename bundled allowlist discovery policy
2026-05-04 23:50:03 +01:00
Peter Steinberger
76e0bcd2de
test(plugins): type bundled public artifact mock
2026-05-04 23:50:03 +01:00
Peter Steinberger
3ed569ac3c
fix(plugins): respect allowlist for web provider fallback
2026-05-04 23:50:03 +01:00
dougbtv
f738663c79
fix(plugins): add bundledMode to gate runtime provider discovery by allowlist
...
When plugins.bundledMode is set to "respect-allow", runtime provider
discovery paths honor plugins.allow for bundled plugins instead of
force-loading all providers. Default "compat" preserves existing behavior.
Closes #75575
2026-05-04 23:50:03 +01:00
dougbtv
81035e651b
fix(config): register bundledMode in zod schema and help text
...
Addresses review feedback: adds bundledMode to the strict plugins zod
object so the config option passes validation, and adds schema.help
documentation for the field.
2026-05-04 23:50:03 +01:00
Vincent Koc
eef623671e
Merge branch 'main' of https://github.com/openclaw/openclaw
...
* 'main' of https://github.com/openclaw/openclaw :
test(doctor): mock bundled channel ids
fix(gateway): route watch trace spam to artifacts
2026-05-04 15:42:51 -07:00
Vincent Koc
68d4921392
test(doctor): mock bundled channel ids
2026-05-04 15:41:43 -07:00
Peter Steinberger
a167acee67
fix(gateway): route watch trace spam to artifacts
2026-05-04 23:41:14 +01:00
Vincent Koc
5658332fa7
Merge branch 'main' of https://github.com/openclaw/openclaw
...
* 'main' of https://github.com/openclaw/openclaw :
fix: repair release validation checks
2026-05-04 15:40:17 -07:00
Vincent Koc
ce8bc1a3e3
fix(lint): cover diagnostic phase events
2026-05-04 15:40:00 -07:00
Peter Steinberger
864b1be1b3
fix: repair release validation checks
2026-05-04 23:39:37 +01:00
Vincent Koc
e39d3b4223
fix(mattermost): clarify model picker runtime behavior
2026-05-04 15:38:14 -07:00
Peter Steinberger
f8e080386d
fix(gateway): quiet benchmark watch output
2026-05-04 23:36:18 +01:00
Vincent Koc
f042b53782
fix(channels): preserve channel aliases in plugin probes
...
Key package-state probes, env/config presence, and read-only command defaults by channel id instead of manifest plugin id so alias-owned channel plugins keep setup/native-command detection working.
2026-05-04 15:29:47 -07:00
Kevin Lin
592998ae0e
fix: clean up orphaned child processes ( #77481 )
...
* fix: forward launcher respawn signals
* docs: explain respawn signal exit timer
* fix: centralize launcher respawn supervision
* fix: include respawn helper in duplicate scan
* fix: keep launcher respawn bridge local
2026-05-04 15:28:49 -07:00
Peter Steinberger
9f2c8a6ab6
fix: clarify slack socket retry errors
2026-05-04 23:26:25 +01:00
Peter Steinberger
d82992f0ae
docs: add gateway diagnostics changelog
2026-05-04 23:26:25 +01:00
Peter Steinberger
d6917edc53
fix: preserve gateway watch trace overrides
2026-05-04 23:26:25 +01:00
Peter Steinberger
35e48a049b
fix: enable sync io tracing in gateway watch
2026-05-04 23:26:25 +01:00
Peter Steinberger
e84d4b27f4
feat: add gateway stall diagnostics
2026-05-04 23:26:25 +01:00
Peter Steinberger
358cd87ff3
ci(release): split release soak validation
2026-05-04 23:25:06 +01:00
Vincent Koc
ac3cd1a0ca
Harden Codex harness control surfaces ( #77459 )
...
* fix(scripts): find codex protocol source from worktrees
* fix(test): keep codex harness docker caches writable
* fix(test): relax live codex cache mount permissions
* test(codex): add live docker harness debug output
* fix(test): detect numeric ci env in codex docker harness
* fix(codex): skip duplicate agent-command telemetry
* fix(tooling): skip sparse-missing oxlint tsconfig
* fix(tooling): route changed checks through testbox
* fix(qa): keep coverage json source-clean
* fix(test): preflight codex docker auth
* fix(codex): validate bind option values
* fix(codex): parse quoted command arguments
* fix(codex): reject extra control args
* fix(codex): use content for blank bound prompts
* fix(codex): decode local image file urls
* fix(codex): treat local media urls as images
* fix(codex): keep windows media paths local
* fix(codex): reject malformed diagnostics confirmations
* fix(codex): reject malformed resume commands
* fix(codex): reject malformed thread actions
* fix(codex): reject malformed turn controls
* fix(codex): reject malformed model controls
* fix(codex): resolve empty user input prompts
* fix(codex): enforce user input options
* fix(codex): reject ambiguous computer-use actions
* fix(codex): ignore stale bound turn notifications
* test(gateway): close task registries in gateway harness
* test(gateway): route cleanup through task seams
* fix(codex): describe current permission approvals
* fix(codex): disclose command approval amendments
* fix(codex): preserve approval detail under truncation
* fix(codex): propagate dynamic tool failures
* test(codex): align dynamic tool block contract
* fix(codex): reject extra read-only command operands
* fix(codex): escape command readout fields
* fix(codex): escape status probe errors
* fix(codex): narrow formatted thread details
* fix(codex): escape successful status summaries
* fix(codex): escape bound control replies
* fix(codex): escape user input prompts
* fix(codex): escape control failure replies
* fix(codex): escape approval prompt text
* test(codex): narrow escaped reply assertions
* test(codex): complete strict reply fixtures
* test(codex): preserve account fixture literals
* test(codex): align status probe fixtures
* fix(codex): satisfy sanitizer regex lint
* fix(codex): harden command readouts
* fix(codex): harden bound image inputs
* fix(codex): sanitize command failure replies
* test(codex): complete rate limit fixture
* test(tooling): isolate postinstall compile cache fixture
* fix(codex): keep app-server event ownership explicit
---------
Co-authored-by: pashpashpash <nik@vault77.ai >
2026-05-05 07:23:41 +09:00
hcl
b3e42bf327
fix(plugins): emit actionable install hint for externalized channel plugins ( #77502 )
...
Fixes #77483.\n\n- Suggest catalog-backed install commands for missing official external plugins in config validation.\n- Preserve stale/remove wording for non-catalog missing plugins.\n- Add regression coverage for plugins.entries and plugins.allow warnings.\n\nVerification:\n- pnpm exec oxfmt --check --threads=1 CHANGELOG.md src/config/validation.ts src/config/config.plugin-validation.test.ts\n- pnpm test src/config/config.plugin-validation.test.ts src/commands/doctor/shared/missing-configured-plugin-install.test.ts\n- pnpm crabbox:run -- --provider blacksmith-testbox ... pnpm check:changed\n- GitHub CI green on d1b1b10444
2026-05-04 15:22:15 -07:00
Chunyue Wang
14aa98827a
fix(codex/app-server): stable mirror idempotency to prevent transcript loss ( #77046 )
...
* fix(codex/app-server): stable mirror idempotency to prevent transcript loss
* Changelog: note codex/app-server transcript mirror dedupe stabilization (#77046 )
2026-05-04 23:17:00 +01:00
Peter Steinberger
be6543caf8
fix(doctor): preserve active auth profile metadata
2026-05-04 23:16:43 +01:00
Vincent Koc
a07d8cbf8a
fix(docker): normalize plugin build args
2026-05-04 15:16:22 -07:00
Vincent Koc
0908f3d538
docs(changelog): note model runtime switch repair UX
2026-05-04 15:15:32 -07:00
Vincent Koc
57ca91ff38
fix(telegram): clarify model picker runtime scope
2026-05-04 15:15:32 -07:00
Vincent Koc
e091d912ce
fix(model): guide runtime allowlist repairs
2026-05-04 15:15:32 -07:00
Brandon
70b1c17ae0
fix(config): prefer plugin ids for built-in channel claims
...
Prefer the manifest plugin id when auto-allowlisting configured built-in channel aliases, with regression coverage for alias/id split plugins and same-name official channel plugins.
2026-05-04 15:15:18 -07:00
Peter Steinberger
683d892eed
test: make global install shell test portable
2026-05-04 23:13:58 +01:00
Peter Steinberger
a7263de258
fix(agents): preserve workspace metadata reuse
...
Pass the resolved agent workspace through hot model refresh paths so workspace-scoped plugin metadata snapshots can be reused.
Refs #77519 .
Refs #77532 .
2026-05-04 23:13:32 +01:00
Peter Steinberger
343f859b90
fix: preserve visible Discord labeled replies
2026-05-04 23:13:18 +01:00
Peter Steinberger
31edc4ee1a
fix: clean up startup readiness PR docs
2026-05-04 23:13:18 +01:00
Satoshi
5572c8137c
fix(discord): preserve non-text payloads in reply scrub
2026-05-04 23:13:18 +01:00
Satoshi
e259938e96
fix: harden startup readiness and discord replies
...
(cherry picked from commit 3956672106b3387d42427a485a9ca01e77f3b78f)
2026-05-04 23:13:18 +01:00
Vincent Koc
7e229f0d3d
fix(docker): prune external plugin dist ( #77547 )
2026-05-04 15:11:14 -07:00
Peter Steinberger
8ee08b2b77
chore: update dependencies
2026-05-04 23:07:09 +01:00
Mogglemoss
43b5df7295
fix(secretrefs): resolve external channel contracts in dist/ sidecars ( #77421 )
...
* fix(secretrefs): resolve external channel contracts in dist/ sidecars
Externalized channel plugins published to npm (e.g. @openclaw/discord
since 2026.5.2) keep their compiled secret-contract-api artifact under
<rootDir>/dist/, per the package.json `openclaw.runtimeExtensions`
convention. The runtime contract loader added in #76449 only searched
the rootDir, so npm-installed plugins silently dropped their channel
SecretRef contracts: the runtime snapshot left `channels.<id>.token`
as an unresolved SecretRef, the plugin's `isConfigured` check then
returned false, and the gateway recorded `error: not configured`
without firing the usual channel startup logs.
Look in `<rootDir>/dist/` as well as `<rootDir>/`, preferring dist
when running from a built openclaw artifact and rootDir when running
from source. The new `loads dist/ secret-contract-api sidecars …`
test in channel-contract-api.external.test.ts mirrors the real
npm-package layout and fails without this change.
Refs #76371 . Fixes #77416 .
* docs: credit changelog contributor
---------
Co-authored-by: Magpie <magpie@local>
Co-authored-by: joshavant <830519+joshavant@users.noreply.github.com >
2026-05-04 16:57:28 -05:00
Pnant
a7b665cfed
fix(telegram): honor topic requireMention precedence
...
Telegram forum-topic requireMention config now takes precedence over persisted activation state, with focused regression coverage.\n\nFixes #49864.\nThanks @Panniantong.
2026-05-04 22:53:06 +01:00
hcl
d0cae0d950
fix(active-memory): skip sub-agent gracefully when no memory tools registered ( #77506 ) ( #77515 )
...
* fix(active-memory): skip sub-agent gracefully when no memory tools registered (#77506 )
When memory-core and memory-lancedb are both absent, the embedded
memory sub-agent would throw 'No callable tools remain after resolving
explicit tool allowlist', which propagated as a noisy warning through
the before_prompt_build hook. Catch this specific error in
runActiveMemorySubAgent and return an empty NONE result so the
gateway log stays clean and the sub-agent run is skipped without
disrupting the parent session.
* fix(active-memory): skip missing memory-tool subagent runs
* fix(active-memory): match inherited missing memory tool errors
* fix(active-memory): preserve policy-filtered memory errors
---------
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-05-04 16:47:38 -05:00
Penchan
1c52447f0b
fix(plugins): treat CalVer correction versions as compatible with plugin API ranges ( #77450 )
...
* fix(plugins): accept CalVer correction plugin API hosts
Fixes #77293
* docs(changelog): credit plugin api calver fix pr
---------
Co-authored-by: pingu <pingu@penchan.co >
2026-05-04 14:46:29 -07:00
Vincent Koc
a4f2bf273a
fix(openai): default direct responses to sse
2026-05-04 14:37:07 -07:00
Peter Steinberger
5005f5b22e
docs(changelog): note npm script shell update fix
2026-05-04 22:34:30 +01:00
Peter Steinberger
4556707cb7
test(browser): mirror route URL guard in existing-session helper
2026-05-04 22:29:13 +01:00
Peter Steinberger
0909df1a4f
refactor: centralize reply followup drain lifecycle
2026-05-04 22:25:16 +01:00
Peter Steinberger
86385f72e9
fix(update): use absolute npm script shell
2026-05-04 22:24:34 +01:00
Peter Steinberger
828b6be39d
fix(cli): bound sessions list output
2026-05-04 22:18:25 +01:00
Peter Steinberger
14b5f73e2a
fix(agents): avoid duplicate generated media attachments
2026-05-04 22:14:43 +01:00
Vincent Koc
29a3e71106
Merge branch 'main' of https://github.com/openclaw/openclaw
...
* 'main' of https://github.com/openclaw/openclaw :
fix(update): isolate plugin sync failures
2026-05-04 14:07:57 -07:00