Commit Graph

18186 Commits

Author SHA1 Message Date
chenyangjun-xy
8d7b858685 fix(tlon): honor configured user timezone in summarization history (#117429)
Channel history timestamps in summarization requests were rendered with
new Date().toLocaleString(), using the host process timezone instead of
the configured agents.defaults.userTimezone. Reuse the shared inbound
envelope formatter (formatAgentEnvelope + resolveEnvelopeFormatOptions)
so timestamps match the user timezone, consistent with Mattermost/Feishu.

Adds formatSummarizationHistoryText with coverage for the UTC baseline
and non-UTC offsets.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-01 14:29:41 -07:00
Omar Shahine
2b3009f718 fix(gateway): preserve node invoke dispatch provenance (#117139)
* fix(gateway): preserve node invoke dispatch provenance

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6381c461-11aa-4700-8648-4da1393e1c59

* fix(gateway): preserve timeout precedence

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6381c461-11aa-4700-8648-4da1393e1c59

* fix(gateway): mark wake-path disconnect as not dispatched

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6381c461-11aa-4700-8648-4da1393e1c59

* fix(gateway): mark plugin dispatch after send

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6381c461-11aa-4700-8648-4da1393e1c59

* build(browser): regenerate Copilot runtime

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6381c461-11aa-4700-8648-4da1393e1c59

---------

Co-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6381c461-11aa-4700-8648-4da1393e1c59
2026-08-01 21:22:51 +00:00
Peter Steinberger
1e83395d14 test(policy): deduplicate doctor fixtures (#117634) 2026-08-01 14:20:34 -07:00
zengLingbiao
c539192b5c fix(tlon): cancel unread error bodies in urbit channel ops (#117475)
* fix(tlon): cancel unread error bodies in urbit channel ops

* fix(tlon): start error body cancellation without awaiting it
2026-08-01 14:12:06 -07:00
Vincent Koc
813b7975aa merge(voice): preserve realtime reconnect continuity (#117599) 2026-08-02 05:03:59 +08:00
Peter Steinberger
cf1afe26a1 test(signal): consolidate inbound context fixtures (#117617) 2026-08-01 14:02:30 -07:00
Peter Steinberger
6d5b25e24b refactor(imessage): deduplicate monitor route test fixtures (#117621) 2026-08-01 14:02:27 -07:00
Vincent Koc
fedb61bf91 merge(openai): retain Gateway microphone frames (#117604) 2026-08-02 04:52:06 +08:00
chenyangjun-xy
b24881eb04 fix(tlon): chunk outbound text over the declared delivery limit (#117438)
* fix(tlon): chunk outbound text over the declared delivery limit

* fix(tlon): guard optional outbound adapter in chunking test

* test(tlon): prove chunked outbound over real urbit loopback
2026-08-01 13:19:51 -07:00
Peter Steinberger
db49a9a565 fix(cerebras): keep documented model catalog static (#117584)
Co-authored-by: Peter Steinberger <steipete@macos.shared>
2026-08-01 13:16:27 -07:00
Vincent Koc
80c187b866 fix(xai): preserve terminal realtime voice outcomes (#117600)
* fix(xai): preserve canonical realtime terminal outcomes

* fix(xai): bound terminal tool outcome state

* test(xai): bound realtime outcome harness payloads

---------

Co-authored-by: Peter Steinberger <steipete@macos.shared>
2026-08-02 04:13:58 +08:00
Peter Steinberger
a26df7153f test(qa): deduplicate mock provider fixtures (#117590) 2026-08-01 13:05:21 -07:00
wangmiao0668000666
ebb301c32d fix(moonshot): forward abort signal through Kimi web search provider (#105125) 2026-08-01 13:01:40 -07:00
Vincent Koc
de755117e6 merge(main): refresh realtime continuity repair
* commit '81e392b7ff43bcdb7a3be50a99adf65c3b0141b5':
  fix(channels): preserve filters in offline status diagnostics (#117570)
  perf(gateway): separate startup maintenance timing (#117577)
  refactor(tests): deduplicate database-first guard fixtures (#117594)
  fix(cli): align sessions cleanup label summary by visible width (#117459)
  perf(gateway): skip empty session reconciliation (#117589)
  refactor(ui): consolidate cron form control rendering (#117576)
  fix(memory): recover restored session freshness (#117548)
  fix(ui): preserve Talk transcript surrogate bounds
  fix(ui): harden Talk transcript marker bounds
  test(ui): cover bounded realtime Talk entries
  fix(ui): bound realtime Talk conversation text
2026-08-02 03:59:46 +08:00
Vincent Koc
5df1c401e3 Merge repaired PR #117057 onto current main
* commit '657450148cae1e3eb3f05e9fcb709ca60ff8d71d':
  test(openai): satisfy live proof lint
  test(openai): prove gateway startup audio delivery
  test(openai): isolate gateway audio pipeline proof
  fix(openai): unify gateway microphone buffering
  fix(openai): preserve gateway microphone startup audio
2026-08-02 03:45:05 +08:00
Peter Steinberger
165c968f95 fix(memory): recover restored session freshness (#117548) 2026-08-01 12:39:24 -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
cdf4c4ce7a merge: refresh realtime continuity onto main
* origin/main: (53 commits)
  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)
  fix(tasks): sanitize every human task and flow detail (#117568)
  fix(feishu): cancel unread streaming-card error bodies before release (#117312)
  fix(status): honor explicit local RPC fallback timeouts (#117519)
  fix(tasks): validate notification policy before persistence (#117554)
  refactor: consolidate full release child workflows (#117385)
  refactor(policy): centralize doctor health-check descriptors (#117578)
  perf(gateway): mark recovery before model preparation (#117544)
  test(openai): parse realtime websocket frames safely
  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)
  test(ui): cover reentrant Talk meter cleanup
  fix(plugins): fail blocked enable commands (#117536)
  fix(ui): reclaim reentrant Talk audio meters
  ...
2026-08-02 03:32:45 +08:00
Peter Steinberger
7c9794b5c6 fix(whatsapp): normalize future-proof QA poll and video note ingress (#117579)
Co-authored-by: Peter Steinberger <steipete@macos.shared>
2026-08-01 12:30:49 -07: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
18120072a0 Merge origin/main into fix(openai): retain gateway startup audio
* origin/main:
  fix(tasks): sanitize every human task and flow detail (#117568)
  fix(feishu): cancel unread streaming-card error bodies before release (#117312)
  fix(status): honor explicit local RPC fallback timeouts (#117519)
  fix(tasks): validate notification policy before persistence (#117554)
  refactor: consolidate full release child workflows (#117385)
  refactor(policy): centralize doctor health-check descriptors (#117578)
2026-08-02 03:27:14 +08:00
zengLingbiao
1a0d3b5c40 fix(feishu): cancel unread streaming-card error bodies before release (#117312) 2026-08-01 12:26:27 -07:00
Vincent Koc
75fc973690 test(openai): satisfy live proof lint 2026-08-02 03:20:30 +08:00
Peter Steinberger
c5090b9cf5 refactor(policy): centralize doctor health-check descriptors (#117578) 2026-08-01 12:09:52 -07: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
Javier Ailbirt
7563e40e47 fix(googlechat): drop invalid thread resource names before send (#108324)
Reply routing can hand sendGoogleChatMessage a `thread` that is not a
valid `spaces/{space}/threads/{thread}` resource name — a bare id, a
`spaces/{space}/messages/{message}` name, or a thread from a different
(or wrongly-cased) space. The Chat API rejects the whole request with
`400 INVALID_ARGUMENT`, so the reply is never delivered even though the
agent already produced it (and did any side effects).

Guard the send so the `thread` field and the messageReplyOption fallback
are applied only when the thread is a well-formed name belonging to the
target space; otherwise post to the space as a new thread. Revives the
approach of #28153 (auto-closed as stale) and addresses the failure mode
behind #64313.
2026-08-01 11:59:08 -07:00
RileyJJY
9a120f364f fix(irc): strip markdown from outbound text (#112961) 2026-08-01 11:55:52 -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
Vincent Koc
980550ffcb test(voice-call): use provider audio callback 2026-08-02 02:32:20 +08:00
Vincent Koc
81abcdeba4 fix(google): reset continuity before reconnect backoff 2026-08-02 02:32:20 +08:00
Vincent Koc
c7b1399879 fix(discord): type active-run fallback 2026-08-02 02:21:31 +08:00
Vincent Koc
7795d902f7 chore: merge main into memory test isolation fix
* origin/main: (35 commits)
  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
  test(openai): dedupe realtime voice fixtures (#117503)
  fix(google): flush lazy prompts on provider readiness
  fix(gateway): keep canonical hooks on pristine startup path (#117493)
  ...
2026-08-02 02:21:19 +08:00
Vincent Koc
83e8033ac6 fix(google): preserve realtime prompts during startup (#117529)
* commit 'd60584ee2d1dc3755477b38234b37f8d11bc1b9c':
  test(google): cover ready callback close precedence
  fix(google): flush lazy prompts on provider readiness
  test(google): prove lazy realtime prompt delivery
  fix(google): bound lazy realtime user messages
2026-08-02 02:10:29 +08:00
Omar Shahine
b67fa6a2c4 fix(imessage): prevent duplicate messages after delayed sends (#110853)
* fix(imessage): outlive imsg send fallback

* test(imessage): prove delayed fallback resolves once

* fix(imessage): preserve the send timeout floor

---------

Co-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com>
2026-08-01 10:51:06 -07:00
Vincent Koc
5b7fcce1bb fix(discord): replay only unheard exact speech 2026-08-02 01:33:40 +08:00
Vincent Koc
ab3109a598 fix(voice-call): close stale realtime sockets 2026-08-02 01:33:40 +08:00
Vincent Koc
d53772e984 fix(google): signal fresh realtime sessions 2026-08-02 01:29:18 +08:00
Vincent Koc
19f7834e14 fix(discord): fence realtime provider generations 2026-08-02 01:27:00 +08:00
Vincent Koc
d60584ee2d test(google): cover ready callback close precedence 2026-08-02 01:25:41 +08:00
Vincent Koc
e745f53014 fix(voice-call): isolate replaced realtime bridges 2026-08-02 01:23:30 +08:00
Peter Steinberger
b9bf34a3cd test(openai): dedupe realtime voice fixtures (#117503) 2026-08-01 10:22:51 -07:00
Vincent Koc
814a2ebb61 fix(google): flush lazy prompts on provider readiness 2026-08-02 01:22:33 +08:00
Vincent Koc
6dcb95a947 test(memory): isolate mocked embedding providers 2026-08-02 01:18:43 +08:00
Vincent Koc
cc71e7c452 fix(discord): reset realtime provider continuity 2026-08-02 01:11:52 +08:00
Vincent Koc
e1cc00f9b6 fix(voice-call): guard continuity reset ownership 2026-08-02 01:10:36 +08:00
Peter Steinberger
17625e5cd2 fix(msteams): preserve thread targets for structured sends (#117516) 2026-08-01 10:07:22 -07:00