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
747c4e7a72
merge: sync origin/main
...
* origin/main:
fix: prevent live updater from leaving Gateway offline indefinitely (#119116 )
test(qa): restore memory tools primary ownership (#119142 )
fix(agents): settle yielded fanout at harness boundary (#118703 )
fix(codex): cap compaction override warning cache via createDedupeCache (#101745 )
fix(daemon): skip unlabeled launchd plists (#119091 )
test(qa): repair QA catalog integrity (#119140 )
fix(test): isolate shared state between test files (#118781 )
test(xai): cover delayed OAuth connection setup
fix(voice): start socket timeout after auth preparation
2026-08-04 16:11:09 +08:00
Vincent Koc
76ba214b98
fix(llama-cpp): dispose runtime on plugin stop
2026-08-04 16:10:51 +08: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
joshavant
b71e81e6e7
fix(agents): preserve Claude fork successor on stalls
2026-08-04 02:08:23 -05:00
joshavant
df867bd923
fix(agents): preserve Claude follow-up replies after background tasks
2026-08-04 02:08:23 -05:00
Vincent Koc
7a5f108293
fix: unblock macOS release validation ( #119110 )
...
* fix(test): guard split-memory tests on case-insensitive filesystems
* fix(sandbox): canonicalize aliased mount roots
* fix(claws): canonicalize aliased manifest paths
* test: isolate release validation from host state
2026-08-04 15:05:31 +08:00
Vincent Koc
3ac7083213
improve(qa): cover vision channel offload ( #118862 )
...
* test(qa): cover vision channel offload
* test(qa): harden vision channel offload coverage
2026-08-04 14:57:03 +08:00
Vincent Koc
1fb4f3c709
merge: sync llama.cpp transport fix with main
...
* 'main' of https://github.com/openclaw/openclaw :
test(qa): cover sandboxed exec behavior (#119053 )
test(qa): prove shared-channel memory recall (#119111 )
fix(telegram): keep request deadlines through response bodies
test(qa): cover gateway plugin approvals (#119128 )
fix(ai): keep OpenAI tool call id truncation UTF-16 safe (#110471 )
fix: preserve live updater failure diagnostics (#119096 )
fix: recover new-session models through Gateway startup (#119120 )
test(qa): cover instruction profile artifacts (#119078 )
fix(telegram): record automatic delivery message ids
test(qa): cover memory promotion safety (#119093 )
test(qa): prove overflow compaction pruning (#119033 )
fix(tool-search): preserve deferred MCP failures (#118363 )
fix(macos): keep setup activation within app checks
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 14:51:35 +08:00
Vincent Koc
6ce6dd3f21
merge: activate exact prepared local model
...
* commit '70d75c6fa3d022fb0de55640c4aca11baecd8175':
fix(macos): keep setup activation within app checks
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 14:40:48 +08:00
Vincent Koc
dc8bcf97d0
chore: merge main into xAI OAuth timeout fix
...
* origin/main:
test(qa): prove shared-channel memory recall (#119111 )
2026-08-04 14:36:41 +08:00
Vincent Koc
e0799199b3
test(qa): cover sandboxed exec behavior ( #119053 )
2026-08-04 14:36:03 +08:00
Vincent Koc
52c9448cb5
test(qa): prove shared-channel memory recall ( #119111 )
2026-08-04 14:20:08 +08:00
Vincent Koc
d21c6be181
test(xai): cover delayed OAuth connection setup
2026-08-04 14:17:19 +08:00
Vincent Koc
ebf335f1a6
fix(voice): start socket timeout after auth preparation
2026-08-04 14:17:19 +08:00
Peter Steinberger
84cfc43684
fix(telegram): keep request deadlines through response bodies
...
Keep Telegram Bot API deadlines and cancellation active until grammY finishes consuming each response body. Cancel discarded HTTP 421 bodies before retry and cover the stalled group-dispatch boundary with typed socket and live Telegram proof.
2026-08-04 11:40:41 +05:30
Vincent Koc
3f2fb7e365
test(qa): cover gateway plugin approvals ( #119128 )
2026-08-04 14:07:29 +08:00
pick-cat
01e7fca716
fix(ai): keep OpenAI tool call id truncation UTF-16 safe ( #110471 )
2026-08-04 14:03:44 +08:00
Vincent Koc
9c854cb1a0
fix(ai): preserve Google simple completion sanitation
2026-08-04 13:58:58 +08:00