Vincent Koc
936c9c7e2d
fix(openai): copy queued realtime audio buffers ( #117028 )
...
* commit '7facf157e67d7902dd645f33026a253e006ed0e0':
test(openai): parse realtime websocket frames safely
fix(openai): own queued realtime audio buffer snapshots
2026-08-02 03:29:43 +08:00
Vincent Koc
7facf157e6
test(openai): parse realtime websocket frames safely
2026-08-02 02:59:32 +08:00
Peter Steinberger
71b35c3e1d
fix(openai): keep embedding identity stable across upgrades ( #117557 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-08-01 11:59:31 -07:00
Vincent Koc
3aa43c7fba
chore: merge main into realtime audio ownership fix
...
* origin/main: (491 commits)
feat(gateway): advertise chat attachment limits on hello-ok (#116188 )
fix(ui): preserve full graphemes in session owner initials (#117350 )
refactor(tui): consolidate runtime ownership (#117368 )
fix(update): return failure when dirty checkout blocks update (#117452 )
fix(auto-reply): apply mixed chat directives in one session transaction (#117542 )
refactor(ui): unify channel status and setup controls (#117499 )
fix(doctor): preserve surviving lint selections (#117543 )
fix(media): keep an unquoted MEDIA path with spaces as one media item (#112464 )
refactor(channels): consolidate lightweight plugin discovery (#117541 )
fix(imessage): prevent duplicate messages after delayed sends (#110853 )
refactor(memory): unify authoritative dreaming state and presentation (#117538 )
refactor(agents): consolidate main-session recovery ownership (#117383 )
fix(proxy-capture): make path-based session cleanup atomic (#98852 )
refactor(agents): consolidate compaction and context-engine ownership (#117482 )
fix(gateway): preserve Responses usage details (#117533 )
perf(gateway): skip empty session recovery stores (#117498 )
fix(ci): update canonical Kova performance pin (#117508 )
fix(system-agent): emit the wizard cancel hint once per message (#113731 )
refactor: dedupe secrets runtime snapshot fixtures (#117502 )
test(google): cover ready callback close precedence
...
2026-08-02 02:41:51 +08:00
Peter Steinberger
b9bf34a3cd
test(openai): dedupe realtime voice fixtures ( #117503 )
2026-08-01 10:22:51 -07:00
Peter Steinberger
568ea29d2e
refactor(plugins): inherit shared package boundary settings ( #117474 )
2026-08-01 09:11:09 -07:00
Vincent Koc
5ae401d908
fix(models): reduce default model-list memory use ( #117323 )
...
* fix(models): scope default catalog discovery
* fix(models): split scoped catalog preparation
* perf(models): narrow model-list imports
* perf(auth): narrow provider id imports
* perf(plugins): narrow provider discovery imports
* perf(models): bypass runtime catalog facade for scoped lists
* perf(models): avoid runtime imports in default list
* fix(models): preserve scoped catalog coverage
* chore(models): remove obsolete auth exports
* perf(models): skip redundant configured-provider discovery
* perf(models): skip canonical row runtime loading
* fix(models): normalize configured fallback rows
* test(models): update registry list fixtures
* fix(models): separate catalog and runtime discovery scopes
* fix(models): break row projection import cycle
* fix(models): satisfy type and export checks
* fix(models): keep row projection bundled-only
* fix(models): preserve partial catalog visibility
* fix(models): avoid live discovery in default lists
* test(models): isolate auth-backed catalog coverage
* fix(models): retain OpenAI runtime normalization
* fix(models): skip canonical OpenAI row runtime loading
* test(models): keep provider policy fixtures typed
* fix(models): preserve configured OpenAI routes
2026-08-02 00:01:37 +08:00
Peter Steinberger
daee265f32
fix(openai): own queued realtime audio buffer snapshots
2026-07-31 12:40:22 -07:00
Peter Steinberger
ae4f1bbf26
fix(openai): enforce canonical image stream framing and terminal ownership ( #116999 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-07-31 12:35:23 -07:00
Peter Steinberger
652a47e644
fix(openai): use canonical multipart video submissions ( #116995 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-07-31 12:08:12 -07:00
Peter Steinberger
51a78a4411
fix(openai): honor video submission and edit contracts ( #116917 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-07-31 09:08:53 -07:00
Peter Steinberger
0d209991b6
fix: preserve realtime provider event ownership ( #116891 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-07-31 08:33:06 -07:00
Vincent Koc
d8f229f2e6
Merge pull request #116735 from vincentkoc/fix/openai-preconnect-lifecycle
...
* commit 'b218adb7a7d931927aa7fd577f40b31ecc113c3b':
chore(openai): drop release-owned changelog entry
fix(openai): narrow idle lifecycle cancellation
fix(openai): discard preconnect audio on close
fix(openai): terminalize preconnect lifecycle
2026-07-31 20:18:48 +08:00
BSG2000
80a12e30c1
fix(openai): bound realtime websocket auth errors
2026-07-31 18:45:12 +08:00
Vincent Koc
bfbba677e4
chore(openai): merge current main into lifecycle fix
...
* origin/main: (38 commits)
fix(agents): compact session status change text (#116742 )
fix(llama-cpp): recover plaintext tool calls (#116736 )
fix(telegram): validate native queue arguments before fallback (#116726 )
chore(skills): add autonomous issue sweep workflow
docs(auto-qa): require clean root-cause refactors
fix(ollama): models advertise tools when /api/show fails (#109971 )
fix(ollama): use CJK-aware char estimate for usage fallback (#110073 )
fix(ollama): release failed setup response bodies before returning (#111802 )
feat(plugins): externalize Synthetic provider (#116720 )
fix(agents): unblock channel turns after restart recovery (#116728 )
fix(telegram): keep typing alive during active steered tasks (#116721 )
fix(gateway): admit standalone MCP app work (#116727 )
fix(googlechat): record canonical receipt thread (#116717 )
test(ui): cover the Talk relay start-stop race
fix(ui): close superseded Talk allocations
fix(agents): resume interrupted turns past progress commentary (#116725 )
fix(gateway): sign device proofs with challenge time (#116679 )
test(google): cover expired CLI OAuth compatibility
fix(testing): load relay smoke through UI Vite config
test(testing): guard realtime relay smoke module path
...
2026-07-31 17:50:34 +08:00
Vincent Koc
07a352ac95
fix(openai): narrow idle lifecycle cancellation
2026-07-31 17:10:40 +08:00
Vincent Koc
255bb69a0e
Merge pull request #116603 from synthalorian/fix/issue-116525
...
fix(openai): restrict GPT-Live broker cleanup to plugin disable only
* refs/remotes/origin/pr/116603:
fix(edit): restore UTF-16 difference offsets
fix(openai): share GPT-Live browser broker ownership
fix(edit): prefer-for-of loop in firstDifferenceIndex
fix(openai): return undefined from cleanup on non-disable reasons
fix(openai): restrict GPT-Live broker cleanup to plugin disable only
2026-07-31 16:55:13 +08:00
Vincent Koc
337a2b3fc7
fix(openai): discard preconnect audio on close
2026-07-31 16:42:54 +08:00
Vincent Koc
42f1e8dd41
fix(openai): terminalize preconnect lifecycle
2026-07-31 16:42:25 +08:00
Vincent Koc
c30322418e
fix(openai): share GPT-Live browser broker ownership
2026-07-31 16:00:31 +08:00
Josh Lehman
2bc694614f
fix(telegram): make Codex login codes copyable ( #116608 )
2026-07-30 22:51:00 -07:00
synthclaw
2f93db39eb
fix(openai): return undefined from cleanup on non-disable reasons
...
Fixes TS7030: Not all code paths return a value.
2026-07-31 00:31:30 -04:00
synthclaw
b9e2d9e81b
fix(openai): restrict GPT-Live broker cleanup to plugin disable only
...
Root cause: the OpenAI plugin registered the process-wide Quicksilver
browser session broker cleanup as an unconditional runtime lifecycle
callback. Session reset/delete/restart cleanup would permanently stop
the shared broker, while talk.catalog continued to report the provider
as ready. All later GPT-Live browser session reservations failed until
process restart.
Fix: the cleanup callback now checks ctx.reason and only tears down
the broker when reason === "disable". Session reset/delete/restart
cleanup leaves the broker running.
Regression test: verifies cleanup is a no-op for reset/delete/restart
and returns a promise for disable.
Fixes openclaw/openclaw#116525
2026-07-31 00:04:45 -04:00
Vincent Koc
7b581eccc1
test(openai): cover GPT-Live delegation output bounds
2026-07-31 01:30:23 +08:00
Vincent Koc
ef4cebb263
fix(openai): bound GPT-Live delegation output
2026-07-31 01:30:23 +08:00
Vincent Koc
835dafb5a8
test(openai): cover out-of-order named mark acks
2026-07-30 16:29:29 +08:00
Vincent Koc
c240b2714d
docs(openai): clarify cumulative playback marks
2026-07-30 16:29:29 +08:00
Vincent Koc
ba9e352e95
test(openai): cover sustained unnamed mark acknowledgements
2026-07-30 16:29:29 +08:00
Vincent Koc
750dc99903
fix(openai): preserve playback acknowledgement order
2026-07-30 16:29:29 +08:00
Vincent Koc
0ae46459d8
test(openai): verify bounded playback acknowledgements
2026-07-30 16:29:29 +08:00
Vincent Koc
567d04076a
fix(openai): bound realtime playback marks
2026-07-30 16:29:29 +08:00
Vincent Koc
ad1dc60259
fix(openai): scope realtime readiness state
2026-07-30 15:22:02 +08:00
Vincent Koc
21463e6e19
test(openai): verify terminal audio cleanup
2026-07-30 15:22:02 +08:00
Vincent Koc
3133abed32
fix(openai): bound pre-ready realtime audio
2026-07-30 15:22:02 +08:00
Vincent Koc
039efadf59
fix(openai): bound realtime SDP answer reads
2026-07-30 12:31:02 +08:00
Vincent Koc
280c162753
fix(openai): bound GPT-Live sideband startup frames
2026-07-30 12:31:02 +08:00
Vincent Koc
58b4b94304
test(openai): verify superseded consult handoff
2026-07-30 12:11:06 +08:00
Vincent Koc
6b37d46b17
fix(openai): bound GPT-Live delegation work
2026-07-30 12:11:06 +08:00
Vincent Koc
18e107f494
fix(plugins): report request timeouts for stalled response bodies ( #116166 )
...
* fix(openai): preserve device-code request timeouts
* fix(msteams): preserve SharePoint upload timeouts
* fix(qqbot): preserve channel API request timeouts
2026-07-30 10:03:39 +08:00
Peter Steinberger
11de91ad03
fix(qa): forward-port beta 6 validation fixes ( #116065 )
...
* test(macos): avoid busy-spin timeout fixtures
* fix(qa): forward-port beta 6 validation fixes
* test(qa): complete Telegram run options fixture
2026-07-29 16:21:04 -04:00
Wynne668
aef33cfef7
fix(openai): prevent GPT-Live errors from stalling ( #115582 )
...
* fix(openai): bound GPT-Live error responses
* fix(openai): bound realtime error responses
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-30 01:50:12 +08:00
Peter Steinberger
dc60a9442d
feat(talk): support GPT-Live over gateway relay ( #115831 )
...
* feat(talk): add GPT-Live gateway relay peer
* fix(talk): ignore duplicate GPT-Live sideband audio
* fix(openai): harden GPT-Live relay startup
* fix(deps): replace vulnerable werift ip helper
* fix(deps): scope werift ip override version
* fix(openai): normalize relay startup errors
* test(ci): register GPT-Live gateway live shard
* fix(talk): tighten GPT-Live relay readiness
* fix(talk): keep relay override helper private
* fix(talk): resolve relay readiness with launch model
* fix(openai): preserve GPT-Live media clock
* fix(talk): align GPT-Live relay readiness and framing
* fix(openai): expire pending GPT-Live reservations
* fix(openai): harden GPT-Live delegation audio
* style(openai): satisfy RTP reorder lint
2026-07-29 12:54:23 -04:00
Peter Steinberger
d16e33e08e
fix: restore trustworthy end-to-end QA and cross-channel delivery ( #115404 )
...
* fix(qa): repair verified end-to-end and channel regressions
* fix(gateway): make interrupted restart recovery lifecycle-safe
* test(heartbeat): target the canonical recovery session store
* fix(gateway): prioritize durable restart recovery before heartbeat
* fix(qa): preserve safe restart recovery and channel expiry
* fix(qa): fail closed and fence restart recovery
* test(agents): isolate restart recovery timing
* test(agents): prove actual restart retry timing
* fix(qa): report incompatible profile scenarios
* fix(scripts): resolve symlinked docker scheduler entrypoints
* fix(qa): require fresh native test evidence
* fix(heartbeat): fence active restart recovery delivery
* fix(gateway): consume untargeted restart acknowledgements
* fix(qa): satisfy exhaustive hosted validation gates
* fix(agents): fence stopped restart recovery dispatch
* style(agents): format restart recovery lifecycle regression
* test(gateway): isolate context prewarm sidecar lifecycle
* test(qa): make scenario process timeout cleanup deterministic
* fix(qa): stamp synthetic gateway configs with current version
* fix(openai): preserve vision capabilities in stale model catalogs
* test(qa): align profile channel rejection with current main
* fix(openai): forward supported moderation for image edits
* fix: restore latest-main CI and image edit documentation
* fix(qa): retain relocated code-mode evidence validation
* fix(openai): expose GPT-5.4 vision in static catalog
* fix(pricing): honor explicit model cost overrides
* test(pricing): keep isolated provider regressions deterministic
* fix(openai): inherit transport for discovered static models
* fix(gateway): honor agent-owned static image capabilities
* test(gateway): preserve prepared-snapshot attachment races
* test(gateway): isolate subagent persistence failure injection
* test(gateway): exercise concurrent voice replay admission
* fix(gateway): restore stale model image capabilities
* fix(agents): publish configured model vision capabilities
* fix(agents): isolate detached media transcript ownership
* test(agents): preserve generic transcript lock regression
* fix(gateway): require proven static model route identity
* fix(qa): accept bounded full-size generated image attachments
* fix(qa): require fresh script producer evidence
* test(qa): prove native E2E scenario execution
2026-07-29 12:45:27 -04:00
Vincent Koc
99b5df0fd2
fix(openai): satisfy realtime lifecycle lint
2026-07-29 17:57:59 +08:00
Vincent Koc
5e0a75f0e5
fix(openai): close realtime lifecycle races
2026-07-29 17:57:59 +08:00
Vincent Koc
1cc2e28b5b
chore(openai): keep lifecycle types internal
2026-07-29 17:57:59 +08:00
Vincent Koc
3bf40870ad
refactor(openai): apply lifecycle to realtime bridge
2026-07-29 17:57:59 +08:00
Vincent Koc
dd0e416303
refactor(openai): apply lifecycle to GPT-Live bridge
2026-07-29 17:57:59 +08:00
Vincent Koc
61cadc1459
refactor(openai): add realtime voice lifecycle
2026-07-29 17:57:59 +08:00
Peter Steinberger
4232126bba
chore: update dependencies across workspace ( #115677 )
...
* chore(deps): update dependencies
* fix(deps): restore CI compatibility
2026-07-29 05:16:42 -04:00