Commit Graph

76470 Commits

Author SHA1 Message Date
Vincent Koc c1a2f4dde7 fix(tui): keep whitespace-prefixed bang input in chat (#119245)
* chore: start T06 local shell proof

* fix(tui): preserve whitespace before bang submits

* fix(tui): defer paste expansion until submit

* fix(tui): preserve bang spacing across blocked retry

* fix(tui): keep whitespace bang chat out of history

* fix(tui): preserve bang routing across trim
2026-08-05 00:19:53 +08:00
Bek 50a30b7373 fix(codex): migrate redundant native service tiers (#118738) 2026-08-04 11:36:03 -04:00
Vincent Koc cdd0856f4d test(tui): prove streaming and tool card rendering (#119251) 2026-08-04 23:32:59 +08:00
qingminlong cb2965ddde fix(scripts): use direct-run helper for Windows guards (#110877)
* fix(scripts): normalize Windows direct-run guards

* test(scripts): cover direct-run routing

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-08-04 23:11:12 +08:00
Vincent Koc d06fc25a0c fix(agents): protect private memory in shared chats (#119198)
* fix(agents): protect private memory in shared chats

Fixes #84466

Co-authored-by: Peter Steinberger <steipete@gmail.com>

* fix(agents): propagate shared chat type across runtimes

* fix(agents): enforce bootstrap privacy after hooks

* test(agents): cover final bootstrap filtering

* fix(agents): filter private memory before allowlists

* fix(agents): preserve bootstrap source identity

* refactor(agents): simplify bootstrap source identity

* fix(agents): keep bootstrap source identity private

* fix(agents): unify CLI runtime chat type

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-08-04 23:01:38 +08:00
Vincent Koc 9d6d9af941 merge: bound Discord realtime exact speech retention (#119250)
* commit 'c238564d2707be5527e83b112025443401e7e2fa':
  fix(discord): count retained speech bytes
  test(discord): isolate exact speech overflow
  test(discord): cover exact speech overflow
  fix(discord): bound realtime exact speech
2026-08-04 22:56:25 +08:00
Vincent Koc 29f3199608 perf(cli): skip absent gateway workspace dotenv (#119227)
* perf(cli): skip absent gateway workspace dotenv

* test(cli): cover gateway dotenv import boundary

* test(cli): prove gateway dotenv stays lazy
2026-08-04 22:54:15 +08:00
Vincent Koc a54bec799c fix(agents): observe native provider prompt egress (#119219)
* fix(agents): observe final provider prompt egress

* fix(agents): observe native provider prompt egress

* test(agents): type native prompt observer models
2026-08-04 22:46:07 +08:00
zhangLei99586 e79f358b02 fix(feishu): report bot identity retry failures (#102185)
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
Co-authored-by: zhangLei99586 <294081397+zhangLei99586@users.noreply.github.com>
2026-08-04 22:45:28 +08:00
Vincent Koc 1aedd8f37e fix(memory): load configured providers for CLI search (#119186)
* fix(memory): activate configured providers in CLI commands

* fix(memory): resolve configured embedding provider owners

* test(memory): keep metadata mock unset by default

* fix(memory): preserve plugin allowlist policy

* test(memory): classify plugin-owned root command
2026-08-04 22:31:10 +08:00
Vincent Koc c238564d27 fix(discord): count retained speech bytes 2026-08-04 22:27:43 +08:00
Vincent Koc 193317fd68 test(discord): isolate exact speech overflow 2026-08-04 22:08:37 +08:00
Vincent Koc 47f8c4febb test(discord): cover exact speech overflow 2026-08-04 21:43:38 +08:00
Vincent Koc 00f3fb2469 fix(discord): bound realtime exact speech 2026-08-04 21:29:29 +08:00
Vincent Koc 52954a1fa8 chore(tui): add Gateway boundary PTY coverage (#119191)
* test(tui): prove gateway boundary flows

* test(tui): tighten gateway boundary assertions

* test(tui): satisfy gateway boundary lint

* test(tui): harden gateway boundary PTY proof

* test(tui): strengthen gateway lifecycle proof

* test(tui): validate gateway history metadata

* test(tui): isolate gateway model proof

* test(tui): isolate gateway model replies

* test(tui): isolate gateway boundary fixtures

* test(tui): settle gateway session adoption
2026-08-04 21:25:02 +08:00
vovapetry b5876a1086 fix(telegram): route reactions to their originating forum topics
Recover Telegram forum reaction topics from provider-observed message context before authorization, and drop unknown topics instead of routing them to General. Serialize each forum message with its reaction update to avoid cache races. Thanks @vovapetry.
2026-08-04 18:49:57 +05:30
Vincent Koc e2b90e6e71 test(gateway): isolate scheduled service timers (#119218) 2026-08-04 21:08:44 +08:00
Vincent Koc b4f01afa86 test(qa): cover Canvas agent and node controls (#119047)
* test(qa): cover Canvas agent and node controls

* fix(test): activate Canvas registry before gateway startup

* fix(test): align Canvas node proof with wire contract

* fix(test): narrow Canvas node invocation frames
2026-08-04 20:42:30 +08:00
Vincent Koc e4aab26d01 fix(cli): avoid repeated migration scans during local agent turns (#119051)
* fix(cli): avoid repeated state migration scans

* fix(build): preserve source runtime provenance

* fix(cli): persist state checkpoint before plugin convergence

* fix(cli): invalidate migration checkpoints on input changes

* fix(plugins): refresh changed doctor contracts

* fix(plugins): preserve warm Doctor contract indexes

* test(plugins): align manifest registry fixtures

* test(cli): isolate ACP process state

* fix(doctor): persist refreshed plugin indexes

* fix(doctor): verify persisted plugin index from disk

* fix(doctor): fence plugin index persistence

* fix(doctor): retain validated migration lease

* fix(plugins): canonicalize persisted build metadata

* fix(plugins): preserve config policy during install repair
2026-08-04 20:28:16 +08:00
Peter Steinberger a8bcbf6581 fix(gateway): keep agents list on prepared model facts (#119208) 2026-08-04 05:14:48 -07:00
YangManBOBO c6c7d7d9de fix(telegram): retry update offset persistence
Keep accepted and committed Telegram update offsets separate, retry transient state-store failures, and preserve classic plus isolated restart dedupe.

Co-authored-by: 潘晓波0668000512 <pan.xiaobo@xydigit.com>
2026-08-04 17:37:56 +05:30
Vincent Koc d3557ec013 fix(ci): accept profiled partial Kova gates (#119121)
* fix(ci): accept profiled partial Kova gates

* fix(ci): scope Kova secrets to live runs

* fix(ci): require reviewed Kova refs for live runs

* fix(ci): pin cross-profile Kova repair

* fix(perf): preserve historical Kova report contracts

* fix(ci): declare Kova gate options

* fix(ci): preserve required Kova partial failures
2026-08-04 20:07:12 +08:00
Pavan Kumar Gondhi 4170e11be9 fix(qqbot): keep channel API calls on the active account [AI] (#118575)
* fix(qqbot): bind channel API tool to active account

* fix(qqbot): scope active account binding to QQ turns

* fix(qqbot): reject disabled channel API accounts
2026-08-04 17:28:08 +05:30
Vincent Koc 6d88ec5248 fix(agents): recover from invalid compaction summaries (#119137) 2026-08-04 19:43:25 +08:00
Ayaan Zaidi 2a3a840aaf fix(gateway): expose OAuth-backed tools to CLI agents (#119166)
Carry prepared OAuth and model context through authenticated CLI loopback grants. Revoke cached credential-bearing tools synchronously while preserving the global cache cap.
2026-08-04 16:59:02 +05:30
Vincent Koc c3f148f6b7 fix(plugins): preserve metadata reloads during models status (#119183)
* fix(plugins): preserve newer metadata publications

* test(plugins): type metadata snapshot fixture
2026-08-04 19:24:30 +08:00
Peter Steinberger b5d41f9005 fix(test): bound direct gateway server runs (#119184) 2026-08-04 03:38:39 -07:00
Vincent Koc 121c6c1042 test(tui): prove command surfaces through PTY (#119165) 2026-08-04 18:08:53 +08:00
Peter Steinberger a7cca37838 fix(testbox): restore claims across path aliases (#119170) 2026-08-04 02:38:18 -07:00
Mike 0069f3f111 fix(message): preserve sends with incidental Telegram locations
Prevent model-populated location fields from dropping valid Telegram text and media. Keep direct/API mixed sends strict and preserve standalone location delivery.

Co-authored-by: snotty <snotty@users.noreply.github.com>
2026-08-04 14:50:57 +05:30
Vincent Koc 4def15d5df fix(perf): give each concurrency sample a full deadline (#119164) 2026-08-04 17:05:41 +08:00
Peter Steinberger da3b5edf40 fix(testbox): remove changed-gate sync residue (#119163) 2026-08-04 01:56:32 -07:00
alfredjbclaw b6a445c393 fix(telegram): preserve later chunks after rejected sends
Prevent Telegram long replies from silently losing their tail after definite per-chunk rejections. Preserve accepted message IDs and explicit partial-delivery state across durable, rich fallback, and streamed replies.

Co-authored-by: alfredjbclaw <alfredjbclaw@users.noreply.github.com>
2026-08-04 14:06:18 +05:30
Vincent Koc 4bdf9ca789 fix(tui): block terminal controls in system messages (#118998)
* fix(tui): sanitize rendered system messages

* test(tui): keep PTY safety proof within lint budget

* test(tui): clarify terminal safety PTY proof

* test(tui): de-churn terminal safety harness

* fix(tui): sanitize connection status output

* test(tui): split PTY harness support

* fix(tui): sanitize selector and footer output

* fix(tui): harden terminal display boundaries

* fix(tui): harden terminal display boundaries

* fix(tui): harden terminal output boundaries

* test(tui): repair terminal safety proof

* test(tui): harden terminal safety oracle

* test(tui): type OSC terminator candidates

* fix(tui): authenticate current terminal rendering

* fix(tui): harden terminal output safety evidence

* test(tui): keep PTY cell type internal

* test(tui): reject literal tabs in PTY oracle

* test(tui): reject literal backspace in PTY oracle
2026-08-04 16:35:41 +08:00
Ayaan Zaidi 1e3880352e fix(auto-reply): suppress false no-reply fallback during continuations (#119154)
* fix(auto-reply): keep pending continuations silent
* docs(auto-reply): clarify fallback ownership

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-08-04 13:59:53 +05:30
Vincent Koc 98feafe785 fix(scripts): prevent gateway benchmarks from stalling on probes (#119063)
* fix(scripts): bound gateway benchmark probes

* fix(scripts): bound concurrency response deadlines

* fix(perf): preserve benchmark socket reuse
2026-08-04 16:23:45 +08:00
Peter Steinberger b0c5d48f74 test(channels): verify built sanitizer semantics (#119151) 2026-08-04 01:20:48 -07:00
Vincent Koc 9faf34d3bc merge: wait for auth before starting realtime timeout (#119131) 2026-08-04 16:08:24 +08:00
Jason (Json) b1f2aae303 fix: prevent live updater from leaving Gateway offline indefinitely (#119116)
* fix(updater): bound maintenance commands

* fix(updater): bound post-kill cleanup

* fix(updater): fail closed on unverified Windows cleanup

* fix(updater): constrain unverifiable Windows commands

* fix(scripts): satisfy managed child return contract
2026-08-04 01:59:59 -06:00
Vincent Koc fd1cce2826 test(qa): restore memory tools primary ownership (#119142) 2026-08-04 15:57:32 +08:00
Vincent Koc 05c987ccec fix(agents): settle yielded fanout at harness boundary (#118703) 2026-08-04 15:54:52 +08:00
sunlit-deng 7cf7fbbe99 fix(codex): cap compaction override warning cache via createDedupeCache (#101745)
* fix(codex): cap compaction override warning cache via createDedupeCache

* test(codex): cover compaction warning cache eviction

* test(codex): use valid compaction trigger in cap coverage

* test(codex): assert warning retention at the 4096-entry boundary
2026-08-04 15:39:16 +08:00
Jason (Json) ae21f3c00c fix(daemon): skip unlabeled launchd plists (#119091) 2026-08-04 01:31:25 -06:00
Vincent Koc 7aa3642f6d test(qa): repair QA catalog integrity (#119140) 2026-08-04 15:28:02 +08:00
Vincent Koc a7cf1ba9fc chore: merge main into xAI OAuth timeout fix
* origin/main:
  fix(test): isolate shared state between test files (#118781)
  fix(telegram): use monotonic polling liveness
  fix(setup): keep compatible Claude wrappers selectable
  fix(agents): gate Claude live session protocol
  fix(agents): preserve Claude fork successor on stalls
  fix(agents): preserve Claude follow-up replies after background tasks
  fix: unblock macOS release validation (#119110)
  improve(qa): cover vision channel offload (#118862)
  test(qa): cover sandboxed exec behavior (#119053)
  fix(ai): preserve Google simple completion sanitation
  fix(macos): keep setup activation within app checks
  fix(tts): use prepared completion transport
  fix(ai): prefer provider-owned completion streams
  test(setup): type provider kind fixture
  fix(setup): complete prepared model activation
  fix(protocol): regenerate Swift wizard models
  fix(ollama): activate the model selected during setup
  fix(setup): preserve the prepared model handoff
2026-08-04 15:27:18 +08:00
Vincent Koc 45643863d7 fix(test): isolate shared state between test files (#118781)
* fix(test): isolate session suspension state

* fix(test): isolate nonzero worker exit coverage

* fix(test): keep suspension reset generations monotonic

* fix(test): isolate archived session UI mocks

* fix(deps): patch fast-uri and undici advisories

* fix(test): isolate stateful UI suites
2026-08-04 15:26:22 +08:00
Vincent Koc 32c5f02050 merge: keep llama.cpp completions on native transport
* https://github.com/openclaw/openclaw:
  fix(ai): preserve Google simple completion sanitation
  fix(tts): use prepared completion transport
  fix(ai): prefer provider-owned completion streams
2026-08-04 15:20:56 +08:00
Galin Iliev 1b58ecb5af fix(telegram): use monotonic polling liveness
Measure Telegram polling deadlines with a monotonic clock so wall-clock corrections cannot trigger false restarts or negative durations. Preserve the worker deadline and continued-stall recovery.

Co-authored-by: Galin Iliev <Galin.Iliev@microsoft.com>
Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-08-04 12:49:13 +05:30
joshavant 8393b37779 fix(setup): keep compatible Claude wrappers selectable 2026-08-04 02:08:23 -05:00
joshavant d636f5f8e0 fix(agents): gate Claude live session protocol 2026-08-04 02:08:23 -05:00