Commit Graph

343 Commits

Author SHA1 Message Date
Peter Steinberger
115d0266eb refactor: move agent runtime state toward piless 2026-05-10 06:04:28 +01:00
Peter Steinberger
0496063264 build(deps): refresh workspace dependency pins 2026-05-10 02:14:40 +01:00
Peter Steinberger
4cd0207519 fix: stabilize Gemini default and Bedrock thinking policy 2026-05-09 23:51:55 +01:00
Shakker
a0262c33d0 test: narrow web search provider contract imports 2026-05-09 18:31:20 +01:00
Peter Steinberger
0a09a8f02f fix: propagate image generation SSRF policy (#79765) (thanks @hclsys) 2026-05-09 07:59:31 -04:00
Peter Steinberger
b8a6a9a10a fix: preserve Gemini flash image capability (#79759) (thanks @hclsys) 2026-05-09 07:47:06 -04:00
Shakker
01741f81f8 test: remove stale unused imports 2026-05-09 11:26:43 +01:00
Peter Steinberger
4883a0e6c4 chore: update workspace dependencies 2026-05-09 10:58:36 +01:00
Peter Steinberger
beaecbcad4 refactor: use PI Codex Responses transport (#79726)
Routes explicit OpenAI Codex Responses runs through PI's native WebSocket-capable transport and removes the custom OpenClaw WebSocket implementation.
2026-05-09 05:40:30 -04:00
Peter Steinberger
9385eaaf88 chore(release): prepare 2026.5.8 2026-05-09 08:05:17 +01:00
Josh Avant
3af81481b4 fix(google): retry stalled Gemini first response (#79668)
* fix(google): retry stalled gemini first response

* docs(changelog): note gemini first-response retry

* fix(google): clear gemini first-response deadline
2026-05-09 00:52:44 -05:00
Peter Steinberger
dedbd8d6fd fix(google): canonicalize gemini pro dynamic ids 2026-05-09 05:57:18 +01:00
Shakker
84c4a4fc5b test: tighten provider empty array assertions 2026-05-09 04:55:18 +01:00
Peter Steinberger
2c7f2d3ac2 test: avoid extension count filter predicates 2026-05-08 22:11:01 +01:00
Shakker
4cfe562fa4 test: tighten google oauth cache assertion 2026-05-08 17:27:37 +01:00
Peter Steinberger
450b541d77 test: clarify extension auth assertions 2026-05-08 13:02:44 +01:00
Shakker
4fd9d0e44d test: clarify google oauth fallback assertion 2026-05-08 10:28:36 +01:00
Peter Steinberger
2d1f4f909e fix: normalize retired gemini preview ids 2026-05-08 10:10:41 +01:00
Shakker
08337a1177 test: clarify staged media output assertions 2026-05-08 09:44:00 +01:00
Peter Steinberger
ab192eb3f0 test: tighten helper assertion guards 2026-05-08 06:56:38 +01:00
Peter Steinberger
d4eb40248a fix: normalize gemini 3 pro preview config 2026-05-08 06:08:58 +01:00
Peter Steinberger
9ef37d1907 test: tighten assertions and harness coverage 2026-05-08 05:28:12 +01:00
Val Alexander
4e983aa57b fix: hide retired google gemini chat models
Summary:
- Hide retired and non-public Google Gemini model IDs from Control UI/chat model catalogs.
- Route the bare gemini-3-pro alias to gemini-3.1-pro-preview.
- Keep models.list fallback rows filtered by manifest suppressions and update stale pricing-cache expectations.

Verification:
- pnpm test src/commands/models/list.list-command.forward-compat.test.ts src/commands/models/list.rows.test.ts extensions/google/manifest.test.ts extensions/google/model-id.test.ts extensions/google/provider-models.test.ts extensions/google/provider-policy-api.test.ts extensions/google/media-understanding-provider.video.test.ts src/plugin-sdk/provider-model-id-normalize.test.ts src/plugins/manifest-model-suppression.test.ts src/gateway/server-methods/models.test.ts ui/src/ui/chat-model-select-state.test.ts ui/src/ui/chat-model-ref.test.ts
- pnpm test src/gateway/model-pricing-cache.test.ts
- pnpm --silent openclaw models list --all --json --provider google / google-vertex hidden-row probe
- Testbox pnpm check:changed: https://github.com/openclaw/openclaw/actions/runs/25534551033
2026-05-07 22:20:07 -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
1ef85c7d4c test: make suites safe without isolation (#78834)
* test: make suites safe without isolation

* fix: narrow auth profile credential types

* test: inject channel module loader factory locally
2026-05-07 08:43:29 +01:00
Peter Steinberger
a428568157 fix(gemini): gate thought-signature replay trust 2026-05-07 07:08:54 +01:00
Peter Steinberger
85b914a4e1 fix(model): repair provider replay edge cases 2026-05-07 06:41:59 +01:00
Peter Steinberger
252a76d25c refactor: stage external output writes through fs-safe 2026-05-07 06:05:24 +01:00
Peter Steinberger
0b88d6286c chore: bump version to 2026.5.6 2026-05-06 09:47:34 +01:00
Peter Steinberger
7225a2678e feat: expose talk-capable realtime providers 2026-05-06 02:39:15 +01:00
Peter Steinberger
538605ff44 [codex] Extract filesystem safety primitives (#77918)
* refactor: extract filesystem safety primitives

* refactor: use fs-safe for file access helpers

* refactor: reuse fs-safe for media reads

* refactor: use fs-safe for image reads

* refactor: reuse fs-safe in qqbot media opener

* refactor: reuse fs-safe for local media checks

* refactor: consume cleaner fs-safe api

* refactor: align fs-safe json option names

* fix: preserve fs-safe migration contracts

* refactor: use fs-safe primitive subpaths

* refactor: use grouped fs-safe subpaths

* refactor: align fs-safe api usage

* refactor: adapt private state store api

* chore: refresh proof gate

* refactor: follow fs-safe json api split

* refactor: follow reduced fs-safe surface

* build: default fs-safe python helper off

* fix: preserve fs-safe plugin sdk aliases

* refactor: consolidate fs-safe usage

* refactor: unify fs-safe store usage

* refactor: trim fs-safe temp workspace usage

* refactor: hide low-level fs-safe primitives

* build: use published fs-safe package

* fix: preserve outbound recovery durability after rebase

* chore: refresh pr checks
2026-05-06 02:15:17 +01:00
scoootscooob
79dd65e208 feat(voice-call): improve realtime Meet voice agent
* feat(voice-call): inject agent context into realtime voice

* fix(voice-call): stabilize realtime meet audio

* fix(voice-call): delegate realtime consults to agent

* Improve realtime Meet voice consult routing

* Pin voice consult delivery to call session

* Move voice changelog entries to changes

* fix(voice-call): isolate final realtime transcripts

* test(voice-call): trim redundant realtime coverage
2026-05-05 12:56:31 -07:00
Peter Steinberger
a34d4ef9d9 fix: normalize video generation fallbacks 2026-05-05 06:47:07 +01:00
Vincent Koc
177167c846 fix(video): recover generation parameter fallbacks 2026-05-04 22:26:58 -07:00
Peter Steinberger
8ee08b2b77 chore: update dependencies 2026-05-04 23:07:09 +01:00
Peter Steinberger
5397667272 chore(release): prepare 2026.5.4 2026-05-04 10:09:55 +01:00
Vincent Koc
361737d1f1 fix(tts): honor telephony voice overrides 2026-05-03 22:52:18 -07:00
Peter Steinberger
a6d67ccf29 fix: log google meet realtime models 2026-05-04 06:03:53 +01:00
scoootscooob
309ff6bada perf(voice-call): trim realtime audio copies 2026-05-04 05:42:59 +01:00
scoootscooob
7fc9a82dca fix(voice-call): pace realtime Twilio audio 2026-05-04 05:42:59 +01:00
Peter Steinberger
31161abd40 chore(release): bump version to 2026.5.3 2026-05-03 03:08:47 +01:00
pashpashpash
563dca82f4 Add Codex happy path prompt snapshots (#75807)
* Add Codex prompt snapshots

* Fix prompt snapshot scenario catalogs

* Harden prompt snapshot drift check

* Fix CLI compat build export

* fix: keep codex snapshots out of core plugin surface

* fix: harden prompt snapshot ci checks

* fix: accept readonly web search onboarding scopes

* fix: repair plugin sdk package boundary types

* fix: clear prompt snapshot ci regressions

* fix: clear latest main ci checks

* fix: resolve latest main discord helper overlap

* fix: refresh codex dynamic tool snapshots

* fix: align prompt snapshot branch with latest ci

* fix: isolate plugin auto enable tests

* test: refresh prompt dynamic tool snapshots

* fix: stabilize bundled channel auto enable

* fix: clean stale prompt snapshots
2026-05-03 00:59:55 +09:00
Ayaan Zaidi
a55b2af7a5 fix: keep Gemini thinking streams active (#76080) (thanks @zhangguiping-xydt) 2026-05-02 19:26:54 +05:30
zhang-guiping
ea3416d8b5 fix(google): handle thoughtSignature-only parts to prevent Gemini stream hang
Gemini 3.1 Pro Preview may emit parts with only thoughtSignature
and no text content, causing the stream to stall. Emit a
thinking_signature event to keep the stream active, and start
a thinking block when these parts arrive before any text.

Fixes #76071
2026-05-02 19:26:54 +05:30
Peter Steinberger
80da0a0213 chore: bump version to 2026.5.2 2026-05-02 11:58:45 +01:00
Eric Huang
edca8c721a fix(google): narrow Gemini 2.5 minimal budget floor (#70629) (thanks @ericberic)
* fix: raise Gemini 2.5 minimal thinking budget from 128 to 512

Google raised the minimum thinkingBudget for Gemini 2.5 Pro and Flash
models to 512. The hardcoded minimal: 128 now causes a 400 INVALID_ARGUMENT
("The thinking budget 128 is invalid. Please choose a value between 512
and 24576.") on every heartbeat using gemini-2.5-flash-lite with minimal
thinking.

* test(google): assert thinkingBudget minimum of 512 for Gemini 2.5 models

Add parametrized tests covering minimal/low/medium budget tiers for
gemini-2.5-flash-lite, gemini-2.5-flash, and gemini-2.5-pro — ensures
the 128→512 floor change is regression-tested.

Pre-existing typecheck failure in src/agents/model-auth.ts (TS2322) is
unrelated; confirmed present on upstream main without our changes.
Tests validated: pnpm test extensions/google/transport-stream.test.ts (21 pass).

* test(google): fix it.each format string placeholder order

* fix(google): narrow Gemini 2.5 minimal budget floor to flash-lite only
2026-05-02 16:11:22 +05:30
Peter Steinberger
1143f73842 fix(web-search): honor provider abort signals 2026-05-02 05:35:58 +01:00
Peter Steinberger
dc2396ba13 refactor: trim bundled channel contract loader 2026-05-02 05:34:06 +01:00
Peter Steinberger
7729e6c104 fix: restore current main ci checks 2026-05-02 05:26:42 +01:00
Peter Steinberger
7934a2390c fix: clean up extension ci failures 2026-05-02 05:16:25 +01:00