Commit Graph

25257 Commits

Author SHA1 Message Date
Peter Steinberger
bee3a7372e fix(cli): dispose agent harnesses on exit 2026-05-08 02:58:12 +01:00
Peter Steinberger
22657861c8 fix(agents): enable codex for openai overrides 2026-05-08 02:57:55 +01:00
Peter Steinberger
f463d471d3 fix(gateway): scope explicit live model registry 2026-05-08 02:57:30 +01:00
Josh Avant
83aad863fd Clarify exec filesystem policy drift (#79153)
* docs: clarify exec filesystem policy

* fix: warn on exec filesystem policy drift

* docs: clarify exec filesystem mutation surface
2026-05-07 20:05:19 -05:00
Peter Steinberger
e0cc5c0eee fix: preserve progress draft tool titles 2026-05-08 02:03:12 +01:00
Peter Steinberger
164ecfd7c8 fix: show web search queries in progress drafts 2026-05-08 02:03:12 +01:00
Peter Steinberger
accf774591 fix: make channel progress labels rolling 2026-05-08 02:03:12 +01:00
Peter Steinberger
ef29c85a48 fix: improve Discord progress draft rendering 2026-05-08 02:03:12 +01:00
Patrick Erichsen
31a710c5a6 Fix Telegram model status Codex auth label (#79135) 2026-05-07 20:43:31 -04:00
Kevin Lin
a1ac559ed7 feat(codex): enable native plugin app support (#78733)
* feat(codex): add native plugin config schema

* feat(codex): add native plugin inventory activation

* feat(codex): configure native plugin apps for threads

* feat(codex): enforce plugin elicitation policy

* feat(codex): migrate native plugins

* docs(codex): document native plugin support

* fix(codex): harden plugin migration refresh

* fix(codex): satisfy plugin activation lint

* fix: stabilize codex plugin app config

* fix: address codex plugin review feedback

* fix: key codex plugin app cache by websocket credentials

* fix: keep codex plugin app fingerprints stable

* fix: refresh codex plugin cache test fixtures

* fix: refresh plugin app readiness after activation

* fix: support remote codex plugin activation

* fix: recover plugin app bindings after cache refresh

* fix: force codex app refresh after plugin activation

* fix: recover partial codex plugin app bindings

* fix: sync codex plugin selection config

* fix: keep codex plugin activation fail closed

* fix: align codex plugin protocol types with main

* fix: refresh partial codex plugin app bindings

* fix: key codex app cache by env api key

* fix: skip failed codex plugin migration config

* test: update codex prompt snapshots

* fix: fail closed on missing codex app inventory entries

* fix(codex): enforce native plugin policy gates

* fix(codex): normalize native plugin policy types

* fix(codex): fail closed on plugin refresh errors

* fix(codex): use native plugin destructive policy

* fix(codex): key plugin cache by api-key profiles

* fix(codex): drop unshipped plugin fingerprint compat

* fix(codex): let native app policy gate plugin tools

* fix(codex): allow open-world plugin app tools

* fix(codex): revalidate native plugin app bindings

* fix(codex): preserve plugin binding on recheck failure

* docs(codex): clarify plugin harness scope

* fix(codex): return activation report state exhaustively

* test(codex): refresh prompt snapshots after rebase

* fix(codex): match namespaced plugin ids
2026-05-07 17:20:28 -07:00
Peter Steinberger
63ec912786 fix(openai): use GA realtime bridge for gpt-realtime-2
Summary:
- switch OpenAI realtime voice default to gpt-realtime-2
- migrate backend OpenAI WebSocket bridge to the GA session shape and drop the beta header
- keep Azure deployment realtime bridges on the deployment-compatible shape
- extend live Talk smoke coverage and align npm Telegram package-runtime assertions

Verification:
- pnpm test extensions/openai/realtime-voice-provider.test.ts src/gateway/protocol/index.test.ts src/gateway/talk-handoff.test.ts extensions/google-meet/index.test.ts -- --reporter=dot
- pnpm test test/scripts/npm-telegram-live.test.ts -- --reporter=dot
- pnpm check:docs
- env OPENCLAW_TESTBOX=0 pnpm check:changed
- OPENCLAW_REALTIME_OPENAI_MODEL=gpt-realtime-2 node --import tsx scripts/dev/realtime-talk-live-smoke.ts
2026-05-08 00:47:25 +01:00
pashpashpash
3f217964d1 Defer Codex dynamic tools behind search
Defer OpenClaw Codex dynamic tools behind Codex tool_search, keep required turn-control tools direct, pin the managed Codex harness to 0.129.0-alpha.15, and document the real behavior/token impact from the live dev-agent watch.
2026-05-07 16:40:37 -07:00
Kevin Lin
e984a99c7e fix: keep gateway watch sync tracing opt-in (#79110) 2026-05-07 16:40:35 -07:00
Mert Başar
029ca8c268 feat(agents): implement state-aware failover and lane suspension
Summary:
- Persist quota-suspension state transitions and reload fresh suspension state before failover handoff injection.
- Restore suspended lanes to configured concurrency and share failover-to-suspension reason mapping across fallback and embedded runner paths.
- Export model.failover diagnostics via OTLP and cover queueing/resume behavior with regressions.

Verification:
- pnpm test src/config/sessions/store.pruning.integration.test.ts src/process/command-queue.test.ts src/agents/session-suspension.test.ts src/agents/model-fallback.test.ts extensions/diagnostics-otel/src/service.test.ts
- git diff --check
- pnpm exec oxfmt --check --threads=1 on changed TypeScript files
- GitHub checks: 92 successful, 0 pending, 0 failed on head 962146be88
- Review threads: none unresolved
2026-05-07 18:34:05 -05:00
Peter Steinberger
6a4069dead fix: share plugin runtime helpers
Consolidate shared plugin runtime MIME/schema helpers, preserve canonical runtime behavior, and guard QQBot STT fetches.
2026-05-08 00:28:43 +01:00
Peter Steinberger
f3c9203631 fix(mistral): normalize structured completion content 2026-05-08 00:21:55 +01:00
Peter Steinberger
84dd9c7395 fix(gateway): fail closed for trusted-proxy auth 2026-05-08 00:21:08 +01:00
Peter Steinberger
97d2d40fb7 fix: allow safe exec secret passEnv inheritance 2026-05-08 00:00:40 +01:00
Peter Steinberger
3adce8fac1 fix: show active model in session status 2026-05-08 00:00:40 +01:00
sallyom
244c2b5b23 fix: bound skills watcher traversal
Signed-off-by: sallyom <somalley@redhat.com>
2026-05-07 18:12:08 -04:00
Marcus Castro
5df08201ff refactor(runtime): add prepared runtime foundation (#78248)
* docs(runtime): document prepared runtime guidance

* refactor(provider-runtime): thread prepared provider handles

* refactor(runtime-plan): add prepared runtime foundation

* refactor(outbound): add prepared channel runtime facts

* refactor(models): add scoped model reference helpers

* refactor(plugin-sdk): expose prepared runtime helper surfaces
2026-05-07 18:49:42 -03:00
Shakker
70eabd3b08 fix: satisfy cron model selection checks 2026-05-07 22:47:04 +01:00
Peter Steinberger
6f4272bd04 fix(providers): preserve streaming error bodies 2026-05-07 22:36:31 +01:00
Peter Steinberger
830a72d2ee fix(chat): reset model override with default 2026-05-07 22:36:31 +01:00
Peter Steinberger
139122f655 fix(cron): show rejected model allowlist 2026-05-07 22:36:31 +01:00
Peter Steinberger
e74347bbe7 fix(agents): retry overloaded subagent announces 2026-05-07 22:36:31 +01:00
Peter Steinberger
a95d7ab1c8 fix(providers): honor cidr no_proxy entries 2026-05-07 22:36:31 +01:00
Peter Steinberger
70717c50fc fix(agents): clamp compaction reserve tokens 2026-05-07 22:05:45 +01:00
Alex Knight
6a8b4e422e Implement ACP bridge lifecycle handlers (#78880)
* Implement ACP bridge lifecycle handlers

* docs: add acp smoke evidence example

* docs: trim acp smoke example

* docs: remove acp pr plan file

* fix: tighten acp session list filters

---------

Co-authored-by: Alex Knight <15041791+amknight@users.noreply.github.com>
2026-05-08 06:26:36 +10:00
Vincent Koc
2597723dfc fix(test): align main channel assumptions 2026-05-07 13:03:49 -07:00
Vincent Koc
7f4c0b3192 chore(config): refresh bundled channel metadata 2026-05-07 12:53:02 -07:00
Vincent Koc
07bf572f35 chore(channels): delete bluebubbles plugin package 2026-05-07 12:53:00 -07:00
Vincent Koc
c97998ce21 chore(channels): remove bluebubbles bundled surface 2026-05-07 12:52:48 -07:00
Vincent Koc
f482e4d335 fix(channels): surface missing external plugin repairs
## Summary
- Add catalog-backed repair hints for official external channel plugins.
- Show configured Feishu/WhatsApp-style external channels as missing-plugin warning rows in status surfaces.
- Keep installed-but-unconfigured, disabled, allowlist-denied, and untrusted plugins on their real activation/configuration error paths.

Fixes #78702
Fixes #78593
2026-05-07 12:49:17 -07:00
Vincent Koc
8e88c7b297 test(plugins): align canvas startup metadata 2026-05-07 07:16:21 -07:00
Vincent Koc
fcb9dcc886 test(openai): align codex default auth contract 2026-05-07 07:16:20 -07:00
Vincent Koc
9b279ef173 fix(agents): reclaim reported stale session locks 2026-05-07 07:16:20 -07:00
Vincent Koc
11a038207b fix(infra): support non-durable text writes 2026-05-07 07:16:20 -07:00
Vincent Koc
3a89e20b7b fix(infra): support hardlink-safe package moves 2026-05-07 07:16:20 -07:00
Peter Steinberger
a68ad39877 ci(release): speed up beta publish path 2026-05-07 15:02:24 +01:00
Peter Steinberger
a85261932e fix(cli): fall back to sips for HEIC infer inputs 2026-05-07 14:28:27 +01:00
Peter Steinberger
6ce1c98b61 fix: normalize auth profile inline secrets 2026-05-07 13:46:46 +01:00
Peter Steinberger
347b51be4b fix: sanitize existing prompt images 2026-05-07 13:46:46 +01:00
Peter Steinberger
548b55676f fix: strip unsupported Fireworks tool schema keywords 2026-05-07 13:46:46 +01:00
Peter Steinberger
772034d741 fix: strip tools for no-tool completions models 2026-05-07 13:46:46 +01:00
Peter Steinberger
be33b68fd4 test: expand native sqlite Kysely coverage
Expand the native node:sqlite Kysely dialect tests for connection setup, insert metadata, transaction/savepoint behavior, and streaming.
2026-05-07 13:18:29 +01:00
Peter Steinberger
955b025697 feat: add native sqlite Kysely dialect
Add an owned Kysely dialect for native node:sqlite, raise the Node 22 floor to 22.16+ for StatementSync.columns(), and cover select/returning/stale insert id behavior.
2026-05-07 13:07:03 +01:00
Peter Steinberger
897bac5b8c fix(sessions): skip durable fsync for session store 2026-05-07 12:31:18 +01:00
Peter Steinberger
f2bf925a38 fix: guard sandbox move cleanup identity 2026-05-07 12:15:51 +01:00
Peter Steinberger
530e4f93de refactor: use fs-safe for staged package swaps 2026-05-07 12:15:51 +01:00