Vincent Koc
dac0ef6f0e
fix(test): bound Testbox agentic and extension suites ( #115696 )
...
* fix(test): split Testbox extension processes
* fix(test): split Testbox agentic processes
2026-07-30 19:26:47 +08:00
Dallin Romney
c854a04696
fix(ci): validate frozen release candidates faithfully ( #116357 )
2026-07-30 18:57:32 +08:00
Dallin Romney
bf8da2537c
improve(ci): fail_fast option for release validation, off by default ( #116352 )
...
* ci: make release validation fail-fast optional
* ci: pass release QA fail-fast as boolean
* test: format release validation helper test
2026-07-30 18:53:41 +08:00
Vincent Koc
ea894bba8a
fix(test): preserve failed shard diagnostics ( #116289 )
2026-07-30 17:17:17 +08:00
Jason (Json)
a67ad03eea
perf(gateway): bound prepared runtime startup work ( #116261 )
2026-07-30 01:41:35 -06:00
Dallin Romney
c8f0db2c24
fix(ci): load frozen shard runner without repository fetch ( #116273 )
...
* fix(ci): load frozen shard runner without repository fetch
* test(ci): preserve workflow expression delimiters
* fix(ci): use non-cone frozen runner checkout
2026-07-30 15:37:44 +08:00
Peter Steinberger
2c436594de
fix: clean npm preflight cache restore targets ( #116276 )
2026-07-30 00:33:55 -07:00
Peter Steinberger
3e67671d92
fix(e2e): apply default service identity per flow ( #116265 )
2026-07-30 00:00:14 -07:00
Peter Steinberger
62cbbcc800
fix(e2e): align service account state ( #116254 )
2026-07-29 23:00:16 -07:00
Vincent Koc
16baaff90f
fix(e2e): align doctor switch with service ownership ( #116209 )
2026-07-30 12:31:39 +08:00
Peter Steinberger
4430f8ecfd
fix(e2e): use account home for daemon switch ( #116217 )
2026-07-29 21:06:38 -07:00
Peter Steinberger
9c3503a443
fix(e2e): use default state for daemon switch ( #116190 )
2026-07-29 20:02:19 -07:00
Peter Steinberger
5a3c3b3f4f
fix(ci): explicitly serialize hosted Swift tests ( #116167 )
2026-07-29 18:55:37 -07:00
Vincent Koc
ffa99ca81d
fix(docker): validate timezone in runtime image ( #116153 )
2026-07-30 09:19:01 +08:00
Vincent Koc
1065c1d697
fix(ui): identify source builds in settings footer ( #116134 )
...
* fix(ui): identify source builds in settings footer
* fix(release): classify all official Control UI builds
2026-07-30 08:58:34 +08:00
Peter Steinberger
1165be39ff
ci: serialize hosted macOS Swift tests ( #116137 )
2026-07-29 17:40:41 -07:00
Vincent Koc
54e273e695
fix(agents): keep date reasoning current in long-running sessions ( #116090 )
...
* fix(agents): ground date reasoning below cache boundary
Co-authored-by: Deepak Jain <406777+deepujain@users.noreply.github.com >
* docs: refresh temporal context map
* chore: leave release notes to release curation
* test(agents): keep compaction date mock complete
---------
Co-authored-by: Deepak Jain <406777+deepujain@users.noreply.github.com >
2026-07-29 22:12:47 +00:00
xingzhou
b5c0878777
fix(build): bound bundled plugin asset generators ( #111366 )
...
Fail build and copy generators with ETIMEDOUT after 600000ms and terminate the complete managed process tree. Keep the timeout policy in the bundled-assets caller while preserving the shared helper for distinct callers such as #111349 .
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-30 04:56:21 +08:00
Jason (Json)
3f6f172873
fix(build): bound declaration memory use ( #116021 )
2026-07-29 13:25:47 -06:00
Peter Steinberger
97d374b357
refactor(agents): remove retired Codex CLI parser ( #116017 )
2026-07-29 14:14:41 -04:00
RileyJJY
34b72d1fce
fix(scripts): bound dependency pin git lookups ( #110570 )
...
* fix(scripts): bound dependency pin git lookups
* fix(scripts): address dependency pin review
* Update dependency pin helper types
* fix(scripts): terminate stalled dependency pin Git commands
Bound both dependency-pin Git subprocesses and terminate SIGTERM-resistant children. Preserve sparse-index reads, Windows-native Git, exact timeout errors, and script declaration contracts.
Co-authored-by: RileyJJY <0668000974@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-29 13:11:23 -04:00
Peter Steinberger
dc60a9442d
feat(talk): support GPT-Live over gateway relay ( #115831 )
...
* feat(talk): add GPT-Live gateway relay peer
* fix(talk): ignore duplicate GPT-Live sideband audio
* fix(openai): harden GPT-Live relay startup
* fix(deps): replace vulnerable werift ip helper
* fix(deps): scope werift ip override version
* fix(openai): normalize relay startup errors
* test(ci): register GPT-Live gateway live shard
* fix(talk): tighten GPT-Live relay readiness
* fix(talk): keep relay override helper private
* fix(talk): resolve relay readiness with launch model
* fix(openai): preserve GPT-Live media clock
* fix(talk): align GPT-Live relay readiness and framing
* fix(openai): expire pending GPT-Live reservations
* fix(openai): harden GPT-Live delegation audio
* style(openai): satisfy RTP reorder lint
2026-07-29 12:54:23 -04:00
wings1029
a4aaa1cd74
fix(scripts): keep cross-os command output tails UTF-8 safe ( #109152 )
...
* fix(scripts): keep cross-os command output tails UTF-8 safe
* fix(scripts): avoid possibly-undefined buffer index in cross-os UTF-8 tail skip
Buffer bracket indexing returns number | undefined under strict
TypeScript. Use .at() with an explicit undefined guard to satisfy
check-test-types.
* fix: add curly braces to single-line if statements (lint)
ESLint curly rule requires { } around all if/while/for bodies.
* fix(scripts): preserve streamed UTF-8 command output tails
Co-authored-by: 陈志强0668000989 <chen.zhiqiang1@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-29 12:51:13 -04:00
Peter Steinberger
d16e33e08e
fix: restore trustworthy end-to-end QA and cross-channel delivery ( #115404 )
...
* fix(qa): repair verified end-to-end and channel regressions
* fix(gateway): make interrupted restart recovery lifecycle-safe
* test(heartbeat): target the canonical recovery session store
* fix(gateway): prioritize durable restart recovery before heartbeat
* fix(qa): preserve safe restart recovery and channel expiry
* fix(qa): fail closed and fence restart recovery
* test(agents): isolate restart recovery timing
* test(agents): prove actual restart retry timing
* fix(qa): report incompatible profile scenarios
* fix(scripts): resolve symlinked docker scheduler entrypoints
* fix(qa): require fresh native test evidence
* fix(heartbeat): fence active restart recovery delivery
* fix(gateway): consume untargeted restart acknowledgements
* fix(qa): satisfy exhaustive hosted validation gates
* fix(agents): fence stopped restart recovery dispatch
* style(agents): format restart recovery lifecycle regression
* test(gateway): isolate context prewarm sidecar lifecycle
* test(qa): make scenario process timeout cleanup deterministic
* fix(qa): stamp synthetic gateway configs with current version
* fix(openai): preserve vision capabilities in stale model catalogs
* test(qa): align profile channel rejection with current main
* fix(openai): forward supported moderation for image edits
* fix: restore latest-main CI and image edit documentation
* fix(qa): retain relocated code-mode evidence validation
* fix(openai): expose GPT-5.4 vision in static catalog
* fix(pricing): honor explicit model cost overrides
* test(pricing): keep isolated provider regressions deterministic
* fix(openai): inherit transport for discovered static models
* fix(gateway): honor agent-owned static image capabilities
* test(gateway): preserve prepared-snapshot attachment races
* test(gateway): isolate subagent persistence failure injection
* test(gateway): exercise concurrent voice replay admission
* fix(gateway): restore stale model image capabilities
* fix(agents): publish configured model vision capabilities
* fix(agents): isolate detached media transcript ownership
* test(agents): preserve generic transcript lock regression
* fix(gateway): require proven static model route identity
* fix(qa): accept bounded full-size generated image attachments
* fix(qa): require fresh script producer evidence
* test(qa): prove native E2E scenario execution
2026-07-29 12:45:27 -04:00
Peter Steinberger
5bfc65d7f4
refactor: remove 3,543 lines of redundant runtime and tests ( #115961 )
...
* refactor: remove 3,543 lines of redundant runtime and tests
* refactor: ratchet production environment variable budget
2026-07-29 11:43:41 -04:00
Peter Steinberger
fde4658bf6
fix(ui): recover sessions and dashboards after prolonged outages ( #115654 )
...
* fix(ui): recover long-running sessions and dashboards
* fix(ui): expose browser-safe gateway timers
* refactor(ui): keep browser timer surface minimal
* refactor(gateway): extract pending request state
* fix(ci): refresh browser runtime and format baseline
* fix(ci): exclude generated plugin outputs from targeted lint
* fix(ui): bound long-running connection and pane lifecycles
* refactor(ui): split long-running lifecycle regression coverage
* fix(ui): bound long-running media and lint ownership
* fix(security): preserve explicit workspace disable denylist
* fix(ci): preserve plugin manifest fallback lint
2026-07-29 10:09:51 -04:00
Vincent Koc
7e08953401
Merge pull request #115839 from openclaw/refactor/status-summary-owner
...
refactor(status): own summary preparation
2026-07-29 22:07:31 +08:00
wings1029
796ee27b3a
fix(scripts): keep format-docs output tails UTF-8 safe ( #110825 )
...
* fix(scripts): keep format-docs output tails UTF-8 safe
When formatter (oxfmt) error output exceeds the 16 KiB tail cap and the
retained byte window starts inside a multibyte UTF-8 character, the
diagnostic tail would begin with a replacement character (�).
Add a decodeUtf8Tail helper that skips leading UTF-8 continuation bytes
before decoding the byte suffix, matching the existing pattern in
scripts/run-additional-boundary-checks.mjs (#109167 ).
Keep the existing 16 KiB cap and ASCII behavior unchanged.
* refactor(scripts): share UTF-8-safe output tails
Co-authored-by: 陈志强0668000989 <chen.zhiqiang1@xydigit.com >
* test(scripts): prove real formatter UTF-8 failures
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-29 08:29:24 -04:00
Peter Steinberger
5de970c1cc
refactor: correct SDK compatibility removal metadata ( #115862 )
...
* refactor(plugin-sdk): correct compat removal metadata
* test(plugins): align boundary report compat counts
2026-07-29 08:18:52 -04:00
Vincent Koc
38abf500ba
fix(update): stabilize cross-version dev upgrades ( #115651 )
...
* fix(e2e): stabilize cross-version Parallels upgrades
* fix(e2e): avoid inline macOS guest probes
* fix(e2e): detach Windows dev updates
* fix(e2e): detach macOS guest updates with Node
* fix(e2e): initialize skipped upgrade config
* fix(update): use partial clone for dev checkout
* fix(update): keep Windows dev checkouts clean
* fix(e2e): pin Parallels dev update targets
* fix(e2e): own Parallels gateway restarts
* fix(e2e): verify pinned Parallels checkouts
* fix(e2e): forward Parallels update budgets
* fix(e2e): use canonical provider auth choices
* chore: leave changelog to release automation
* test(ui): stabilize route waits on loaded runners
2026-07-29 19:52:34 +08:00
Peter Steinberger
d6dafac8a1
test(ui): isolate registry-sensitive suites ( #115860 )
2026-07-29 07:44:48 -04:00
qingminlong
ba26595aaa
fix(e2e): bound Docker stats sample lines ( #109262 )
...
* fix(e2e): bound Docker stats sample lines
* fix(e2e): format Docker stats line cap proof
* fix docker stats CRLF line cap
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-29 07:30:29 -04:00
loong
7bdd1f646b
fix(memory-host-sdk): resolve stable execPath for worker fork to survive Homebrew Node upgrades ( #99318 )
...
* fix(memory): survive Homebrew Node upgrades
Co-authored-by: 袁龙辉0668001277 <yuan.longhui@xydigit.com >
* test(whatsapp): isolate last-route coverage
* fix(deepinfra): preserve offline model compatibility
* test(memory): isolate migration cleanup lifecycle
* test: stabilize aggregate extension gates
* ci: retrigger pull request workflow
* test: preserve inherited Node options
* test(cli): tolerate cold hosted startup
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-29 06:49:02 -04:00
Vincent Koc
fa16b0fcf0
refactor(status): own summary preparation
2026-07-29 18:08:41 +08:00
Peter Steinberger
7a4649ceb3
feat(ui): first-class chat audio/video player cards ( #115764 )
...
* feat(ui): add chat media player cards
* fix(ui): harden chat media attachment lifecycle
* fix(ui): finalize chat media fallbacks
* fix(ui): rely on video playback errors
* fix(ui): guard deferred media resume
* test(ui): align local media assertions with player cards
* docs(ui): note cross-origin download fallback
* fix(ui): keep player helpers module-private
* test(ui): wait for encoded video attachment
* test(ui): wait for hidden audio media element
* test(scripts): give oxlint shard-kill test headroom under CI load
2026-07-29 05:32:43 -04:00
Peter Steinberger
1f537c36c6
fix(agents): expose CLI tool summaries in terminal results ( #115797 )
...
* fix(agents): preserve CLI tool summaries
* fix(agents): cover Codex collaboration tools
2026-07-29 05:30:39 -04:00
Hannes Rudolph
6dc55fa65e
fix(plugins): recover user turns with scoped reply hooks ( #114836 )
...
Allow before_agent_reply plugins to declare host-enforced trigger eligibility so scheduled-only hooks do not block interrupted user-turn recovery. Keep omitted and malformed scopes fail-closed, scope both memory-core maintenance hooks, and cover three runner reload cycles through the public registration contract.
Refs: #111442
Source: #114836
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-29 17:22:16 +08:00
Peter Steinberger
4232126bba
chore: update dependencies across workspace ( #115677 )
...
* chore(deps): update dependencies
* fix(deps): restore CI compatibility
2026-07-29 05:16:42 -04:00
Dallin Romney
0723c68b57
refactor(qa): remove execution sharding ( #115787 )
2026-07-29 17:06:57 +08:00
Peter Steinberger
302f262e6b
refactor: deduplicate extension normalization primitives ( #115650 )
...
* refactor(plugins): reuse SDK normalization primitives
* fix(ci): repair code-mode matrix checks
* fix(ci): satisfy code-mode matrix gates
* fix(ci): use matrix evidence export
* fix(ci): validate matrix evidence artifact
2026-07-29 04:10:06 -04:00
Peter Steinberger
8ad4e858fd
fix(ci): repair red main — align QA evidence timeout guard, drop stale code-mode symbols
...
The qa-profile-evidence timeout was deliberately raised to 90m (28e09a04d3 )
without its workflow guard; code-mode-repair.ts grew a local copy of
CodeModeFailurePhase stranding the runtime re-export, and the matrix test
kept an unused validateQaEvidenceSummaryJson import.
2026-07-29 00:48:09 -07:00
Peter Steinberger
6ec84bc3bd
fix(models): expose custom max and ultra reasoning tiers ( #115690 )
...
* fix(models): honor custom advanced reasoning levels
* fix(ci): restore code mode matrix boundaries
2026-07-29 03:33:30 -04:00
Vincent Koc
e31dc59250
fix(ui): clarify model picker state labels ( #115632 )
2026-07-29 15:25:47 +08:00
Dallin Romney
f027d7bcf6
refactor(qa): make Matrix sharding execution-owned ( #115589 )
...
* refactor(qa): make sharding execution-owned
* test(qa): simplify transport selection coverage
2026-07-29 15:23:37 +08:00
Vincent Koc
9daa60961c
fix(agents): serialize sandbox provisioning ( #115645 )
...
* fix(agents): serialize sandbox provisioning
* test(docker): add sandbox browser sidecar e2e
* fix(ci): register sandbox browser e2e entrypoint
* fix(ci): restore code mode matrix checks
2026-07-29 14:50:15 +08:00
wm0018
a1d31204f1
fix(gateway): drain root work continuations before direct-stop process exit ( #105848 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-29 14:28:14 +08:00
Peter Steinberger
ddd0b48673
refactor: remove 3,527 lines of runtime and test duplication ( #115626 )
...
* refactor: remove obsolete runtime and test duplication
* test: preserve typed cron and realtime fixtures
2026-07-29 02:21:20 -04:00
Vincent Koc
1c36054494
feat(agents): add code mode model acceptance matrix ( #115305 )
...
* feat(agents): add code mode model acceptance matrix
* fix(qa): emit canonical Code Mode matrix evidence
* fix(qa): reserve code mode matrix output safely
* fix(qa): require fresh matrix builds
* fix(qa): protect matrix evidence paths
2026-07-29 14:12:20 +08:00
Dallin Romney
2fa91f48d0
fix(ci): validate frozen release candidates ( #115605 )
...
* fix(ci): support historical i18n targets
* test(ci): cover historical i18n verification
2026-07-29 13:43:39 +08:00
Dallin Romney
aca7b59526
refactor: make Telegram release workflow tests behavioral ( #114023 )
...
* refactor: make Telegram release workflow tests behavioral
* test: fix Telegram release workflow CI
2026-07-29 13:23:35 +08:00