wanyongstar
8f59226bc9
fix(xai): report lazy voice bridge connect failure as a terminal error ( #123064 )
...
* fix(xai): report lazy voice bridge connect failure as terminal error
When the loaded realtime voice bridge's connect() rejected, the lazy
wrapper marked the generation terminal internally but never called
req.onClose and never closed the loaded bridge, leaking it and leaving
callers without a terminal outcome. Mirror the queued-flush failure
path: emit a terminal "error" and close the loaded bridge before
propagating the rejection.
* fix: harden realtime voice connection lifecycle
---------
Co-authored-by: Altay <altay@hey.com >
2026-08-15 20:56:11 +03:00
Peter Steinberger
8616c0c374
refactor: finish shared test helper migrations ( #120996 )
...
* test: finish shared helper migrations
* test: fix helper migration CI
* style: fix test import ordering
* test(acpx): restore deferred void types
* test: fix helper migrations after rebase
2026-08-09 06:00:06 -07:00
Peter Steinberger
8eaf917efb
fix(google): honor Cloud SDK credential location and Vertex billing project ( #118745 )
2026-08-03 10:47:13 -07:00
Vincent Koc
24e6354ec2
fix(google): preserve realtime startup audio order
2026-08-02 05:27:36 +08:00
Vincent Koc
aab146eeec
fix(google): bound lazy realtime audio queue
2026-08-02 05:27:36 +08:00
Vincent Koc
d60584ee2d
test(google): cover ready callback close precedence
2026-08-02 01:25:41 +08:00
Vincent Koc
814a2ebb61
fix(google): flush lazy prompts on provider readiness
2026-08-02 01:22:33 +08:00
Vincent Koc
b2320c84ee
fix(google): bound lazy realtime user messages
2026-08-01 22:47:12 +08:00
Vincent Koc
fcc20d14a3
fix(google): stop scraping Gemini CLI OAuth credentials ( #117167 )
...
* fix(google): delegate Gemini OAuth refresh to the CLI
* refactor(google): remove retired Gemini OAuth stack
* chore(ci): prune retired Google OAuth baseline
* fix(google): retire Gemini CLI usage telemetry
* fix(google): remove retired usage token parser
2026-08-01 11:36:24 +08:00
Vincent Koc
c568f93b03
fix(google): retire Gemini CLI OAuth setup
2026-07-30 16:33:33 +08:00
Peter Steinberger
e8fcc93cd3
fix(talk): await realtime tool result delivery ( #103268 )
...
* fix(talk): await realtime tool result delivery
* fix(talk): terminally cancel queued results
* chore: keep release changelog out of PR
---------
Co-authored-by: Peter Steinberger <peter@steipete.me >
2026-07-09 20:11:20 -07:00
Peter Steinberger
07a7d596ff
feat(providers): add Qwen 3.6 Flash and Gemini 3.1 Live ( #102791 )
...
* feat(providers): add current Qwen and Gemini Live models
* fix(google): align live thinking enum type
* fix(google): align live thinking enum type
2026-07-09 13:37:16 +01:00
Shakker
32d0b9c872
fix: keep Gemini CLI auth out of warmup
2026-06-17 03:31:14 +01:00
Shakker
9824061241
fix: align Gemini CLI home path
2026-06-17 03:31:14 +01:00
Shakker
17ba3bc65d
fix: load staged Gemini CLI auth profiles
2026-06-17 03:31:14 +01:00
Yzx
a4f7e4cbb9
fix(google): preserve Vertex ADC catalog auth ( #90609 )
...
* fix: preserve Google Vertex ADC catalog auth
* fix: register Google Vertex ADC config marker
* fix: fill Vertex ADC static catalog auth
2026-06-05 18:16:34 -04:00
Peter Steinberger
96e5812426
docs: document medium extension sources
2026-06-04 21:33:54 -04:00
Yzx
b1bdc29d33
fix(providers): use native reasoning mode for Gemini instead of tagged ( #89379 )
...
* fix(providers): use native reasoning mode for direct Gemini API, keep CLI tagged
Gemini 2.5+ delivers reasoning via native thinkingParts (thinkingConfig.
includeThoughts). Having tagged mode active at the same time injects a
<think>…</think>/<final>…</final> directive into the system prompt; the
model opens a <think> block before a tool call, never closes it, and
returns an empty post-tool turn (content:[], payloads=0 error, #69220 ).
Fix: override resolveReasoningOutputMode in buildGoogleProvider() only —
not in the shared GOOGLE_GEMINI_PROVIDER_HOOKS. The Gemini CLI backend
(google-gemini-cli) runs gemini --output-format json and parses a text
response field, not native thought parts; it must stay on tagged mode.
A regression test confirms google-gemini-cli remains "tagged".
Also remove the dead BUILTIN_REASONING_OUTPUT_MODES entry keyed on
"google-generative-ai" from provider-utils.ts — that string is only
ever the transport model.api value, never the provider id passed to
resolveReasoningOutputMode, so the map was unreachable.
Fixes #69220
* docs: clarify Gemini reasoning output modes
* fix(google): keep Antigravity reasoning tagged
* fix(google): default direct reasoning checks to native
* fix(google): import reasoning context from plugin entry
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-06-02 07:46:08 -04:00
Peter Steinberger
bb46b79d3c
refactor: internalize OpenClaw agent runtime ( #85341 )
...
* refactor: extract agent core package
Introduce packages/agent-core as the OpenClaw-owned home for reusable agent loop, harness, session, prompt, and runtime dependency contracts.
* refactor: extract shared llm runtime
Move provider model registries, stream wrappers, OAuth helpers, and LLM utilities into src/llm with plugin-sdk barrels instead of depending on the old embedded runtime layout.
* refactor: remove pi runtime internals
Rename remaining Pi-shaped agent surfaces to OpenClaw agent runtime names, delete obsolete Pi docs and package graph checks, and add the third-party notice for incorporated code.
* refactor: tighten agent session runtime
Make agent-core/runtime dependencies explicit, consolidate compaction and session transcript helpers, and move model/session helpers behind OpenClaw-owned contracts.
* refactor: remove static model and pi auth paths
Drop static model catalogs and Pi auth bridges, move model/provider facts to manifest-owned runtime contracts, and harden internal embedded-agent utilities.
* refactor: remove legacy provider compat paths
* docs: remove agent parity notes
* fix: skip provider wildcard metadata parsing
* refactor: share session extension sdk loading
* refactor: inline acpx proxy error formatter
* refactor: fold edit recovery into edit tool
* fix: accept extension batch separator
* test: align startup provider plugin expectations
* fix: restore provider-scoped release discovery
* test: align static asset packaging expectations
* fix: run static provider catalogs during scoped discovery
* fix: add provider entry catalogs for scoped live discovery
* fix: load lightweight provider catalog entries
* fix: refresh provider-scoped plugin metadata
* fix: keep provider catalog entries on release live path
* fix: keep static manifest models in release live checks
* fix: harden release model discovery
* fix: reduce OpenAI live cache probe reasoning
* fix: disable OpenAI cache probe reasoning
* ci: extend OpenAI gateway live timeout
* fix: extend live gateway model budget
* fix: stabilize release validation regressions
* fix: honor provider aliases in model rows
* fix: stabilize release validation lanes
* fix: stabilize release memory qa
* ci: stabilize release validation lanes
* ci: prefer ipv4 for live docker node calls
* fix: restore shared tool-call stream wrapper
* ci: remove legacy pi test shard alias
* fix: clean up embedded agent test drift
* fix: stabilize runtime alias status
* fix: clean up embedded agent ci drift
* fix: restore release ci invariants
* fix: clean up post-rebase runtime drift
* fix: restore release ci checks
* fix: restore release ci after rebase
* fix: remove stale pi runtime path
* test: align compaction runtime expectations
* test: update plugin prerelease expectations
* fix: handle claude live tool approvals
* fix: stabilize release validation gates
* fix: finish agent runtime import
* test: finish post-rebase agent runtime mocks
* fix: keep codex compaction native
* fix: stabilize codex app-server hook tests
* test: isolate codex diagnostic active run
* test: remove codex diagnostic completion race
# Conflicts:
# extensions/codex/src/app-server/run-attempt.test.ts
* ci: fix full release manifest performance run id
* refactor: narrow llm plugin sdk boundary
* chore: drop generated google boundary stamps
* fix: repair rebase fallout
* fix: clean up rebased runtime references
* fix: decode codex jwt payloads as base64url
* fix: preserve shipped pi runtime alias
* fix: add scoped sdk virtual modules
* fix: decode llm codex oauth jwt as base64url
* fix: avoid stale vertex adc negative cache
* fix: harden tool arg decoding and codeql path
* fix: keep vertex adc negative checks live
* refactor: consolidate codex jwt and edit helpers
* fix: await codex oauth node runtime imports
* fix: preserve sdk tool and notice contracts
* fix: preserve shipped compat config boundaries
* fix: align codex oauth callback host
* fix: terminate agent-core loop streams on failure
* fix: keep codex oauth callback alive during fallback
* ci: include session tools in critical codeql scans
* fix: keep Cloudflare Anthropic provider auth header
* docs: redirect legacy pi runtime pages
* fix: honor bundled web provider compat discovery
* fix: protect session output spill files
* fix: keep legacy agent dir env blocked
* fix: contain auto-discovered skill symlinks
* fix: harden agent core sdk proxy surfaces
* fix: restore approval reaction sdk compat
* fix: keep live docker runs bounded
* fix: keep codex oauth redirect host aligned
* fix: resolve post-rebase agent runtime drift
* fix: redact anthropic oauth parse failures
* fix: preserve responses strict tool shaping
* fix: repair agent runtime rebase cleanup
* docs: redirect retired parity pages
* fix: bound auto-discovered resources to roots
* fix: repair post-rebase agent test drift
* fix: preserve bundled provider allowlist migration
* fix: preserve manifest-owned provider aliases
* fix: declare photon image dependency
* fix: keep provider headers out of proxy body
* fix: preserve shipped env aliases
* fix: refresh control ui i18n generated state
* fix: quote read fallback paths
* fix: preview edits through configured backend
* test: satisfy core test typecheck
* fix: preserve ZAI usage auth fallback
* test: repair codex diagnostic test
* fix: repair agent runtime rebase drift
* test: finish embedded runner import rename
* fix: repair agent runtime rebase integrations
* test: align compaction oauth fallback expectations
* fix: allow sdk-auth session models
* fix: update doctor tool schema import
* fix: preserve bedrock plugin region
* fix: stream harmony-like prose immediately
* ci: include session runtime in codeql shards
* fix: repair latest rebase integrations
* fix: honor explicit codex websocket transport
* fix: keep openai-compatible credentials provider-scoped
* fix: refresh sdk api baseline after rebase
* fix: route cli runtime aliases through openclaw harness
* test: rename stale harness mock expectation
* test: rename embedded agent overflow calls
* test: clean embedded auth test wording
* test: use openclaw stream types in deepinfra cache test
* fix: refresh sdk api baseline on latest main
* fix: honor bundled discovery compat allowlists
* fix: refresh sdk api baseline after latest rebase
* fix: remove stale rebase imports
* test: rename stale model catalog mock
* test: mock renamed doctor runtime modules
* fix: map canonical kimi env auth
* fix: use internal model registry in bench script
* fix: migrate deepinfra provider catalog entry
* fix: enforce builtin tool suppression
* fix: route compaction auth and proxy payloads safely
* refactor: prune unused llm registry leftovers
* test: update codex hooks session import
* test: fix model picker ci coverage
* test: align model picker auth mock types
2026-05-27 19:24:04 +01:00
Damian Finol
f09b4ebe31
fix(google-vertex): support production ADC modes ( #83971 )
...
Fix Google Vertex production ADC mode support by routing explicit google-vertex models to the Vertex transport and relying on google-auth-library for request-time ADC resolution.
Verification:
- pnpm install --frozen-lockfile
- pnpm test extensions/google/transport-stream.test.ts extensions/google/index.test.ts src/config/zod-schema.models.test.ts src/agents/pi-embedded-runner/model.inline-provider.test.ts -- --reporter=verbose
- pnpm check:changed
- GitHub PR checks green on c4b7cad4df
- Live ADC smoke reached Google Vertex auth/transport and failed only because the configured redacted project has the Vertex AI API disabled
Co-authored-by: Damian Finol <damian@felixpago.com >
2026-05-25 01:37:52 +01:00
Jason O'Neal
b34454f5b3
fix(google): refresh Gemini CLI OAuth tokens
2026-05-17 02:10:11 +08:00
Kaspre
e30e4d1cfa
test(extensions): narrow post-rebase type assertions
2026-05-12 07:08:38 +01:00
Peter Steinberger
02f3b531a6
test: tighten channel catalog assertions
2026-05-11 10:31:14 +01:00
Shakker
79da106d25
test: tighten google provider hook assertions
2026-05-11 10:23:05 +01:00
Peter Steinberger
15cf49222f
build: refresh deps and route testbox through crabbox
2026-05-11 03:41:00 +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
Shakker
84c4a4fc5b
test: tighten provider empty array assertions
2026-05-09 04:55:18 +01:00
Peter Steinberger
450b541d77
test: clarify extension auth assertions
2026-05-08 13:02:44 +01:00
Peter Steinberger
9ef37d1907
test: tighten assertions and harness coverage
2026-05-08 05:28:12 +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
f34b41f198
refactor: split plugin sdk test helpers
2026-04-28 01:14:19 +01:00
Peter Steinberger
8057561cee
refactor: promote plugin test helpers to sdk
2026-04-28 00:55:11 +01:00
Peter Steinberger
0df6e5a473
refactor: expose plugin test helpers via sdk
2026-04-27 23:45:26 +01:00
Peter Steinberger
cc0f3067a0
fix: map google adaptive thinking dynamically
2026-04-25 02:04:40 +01:00
Peter Steinberger
eb94d3af94
test: share provider stream capture helper
2026-04-20 23:04:10 +01:00
Vincent Koc
356110c52f
fix(google): share gemini provider hook bundle
2026-04-14 16:30:32 +01:00
Peter Steinberger
0828db93e9
test: speed up provider entry tests
2026-04-07 17:36:41 +01:00
Peter Steinberger
bff55b55cb
style: normalize import ordering and wrapping
2026-04-05 09:26:39 +01:00
Vincent Koc
a2e0a094c1
test(providers): cover stream family plugin hooks
2026-04-04 23:20:28 +09:00
Peter Steinberger
f4855baf35
fix(ci): await async provider test registration
2026-04-04 09:28:43 +01:00
Josh Lehman
799c6f40aa
refactor: move provider replay runtime ownership into plugins ( #60126 )
...
* refactor: move provider replay runtime ownership into plugins
* fix(provider-runtime): address review followups
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-04-03 23:14:37 +09:00