Vincent Koc
b269e652bc
chore(codex): bump app-server to 0.146.1
2026-08-06 07:11:37 +08:00
Peter Steinberger
3ec8af66d1
refactor(openai): simplify ChatGPT OAuth credential flow ( #119628 )
2026-08-05 08:51:41 -07:00
Vincent Koc
ebf335f1a6
fix(voice): start socket timeout after auth preparation
2026-08-04 14:17:19 +08:00
Vincent Koc
dc11c78927
test(qa): cover audio proxy and limit handling ( #118863 )
2026-08-04 07:06:03 +08:00
Peter Steinberger
665b47832a
fix(openai): enforce final transcript bounds before callback delivery ( #118928 )
2026-08-03 13:56:21 -07:00
Peter Steinberger
990fdcf6fd
fix(providers): recognize configured media credentials across provider boundaries ( #118761 )
...
* fix(providers): honor configured media credentials across owner boundaries
* test(providers): align configured auth fixtures and derived SDK surfaces
* fix(providers): enforce shared DashScope media credential policy
2026-08-03 13:26:31 -07:00
Peter Steinberger
b9e5b25e31
fix(openai): commit eligible final realtime transcription audio safely ( #118782 )
2026-08-03 10:51:48 -07:00
Peter Steinberger
5de84bfc4d
fix(openai): support the current speech model snapshot ( #118475 )
...
* fix(openai): support the current speech model snapshot
* docs(openai): clarify speech instructions apply to the model family
2026-08-02 23:00:46 -07:00
Peter Steinberger
e04caa6aee
fix(openai): support flexible GPT Image 2 dimensions ( #118476 )
...
* fix(openai): support flexible GPT Image 2 dimensions
* docs(openai): explain flexible GPT Image 2 dimensions
2026-08-02 22:40:07 -07:00
Peter Steinberger
694212ea72
test(agents): fixture model runtime collaborators ( #118453 )
...
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-02 21:33:39 -07:00
Peter Steinberger
128361397a
test(openai): centralize GPT-Live delegation contracts ( #118436 )
...
* test(openai): centralize GPT-Live delegation contracts
* test(openai): type delegation consult mocks
2026-08-02 21:14:30 -07:00
Peter Steinberger
11795bdc7c
refactor(openai): unify GPT-Live delegation control ( #118391 )
2026-08-02 20:03:33 -07:00
Peter Steinberger
b36e9af00a
fix(openai): reject malformed video download bodies ( #117227 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-08-02 19:39:46 -07:00
Vincent Koc
1519571398
test(openai): isolate terminal history bounds
2026-08-03 05:48:38 +08:00
Vincent Koc
6ea9489d08
test(openai): cover terminal history saturation
2026-08-03 05:35:22 +08:00
Vincent Koc
05541a2897
fix(openai): preserve terminal history precedence
2026-08-03 05:35:21 +08:00
Vincent Koc
05ddb8ab11
test(openai): cover tombstone eviction ordering
2026-08-03 05:12:21 +08:00
Vincent Koc
27f6005682
fix(openai): retain active predecessor satisfaction
2026-08-03 05:12:21 +08:00
Vincent Koc
26cd629d1b
test(openai): cover rejected terminal failures
2026-08-03 05:10:33 +08:00
Vincent Koc
a0db9cdd15
fix(openai): preserve terminal error precedence
2026-08-03 05:10:33 +08:00
Vincent Koc
8f83eaccf4
test(openai): cover pre-commit terminal events
2026-08-03 05:09:26 +08:00
Vincent Koc
72b4e42b44
fix(openai): tombstone pre-commit terminal events
2026-08-03 05:09:25 +08:00
Vincent Koc
53055bb334
test(openai): pin first transcript terminal outcome
2026-08-03 04:25:07 +08:00
Vincent Koc
26b04e768e
fix(openai): ignore post-terminal transcript events
2026-08-03 04:25:07 +08:00
Vincent Koc
22db40f337
test(openai): cover realtime transcription bounds
2026-08-03 04:24:36 +08:00
Vincent Koc
c49afb7eec
fix(openai): bound realtime transcription state
2026-08-03 04:24:36 +08:00
Vincent Koc
7717b8925b
test(openai): verify live realtime bridge reuse
2026-08-03 03:02:09 +08:00
Vincent Koc
4f8a9c8301
fix(openai): reset realtime session lifecycle cleanly
2026-08-03 03:00:24 +08:00
Vincent Koc
a0a6ce972a
test(openai): cover realtime terminal reset
2026-08-03 02:59:44 +08:00
Vincent Koc
c904881f7d
test(openai): cover gateway relay callback races
2026-08-02 19:36:22 +08:00
Vincent Koc
8c859e9606
fix(openai): preserve gateway relay error precedence
2026-08-02 19:34:57 +08:00
Vincent Koc
0f2864f86d
test(openai): pin reconnect terminal precedence
2026-08-02 17:25:01 +08:00
Vincent Koc
3ba1f31c55
fix(openai): reset fresh realtime reconnects
2026-08-02 17:24:12 +08:00
Vincent Koc
4fc66dc3a0
test(openai): type outbound realtime items
2026-08-02 17:18:28 +08:00
Vincent Koc
a90a688ca5
test(openai): cover terminal tool-call ownership
...
Co-authored-by: Peter Steinberger <steipete@users.noreply.github.com >
2026-08-02 17:05:14 +08:00
Vincent Koc
66afa21fcf
fix(openai): own terminal realtime tool calls
...
Co-authored-by: Peter Steinberger <steipete@users.noreply.github.com >
2026-08-02 17:05:13 +08:00
Peter Steinberger
131b9e3904
refactor(voice): share realtime session lifecycle ( #117865 )
...
* refactor(voice): share realtime session lifecycle
* test(voice): normalize abort rejection
2026-08-01 23:35:57 -07:00
Yiğit ERDOĞAN
65d64818bb
fix(tts): reject non-audio speech synthesis responses ( #117345 )
...
* fix(tts): reject non-audio speech synthesis responses
A successful HTTP 200 carrying a JSON error, an HTML sign-in page, or a
zero-byte body was returned as an audio buffer and written out as a playable
attachment. Route the xAI, Gradium, and Azure Speech synthesizers through the
shared binary-response contract that the OpenAI-compatible speech provider
already uses, so the media kind is validated before the body is read and the
unread body is canceled when it is rejected.
Each provider keeps its own overflow wording, so operator-facing messages are
unchanged apart from the new malformed-response rejection.
* test(azure-speech): prove the audio guard closes a real upstream socket
Adds a loopback node:http server that answers 200 with a JSON content type
and then never ends the body, driven through the real azureSpeechTTS path
with the real global fetch and no stubbed transport. Without the guard the
synthesis hangs to its timeout with the socket still open; with it the
response is rejected immediately and the server observes the close.
* fix(openai): reject malformed binary speech responses
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-08-01 16:13:15 -07:00
Wynne668
d03a43a820
fix(openai): keep embedding batch waits within timeout ( #111675 )
...
* fix(openai): keep embedding batch waits within timeout
* test(openai): isolate batch poll timers from provider body guards
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-08-01 15:17:36 -07:00
Vincent Koc
657450148c
Merge origin/main into fix(openai): retain gateway startup audio
...
* origin/main:
fix(whatsapp): normalize future-proof QA poll and video note ingress (#117579 )
fix(perf): separate warm and first-device health probes (#117525 )
fix(ci): repair plugin prerelease validation (#117562 )
test(openai): parse realtime websocket frames safely
test(ui): cover reentrant Talk meter cleanup
fix(ui): reclaim reentrant Talk audio meters
fix(openai): own queued realtime audio buffer snapshots
2026-08-02 03:35:47 +08:00
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
75fc973690
test(openai): satisfy live proof lint
2026-08-02 03:20:30 +08:00
Vincent Koc
e3020ac33c
Merge origin/main into fix(openai): retain gateway startup audio
...
* origin/main:
perf(gateway): mark recovery before model preparation (#117544 )
fix(openai): keep embedding identity stable across upgrades (#117557 )
fix(googlechat): drop invalid thread resource names before send (#108324 )
fix(skills): preserve profile in ClawHub command hints (#117555 )
fix(cli): explain filtered plugin policy without unsafe recovery (#117556 )
fix(irc): strip markdown from outbound text (#112961 )
refactor(plugins): consolidate registry snapshots (#117561 )
fix(plugins): fail blocked enable commands (#117536 )
test(secrets): dedupe runtime state fixtures (#117563 )
2026-08-02 03:07:14 +08:00
Vincent Koc
da94915d06
test(openai): prove gateway startup audio delivery
2026-08-02 03:07:01 +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
Vincent Koc
7eeac6b004
Merge remote-tracking branch 'origin/pr-117057-head' into maint-pr-117057-quicksilver-live-20260801
...
* origin/pr-117057-head:
test(openai): isolate gateway audio pipeline proof
fix(openai): unify gateway microphone buffering
fix(openai): preserve gateway microphone startup audio
2026-08-02 02:39:35 +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