Commit Graph

19174 Commits

Author SHA1 Message Date
sallyom 4ba02b83e8 refactor(sandbox): share container backend with Podman
Signed-off-by: sallyom <somalley@redhat.com>
2026-07-31 00:06:33 -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 007fdb1f7c test(extensions): remove duplicate coverage (#116643) 2026-07-31 11:59:12 +08:00
Vincent Koc 326a4831cc test(google): cover realtime connection ownership 2026-07-31 11:47:59 +08:00
Vincent Koc cc62f37d6e fix(google): own realtime connection attempts 2026-07-31 11:47:59 +08:00
Vincent Koc 9a14ee3ad2 fix(meeting-bot): keep node capability internal 2026-07-31 11:09:03 +08:00
Vincent Koc 1bd2f93214 fix(meeting-bot): negotiate realtime output generations 2026-07-31 11:09:03 +08:00
Vincent Koc 4250552080 fix(meeting-bot): preserve node audio responses 2026-07-31 11:09:03 +08:00
Vincent Koc 8dd575f986 test(browser): remove dead config cases (#116631) 2026-07-31 10:57:55 +08:00
joshavant 23dbee9e38 fix(github-copilot): honor live model selection in guided setup 2026-07-30 21:15:10 -05:00
joshavant 94542eb872 fix(github-copilot): select available onboarding model 2026-07-30 21:15:10 -05:00
Vincent Koc 0929a00c37 merge: improve local model onboarding (#116606)
* origin/improve/lmstudio-model-setup:
  test(setup): allow timeout fallback without prepare options
  chore(setup): refresh generated native artifacts
  fix(setup): sync macOS onboarding strings
  feat(setup): improve local model onboarding
2026-07-31 10:03:40 +08:00
Harjoth Khara 5e2fec2969 fix(codex): /steer hangs indefinitely when the app-server does not answer turn/steer (#116565)
* fix(codex): bound the app-server turn/steer request so /steer cannot hang forever

* docs(codex): scope the turn/steer comment to verified behavior

* test(codex): prove steer abort clears pending request

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-31 10:01:02 +08:00
Vincent Koc e0e0b7cede test(codex): wait for heartbeat scheduling before timer advance (#116617) 2026-07-31 09:59:41 +08:00
Vincent Koc 9e965073e5 Merge remote-tracking branch 'origin/main' into experiment/google-cli-supported-paths
* origin/main: (168 commits)
  fix(plugins): keep registry sqlite root consistent (#116427)
  fix(cli): keep Gateway auth failures parseable in JSON (#116597)
  fix(trajectory): preserve prompts in oversized events (#116220)
  test(buzz): add live QA Lab channel lane (#116298)
  chore(i18n): refresh native locales (#116567)
  feat: add OpenClaw TUI prototype skill (#116583)
  fix(update): accept concrete versions selected by ranges (#116585)
  fix(agents): preserve locked session model routes
  test(qa-lab): preserve Matrix fault proxy identity
  fix(ci): extend OpenAI live profile setup budget (#116580)
  fix: prevent configured models from stalling startup (#116553)
  fix(cli): close MCP listener after one-shot commands
  fix(auto-reply): keep explicit NO_REPLY silent (#116548)
  test(discord): cover deferred backpressure terminals
  fix(discord): cancel backpressured realtime playback
  test(discord): cover realtime output backpressure
  fix(codex): add remote WebSocket heartbeat and reconnect (#116135)
  fix(macos): wait for the current reconnect snapshot (#116550)
  fix(outbound): recognize current-source message-tool sends (#116560)
  fix(voice-call): type cancelled consult outcomes
  ...

# Conflicts:
#	extensions/google/setup-api.test.ts
#	ui/src/e2e/model-setup.e2e.test.ts
2026-07-31 09:30:03 +08:00
Vincent Koc f50d4cff45 merge: sync origin/main
* origin/main:
  fix(plugins): keep registry sqlite root consistent (#116427)
  fix(cli): keep Gateway auth failures parseable in JSON (#116597)
  fix(trajectory): preserve prompts in oversized events (#116220)
  test(buzz): add live QA Lab channel lane (#116298)
  chore(i18n): refresh native locales (#116567)
  feat: add OpenClaw TUI prototype skill (#116583)
  fix(update): accept concrete versions selected by ranges (#116585)
  fix(agents): preserve locked session model routes
2026-07-31 08:53:18 +08:00
Vincent Koc 94b85cba5f feat(setup): improve local model onboarding 2026-07-31 08:53:13 +08:00
Patrick Erichsen 61cf4b9246 test(buzz): add live QA Lab channel lane (#116298)
* feat(buzz): add live QA runner

* ci(qa): add gated Buzz live lane

* docs(qa): document Buzz live testing

* fix(buzz): keep QA relay type private

* test(buzz): type QA suite mock

* fix(buzz): preserve racing QA reply relations

* fix(qa): harden Buzz credential redaction

* fix(buzz): ignore retained QA relay events

* fix(buzz): clean up observer setup failures

* test(buzz): return complete racing messages

* fix(buzz): default QA credentials to file

* fix(qa): validate pooled Buzz secrets

* fix(qa): redact structured Buzz auth tags

* fix(buzz): preserve QA credential env override

* fix(qa): redact inspected Buzz auth tags

* test(buzz): limit live QA to supported scenarios

* ci(qa): run Buzz lane in release checks

* fix(qa): require secure remote Buzz relays

* fix(qa): satisfy Buzz QA validation gates

* fix(qa): inject credential leasing into transport adapters
2026-07-30 17:44:27 -07:00
Mrunal Patel 99a87cd822 Fix Podman sandbox CI checks 2026-07-30 20:20:42 -04:00
Mrunal Patel 903276c798 Add Podman sandbox backend
Closes #101348

Adds a bundled podman sandbox backend, SDK helper exports, policy/Codex integration, generated plugin docs, and focused tests.
2026-07-30 20:20:42 -04:00
joshavant db4ad84d7f test(qa-lab): preserve Matrix fault proxy identity 2026-07-30 18:47:51 -05:00
Vincent Koc c3145b622c test(discord): cover deferred backpressure terminals 2026-07-31 07:00:01 +08:00
Vincent Koc 118fa6b8b8 fix(discord): cancel backpressured realtime playback 2026-07-31 07:00:01 +08:00
Vincent Koc 365d61d536 test(discord): cover realtime output backpressure 2026-07-31 07:00:01 +08:00
Kimiyu-openai 43156fe482 fix(codex): add remote WebSocket heartbeat and reconnect (#116135) 2026-07-30 15:38:26 -07:00
Jason (Json) dc34274397 fix(outbound): recognize current-source message-tool sends (#116560)
* fix(discord): recognize adopted thread sends

* fix(discord): require successful adopted thread delivery

* fix(outbound): mark automatic current-source sends

* test(gateway): cover automatic source projection
2026-07-30 16:29:55 -06:00
Vincent Koc 4c331166c4 fix(voice-call): type cancelled consult outcomes 2026-07-31 05:58:03 +08:00
Vincent Koc d4cb5ef6e3 fix(voice-call): preserve consult working handshake 2026-07-31 05:58:03 +08:00
Vincent Koc f65b514eb0 fix(voice-call): stop cancelled consults before start 2026-07-31 05:58:03 +08:00
Vincent Koc bec4243ed2 test(voice-call): cover consult cancellation before start 2026-07-31 05:58:03 +08:00
Vincent Koc a16453b538 fix(voice-call): retain consult owner in const cell 2026-07-31 05:58:03 +08:00
Vincent Koc 67c1e2aac9 test(voice-call): cover synchronous realtime close 2026-07-31 05:58:03 +08:00
Vincent Koc 2269e0cfcf fix(voice-call): guard synchronous realtime close 2026-07-31 05:58:03 +08:00
Vincent Koc 645929da80 test(voice-call): cover late native consult results 2026-07-31 05:58:03 +08:00
Vincent Koc 1fac5d6938 fix(voice-call): cancel native consults on teardown 2026-07-31 05:58:03 +08:00
joshavant b7bfe21348 test(matrix): use preferred temp root 2026-07-30 16:07:51 -05:00
joshavant 7051d94f79 test(matrix): keep temp tracker plugin-local 2026-07-30 16:07:51 -05:00
joshavant f36bfabf89 test(matrix): use temp directory tracker 2026-07-30 16:07:51 -05:00
Benjamin Badejo ab24d29d6c fix(matrix): use managed SQLite opener 2026-07-30 16:07:51 -05:00
Benjamin Badejo aa8fbb7f3c fix(matrix): reserve dedupe migration capacity 2026-07-30 16:07:51 -05:00
Benjamin Badejo 505d7b9f52 fix(state): preserve doctor import TTL 2026-07-30 16:07:51 -05:00
Benjamin Badejo d25e89d1ee fix(matrix): preserve migrated dedupe retention order 2026-07-30 16:07:51 -05:00
Benjamin Badejo d140a051ce chore(matrix): keep census result type private 2026-07-30 16:07:51 -05:00
Benjamin Badejo 080cbb1693 fix(matrix): fail closed on incomplete dedupe census 2026-07-30 16:07:51 -05:00
Benjamin Badejo cb95f6e9e8 fix(matrix): checkpoint completed dedupe migration 2026-07-30 16:07:51 -05:00
Benjamin Badejo 8155f64b64 fix(matrix): migrate dedupe from legacy state databases 2026-07-30 16:07:51 -05:00
Vincent Koc d1d2ad707b test(voice-call): cover telephony queue overflow ownership 2026-07-31 04:42:49 +08:00
Vincent Koc 944a2ee076 fix(voice-call): stop turns when speech playback fails 2026-07-31 04:42:49 +08:00
Vincent Koc d0e15c2870 test(voice-call): isolate telephony TTS queue coverage 2026-07-31 04:42:49 +08:00
Vincent Koc 68d80c5f90 fix(voice-call): bound pending telephony TTS 2026-07-31 04:42:49 +08:00