---
title: "v2026.8.1: Maintenance changes (part 4 of 8)"
description: "Part 4 of the 6,016 routine maintenance changes in OpenClaw v2026.8.1, with a source link for each one."
---

Maintenance changes 2,257 to 3,008 of 6,016. See [Maintainer and Internal Changes](/releases/2026.8.1/maintainer-and-internal-changes) for the other categories and the remaining parts.

<details class="release-source-toggle">
<summary>Sources and complete change list</summary>

**Maintenance**

- Accept complete core tarball manifests in release validation [#112813](https://github.com/openclaw/openclaw/pull/112813)
- Bound the Matrix thread QA scenario [#112815](https://github.com/openclaw/openclaw/pull/112815)
- Move sidebar attention into a reactive controller [#112817](https://github.com/openclaw/openclaw/pull/112817)
- Add a bounded exact-head PR CI watcher [#112821](https://github.com/openclaw/openclaw/pull/112821)
- Correct WhatsApp QA coverage ownership [#112834](https://github.com/openclaw/openclaw/pull/112834)
- Align Matrix QA coverage with executed behavior [#112837](https://github.com/openclaw/openclaw/pull/112837)
- Unify QA Lab dashboard run planning [#112838](https://github.com/openclaw/openclaw/pull/112838)
- Reuse unavailable channel credentials across QA partitions [#112840](https://github.com/openclaw/openclaw/pull/112840)
- Let release validation honor frozen candidate contracts [#112841](https://github.com/openclaw/openclaw/pull/112841)
- Clarify the saved validation attempt for extended-stable publishing [#112845](https://github.com/openclaw/openclaw/pull/112845)
- Move Telegram and iMessage config schemas into their plugins [#112850](https://github.com/openclaw/openclaw/pull/112850)
- Move sidebar session data into one reactive controller [#112853](https://github.com/openclaw/openclaw/pull/112853)
- Gate OpenClawKit tests for frozen CI targets [#112860](https://github.com/openclaw/openclaw/pull/112860)
- Consolidate QA Lab mock OpenAI fixtures [#112872](https://github.com/openclaw/openclaw/pull/112872)
- Split the Google Meet API client from reporting logic [#112873](https://github.com/openclaw/openclaw/pull/112873)
- Run frozen Telegram release candidates without pnpm [#112874](https://github.com/openclaw/openclaw/pull/112874)
- Remove an orphaned secret-provider proof harness [#112875](https://github.com/openclaw/openclaw/pull/112875)
- Consolidate Gateway agent-event test fixtures [#112878](https://github.com/openclaw/openclaw/pull/112878)
- Consolidate diagnostics OTEL service test fixtures [#112879](https://github.com/openclaw/openclaw/pull/112879)
- Ratchet Control UI startup size checks against a committed baseline [#112880](https://github.com/openclaw/openclaw/pull/112880)
- Consolidate Active Memory recall test fixtures [#112881](https://github.com/openclaw/openclaw/pull/112881)
- Fully redact media live-test credentials [#112883](https://github.com/openclaw/openclaw/pull/112883)
- Consolidate Feishu bot test fixtures [#112884](https://github.com/openclaw/openclaw/pull/112884)
- Consolidate QMD manager test fixtures [#112885](https://github.com/openclaw/openclaw/pull/112885)
- Clear embedding test watchdog timers [#112887](https://github.com/openclaw/openclaw/pull/112887)
- Consolidate live model-switch test fixtures [#112891](https://github.com/openclaw/openclaw/pull/112891)
- Consolidate duplicated script workflow test fixtures [#112892](https://github.com/openclaw/openclaw/pull/112892)
- Consolidate Telegram bot test fixtures [#112894](https://github.com/openclaw/openclaw/pull/112894)
- Consolidate Workboard controller test fixtures [#112897](https://github.com/openclaw/openclaw/pull/112897)
- Validate candidate external plugins before publication [#112899](https://github.com/openclaw/openclaw/pull/112899)
- Share Teams and Zoom meeting-browser status adapters [#112900](https://github.com/openclaw/openclaw/pull/112900)
- Split the Google Meet plugin entry into focused modules [#112903](https://github.com/openclaw/openclaw/pull/112903)
- Deduplicate embedded-agent compaction preparation [#112904](https://github.com/openclaw/openclaw/pull/112904)
- Unify Control UI gateway connection state [#112909](https://github.com/openclaw/openclaw/pull/112909)
- Replace prompt-marker image parsing with structured media facts [#112913](https://github.com/openclaw/openclaw/pull/112913)
- Remove unused tools and deprecated SDK exports [#112915](https://github.com/openclaw/openclaw/pull/112915)
- Clean shared state after cron tests [#112922](https://github.com/openclaw/openclaw/pull/112922)
- Consolidate Control UI sidebar organization and lazy-load mutations [#112923](https://github.com/openclaw/openclaw/pull/112923)
- Share the Teams and Zoom Chrome meeting transport [#112931](https://github.com/openclaw/openclaw/pull/112931)
- Allow isolated Telegram release QA to launch its private CLI [#112935](https://github.com/openclaw/openclaw/pull/112935)
- Split the Google Meet CLI into focused modules [#112937](https://github.com/openclaw/openclaw/pull/112937)
- Move Control UI sidebar menus into a controller [#112940](https://github.com/openclaw/openclaw/pull/112940)
- Remove expired plugin compatibility records [#112944](https://github.com/openclaw/openclaw/pull/112944)
- Remove a plugin lifecycle lease test race [#112959](https://github.com/openclaw/openclaw/pull/112959)
- Migrate supported dependency contracts [#112963](https://github.com/openclaw/openclaw/pull/112963)
- Collapse Control UI sidebar inheritance to three classes [#112969](https://github.com/openclaw/openclaw/pull/112969)
- Table-drive Discord voice manager scenarios [#112977](https://github.com/openclaw/openclaw/pull/112977)
- Clean up plugin loader test fixtures [#112981](https://github.com/openclaw/openclaw/pull/112981)
- Add shared markdown capability fallback foundations [#112985](https://github.com/openclaw/openclaw/pull/112985)
- Share meeting runtime probes and node wrappers [#112992](https://github.com/openclaw/openclaw/pull/112992)
- Consolidate gateway reload-handler test fixtures [#112993](https://github.com/openclaw/openclaw/pull/112993)
- Distinguish CI queue bottlenecks before tuning capacity [#112997](https://github.com/openclaw/openclaw/pull/112997)
- Reuse the shared Code Mode JSON sanitizer [#112999](https://github.com/openclaw/openclaw/pull/112999)
- Formalize Markdown capabilities for three channels [#113002](https://github.com/openclaw/openclaw/pull/113002)
- Consolidate repeated update CLI test fixtures [#113003](https://github.com/openclaw/openclaw/pull/113003)
- Clean cron test SQLite stores after each case [#113004](https://github.com/openclaw/openclaw/pull/113004)
- Share Teams and Zoom meeting plugin registration [#113007](https://github.com/openclaw/openclaw/pull/113007)
- Split the Control UI markdown renderer into focused modules [#113015](https://github.com/openclaw/openclaw/pull/113015)
- Split the Control UI config renderer into focused modules [#113016](https://github.com/openclaw/openclaw/pull/113016)
- Split the browser panel into focused UI modules [#113017](https://github.com/openclaw/openclaw/pull/113017)
- Split the Control UI terminal panel into owned modules [#113020](https://github.com/openclaw/openclaw/pull/113020)
- Prune retired plugin compatibility records [#113025](https://github.com/openclaw/openclaw/pull/113025)
- Split setup inference into lifecycle modules [#113028](https://github.com/openclaw/openclaw/pull/113028)
- Deduplicate the cloud worker dispatch test harness [#113040](https://github.com/openclaw/openclaw/pull/113040)
- Remove legacy parallel media fields from the runtime [#113042](https://github.com/openclaw/openclaw/pull/113042)
- Split exec-approval services into focused modules [#113050](https://github.com/openclaw/openclaw/pull/113050)
- Split WebChat send logic into owned modules [#113052](https://github.com/openclaw/openclaw/pull/113052)
- Close delivery-queue SQLite test fixtures [#113058](https://github.com/openclaw/openclaw/pull/113058)
- Deduplicate Codex turn-watch test scenarios [#113061](https://github.com/openclaw/openclaw/pull/113061)
- Isolate TLS pin-clearing tests from live operator storage [#113067](https://github.com/openclaw/openclaw/pull/113067)
- Restructure per-agent session storage ownership [#113071](https://github.com/openclaw/openclaw/pull/113071)
- Split the reply agent runner into focused modules [#113072](https://github.com/openclaw/openclaw/pull/113072)
- Close session-test SQLite handles before fixture cleanup [#113074](https://github.com/openclaw/openclaw/pull/113074)
- Collapse the retired JSON session store into migration support [#113075](https://github.com/openclaw/openclaw/pull/113075)
- Deduplicate Codex run-attempt test scenarios [#113076](https://github.com/openclaw/openclaw/pull/113076)
- Update Android Gradle Plugin and Kotest patch releases [#113083](https://github.com/openclaw/openclaw/pull/113083)
- Split outbound delivery into focused services [#113099](https://github.com/openclaw/openclaw/pull/113099)
- Deduplicate Telegram bot-construction tests [#113102](https://github.com/openclaw/openclaw/pull/113102)
- Honor frozen candidate pnpm pins in Telegram QA [#113110](https://github.com/openclaw/openclaw/pull/113110)
- Split the Chrome MCP lifecycle into focused modules [#113114](https://github.com/openclaw/openclaw/pull/113114)
- feat(matrix): intelligent multi-agent communication via fast AI-guided participation control and fresh-message redrafting [#113115](https://github.com/openclaw/openclaw/pull/113115)
- Deduplicate Telegram polling-session tests [#113117](https://github.com/openclaw/openclaw/pull/113117)
- Split Gateway session utilities into focused modules [#113118](https://github.com/openclaw/openclaw/pull/113118)
- Move Signal formatting fallbacks into the shared capability pipeline [#113120](https://github.com/openclaw/openclaw/pull/113120)
- Split Gateway plugin startup planning into focused modules [#113129](https://github.com/openclaw/openclaw/pull/113129)
- Restore authorized Discord voice E2E coverage [#113132](https://github.com/openclaw/openclaw/pull/113132)
- Split the Cron timer lifecycle into focused modules [#113141](https://github.com/openclaw/openclaw/pull/113141)
- Rebuild stale sticky dependency snapshots [#113142](https://github.com/openclaw/openclaw/pull/113142)
- Split auto-reply dispatch into explicit phases [#113154](https://github.com/openclaw/openclaw/pull/113154)
- Rebuild stale sticky CI modules before snapshot refresh [#113155](https://github.com/openclaw/openclaw/pull/113155)
- Unify Gateway chat-run lifecycle state [#113157](https://github.com/openclaw/openclaw/pull/113157)
- Prepare stable agent runtime metadata once [#113167](https://github.com/openclaw/openclaw/pull/113167)
- Give sticky clean rebuilds enough time to finish [#113175](https://github.com/openclaw/openclaw/pull/113175)
- Canonicalize embedded attempt terminal outcomes [#113201](https://github.com/openclaw/openclaw/pull/113201)
- Preserve the planned iOS build number during release upload [#113202](https://github.com/openclaw/openclaw/pull/113202)
- Centralize TTS provider attempt handling [#113212](https://github.com/openclaw/openclaw/pull/113212)
- Split Telegram outbound sending into focused modules [#113222](https://github.com/openclaw/openclaw/pull/113222)
- Split memory-core short-term promotion into focused modules [#113223](https://github.com/openclaw/openclaw/pull/113223)
- Expose one shared Browser error-coercion helper [#113229](https://github.com/openclaw/openclaw/pull/113229)
- Stop superseded CI runs from causing false failures [#113230](https://github.com/openclaw/openclaw/pull/113230)
- Remove the file-era transcript runtime [#113233](https://github.com/openclaw/openclaw/pull/113233)
- Remove redundant async model-resolution opt-ins [#113234](https://github.com/openclaw/openclaw/pull/113234)
- Consolidate Gateway chat and reload test fixtures [#113235](https://github.com/openclaw/openclaw/pull/113235)
- Harden changed checks and shorthand test filters [#113236](https://github.com/openclaw/openclaw/pull/113236)
- Extract the Tool Search code-mode child controller [#113237](https://github.com/openclaw/openclaw/pull/113237)
- Consolidate outbound delivery test fixtures [#113238](https://github.com/openclaw/openclaw/pull/113238)
- Reduce task registry test duplication [#113239](https://github.com/openclaw/openclaw/pull/113239)
- Consolidate bundled MCP runner adapters [#113240](https://github.com/openclaw/openclaw/pull/113240)
- Retire the stale-cancelled CI watcher verdict [#113242](https://github.com/openclaw/openclaw/pull/113242)
- Consolidate plugin update test fixtures [#113243](https://github.com/openclaw/openclaw/pull/113243)
- Consolidate Control UI chat test fixtures [#113245](https://github.com/openclaw/openclaw/pull/113245)
- Consolidate Codex app-server test fixtures [#113246](https://github.com/openclaw/openclaw/pull/113246)
- Split subagent registry cleanup machinery [#113247](https://github.com/openclaw/openclaw/pull/113247)
- Split the config CLI implementation without changing behavior [#113248](https://github.com/openclaw/openclaw/pull/113248)
- Consolidate reply-session test fixtures [#113250](https://github.com/openclaw/openclaw/pull/113250)
- Unify channel formatting capability declarations [#113254](https://github.com/openclaw/openclaw/pull/113254)
- Consolidate Google Meet plugin test fixtures [#113256](https://github.com/openclaw/openclaw/pull/113256)
- Remove the duplicate QA report renderer [#113258](https://github.com/openclaw/openclaw/pull/113258)
- Centralize shared policy matching and value lookup [#113260](https://github.com/openclaw/openclaw/pull/113260)
- Centralize gateway approval request delivery [#113268](https://github.com/openclaw/openclaw/pull/113268)
- Split the Matrix inbound handler into owned phases [#113269](https://github.com/openclaw/openclaw/pull/113269)
- Centralize positive environment-integer parsing [#113277](https://github.com/openclaw/openclaw/pull/113277)
- Reuse shared account enablement in Feishu [#113278](https://github.com/openclaw/openclaw/pull/113278)
- Split task registry internals into focused modules [#113279](https://github.com/openclaw/openclaw/pull/113279)
- Centralize daemon environment-source lookup [#113283](https://github.com/openclaw/openclaw/pull/113283)
- Reuse shared trimmed-list normalization helpers [#113295](https://github.com/openclaw/openclaw/pull/113295)
- Split Tool Search internals into owned modules [#113296](https://github.com/openclaw/openclaw/pull/113296)
- Split subagent registry internals into focused modules [#113297](https://github.com/openclaw/openclaw/pull/113297)
- Remove the dead LanceDB legacy-path scan [#113299](https://github.com/openclaw/openclaw/pull/113299)
- Restore the exec-approval lint gate [#113303](https://github.com/openclaw/openclaw/pull/113303)
- Release SQLite fixtures before Windows cleanup [#113316](https://github.com/openclaw/openclaw/pull/113316)
- Repair Microsoft Teams packaging and Docker rerun recovery [#113332](https://github.com/openclaw/openclaw/pull/113332)
- Restore shared runtime state after tests [#113334](https://github.com/openclaw/openclaw/pull/113334)
- Split Codex command handlers into focused modules [#113335](https://github.com/openclaw/openclaw/pull/113335)
- Prevent macOS tests from reaching live Gateway and SSH processes [#113337](https://github.com/openclaw/openclaw/pull/113337)
- Split the Control UI chat composer into focused modules [#113338](https://github.com/openclaw/openclaw/pull/113338)
- Restore real timers after memory-host tests [#113339](https://github.com/openclaw/openclaw/pull/113339)
- Clean up exec-approval test directories automatically [#113342](https://github.com/openclaw/openclaw/pull/113342)
- Restore stdin TTY state after wizard tests [#113345](https://github.com/openclaw/openclaw/pull/113345)
- Clean live-updater test fixtures after each test [#113348](https://github.com/openclaw/openclaw/pull/113348)
- Validate external plugin dependencies independently [#113350](https://github.com/openclaw/openclaw/pull/113350)
- Split the Control UI chat message renderer [#113363](https://github.com/openclaw/openclaw/pull/113363)
- Restore the plugin environment-surface ratchet [#113364](https://github.com/openclaw/openclaw/pull/113364)
- Align extension prerelease fixtures with current contracts [#113381](https://github.com/openclaw/openclaw/pull/113381)
- Accept elapsed Google Meet browser-action timeout budgets [#113384](https://github.com/openclaw/openclaw/pull/113384)
- Keep action pin annotations stable and exact [#113386](https://github.com/openclaw/openclaw/pull/113386)
- Stabilize Google Meet release-validation tests [#113387](https://github.com/openclaw/openclaw/pull/113387)
- Make every PR CI sweeper decision visible [#113397](https://github.com/openclaw/openclaw/pull/113397)
- Separate QA provider plans from runtime tool calls [#113399](https://github.com/openclaw/openclaw/pull/113399)
- Split the Control UI chat pane into focused modules [#113406](https://github.com/openclaw/openclaw/pull/113406)
- Update Codex steering abort test for canonical terminal outcomes [#113416](https://github.com/openclaw/openclaw/pull/113416)
- Track the sessions_spawn QA coverage gap accurately [#113420](https://github.com/openclaw/openclaw/pull/113420)
- Lock in Codex replies after retained-session reset [#113429](https://github.com/openclaw/openclaw/pull/113429)
- Let QA Gateways finish graceful shutdown before restart [#113439](https://github.com/openclaw/openclaw/pull/113439)
- Capture trajectory-only runtime tools in QA parity checks [#113452](https://github.com/openclaw/openclaw/pull/113452)
- Restore Workboard SQLite cleanup test coverage [#113457](https://github.com/openclaw/openclaw/pull/113457)
- Stabilize session-cost cache refresh tests [#113460](https://github.com/openclaw/openclaw/pull/113460)
- Capture QA runtime tool evidence across multiple sessions [#113461](https://github.com/openclaw/openclaw/pull/113461)
- Correct Slack and Discord QA coverage attribution [#113468](https://github.com/openclaw/openclaw/pull/113468)
- Centralize published model-catalog ownership [#113472](https://github.com/openclaw/openclaw/pull/113472)
- Retain completed runtime-tool evidence in QA parity checks [#113484](https://github.com/openclaw/openclaw/pull/113484)
- Correct QA coverage attribution for channel and subagent scenarios [#113486](https://github.com/openclaw/openclaw/pull/113486)
- Read persisted media facts before legacy projections [#113496](https://github.com/openclaw/openclaw/pull/113496)
- Add abrupt-writer crash proof to SQLite reliability tests [#113498](https://github.com/openclaw/openclaw/pull/113498)
- Require persisted tool results in runtime parity QA [#113499](https://github.com/openclaw/openclaw/pull/113499)
- Require successful result evidence in runtime-tool QA [#113502](https://github.com/openclaw/openclaw/pull/113502)
- Prove SQLite snapshot publication recovery after interruption [#113512](https://github.com/openclaw/openclaw/pull/113512)
- Prove SQLite recovery from an interrupted VACUUM [#113518](https://github.com/openclaw/openclaw/pull/113518)
- Update the production environment-variable ratchet [#113519](https://github.com/openclaw/openclaw/pull/113519)
- Share setup migration config canonicalization [#113522](https://github.com/openclaw/openclaw/pull/113522)
- Centralize plugin provider alias resolution [#113523](https://github.com/openclaw/openclaw/pull/113523)
- Reuse the shared Markdown code-span formatter [#113525](https://github.com/openclaw/openclaw/pull/113525)
- Align Telegram QA coverage with product startup behavior [#113527](https://github.com/openclaw/openclaw/pull/113527)
- Share the Anthropic Vertex catalog runtime [#113528](https://github.com/openclaw/openclaw/pull/113528)
- Reuse canonical error coercion across package runtimes [#113529](https://github.com/openclaw/openclaw/pull/113529)
- Add crash-boundary proof for SQLite restores [#113531](https://github.com/openclaw/openclaw/pull/113531)
- Remove resolved investigation scripts and orphaned Code Mode seams [#113532](https://github.com/openclaw/openclaw/pull/113532)
- Consolidate duplicated micro helpers onto canonical owners [#113534](https://github.com/openclaw/openclaw/pull/113534)
- Deduplicate channel and test infrastructure [#113535](https://github.com/openclaw/openclaw/pull/113535)
- Consolidate Codex migration ownership [#113536](https://github.com/openclaw/openclaw/pull/113536)
- Unify subagent delivery evidence and routing [#113538](https://github.com/openclaw/openclaw/pull/113538)
- Share plugin doctor key-move migration logic [#113539](https://github.com/openclaw/openclaw/pull/113539)
- Share Feishu stages and Telegram send bookkeeping [#113541](https://github.com/openclaw/openclaw/pull/113541)
- Split retained Memory Core migrations into focused modules [#113542](https://github.com/openclaw/openclaw/pull/113542)
- Lock Discord and Feishu Markdown output contracts [#113543](https://github.com/openclaw/openclaw/pull/113543)
- Reuse shared error coercion in Signal [#113544](https://github.com/openclaw/openclaw/pull/113544)
- Split Codex app-server configuration into focused modules [#113552](https://github.com/openclaw/openclaw/pull/113552)
- Add process-crash proof for SQLite snapshot repositories [#113555](https://github.com/openclaw/openclaw/pull/113555)
- Consolidate generated-media byte limit handling [#113556](https://github.com/openclaw/openclaw/pull/113556)
- Split Gateway reload handling into focused modules [#113557](https://github.com/openclaw/openclaw/pull/113557)
- Split the OpenAI Responses transport into focused modules [#113569](https://github.com/openclaw/openclaw/pull/113569)
- Stage heartbeat runner orchestration [#113570](https://github.com/openclaw/openclaw/pull/113570)
- Consolidate the Telegram bot test harness [#113571](https://github.com/openclaw/openclaw/pull/113571)
- Deduplicate plugin doctor install test fixtures [#113572](https://github.com/openclaw/openclaw/pull/113572)
- Deduplicate Google Meet browser test scenarios [#113573](https://github.com/openclaw/openclaw/pull/113573)
- Consolidate Slack and QMD test matrices [#113574](https://github.com/openclaw/openclaw/pull/113574)
- Consolidate isolated test-state fixtures [#113576](https://github.com/openclaw/openclaw/pull/113576)
- Reuse shared error coercion across Slack monitoring paths [#113581](https://github.com/openclaw/openclaw/pull/113581)
- Consolidate follow-up and channel sanitizer tests [#113583](https://github.com/openclaw/openclaw/pull/113583)
- Split the Playwright session manager into focused modules [#113585](https://github.com/openclaw/openclaw/pull/113585)
- Reuse shared Matrix error coercion [#113586](https://github.com/openclaw/openclaw/pull/113586)
- Telegram probes reuse shared error coercion [#113589](https://github.com/openclaw/openclaw/pull/113589)
- Share primary and fallback model-reference flattening [#113591](https://github.com/openclaw/openclaw/pull/113591)
- Share cron diagnostic summary normalization [#113595](https://github.com/openclaw/openclaw/pull/113595)
- Unify outbound audit history projection [#113597](https://github.com/openclaw/openclaw/pull/113597)
- Validate complete package sets in candidate smoke tests [#113600](https://github.com/openclaw/openclaw/pull/113600)
- Split Slack message dispatch into focused modules [#113602](https://github.com/openclaw/openclaw/pull/113602)
- Share legacy config migration traversal [#113604](https://github.com/openclaw/openclaw/pull/113604)
- Stop Slack QA observer polling after scenarios finish [#113605](https://github.com/openclaw/openclaw/pull/113605)
- Share Discord handle normalization across lookup and mentions [#113608](https://github.com/openclaw/openclaw/pull/113608)
- Centralize the gateway no-op reload-plan check [#113610](https://github.com/openclaw/openclaw/pull/113610)
- Restore packaged OpenWebUI and update validation [#113614](https://github.com/openclaw/openclaw/pull/113614)
- Centralize Workboard claim-token redaction [#113618](https://github.com/openclaw/openclaw/pull/113618)
- Prove interrupted SQLite index-repair recovery [#113624](https://github.com/openclaw/openclaw/pull/113624)
- Split the native hook relay into focused internal modules [#113626](https://github.com/openclaw/openclaw/pull/113626)
- Use shared string normalization in Matrix [#113627](https://github.com/openclaw/openclaw/pull/113627)
- Keep release validation compatible with frozen candidates [#113628](https://github.com/openclaw/openclaw/pull/113628)
- Show redacted packaged-plugin failure diagnostics [#113635](https://github.com/openclaw/openclaw/pull/113635)
- Share bounded-cache insertion across Matrix monitors [#113636](https://github.com/openclaw/openclaw/pull/113636)
- Repair stale QA scenario references [#113639](https://github.com/openclaw/openclaw/pull/113639)
- Run QA channel message flows on both supported drivers [#113642](https://github.com/openclaw/openclaw/pull/113642)
- Consolidate Control UI reactive lifecycle controllers [#113647](https://github.com/openclaw/openclaw/pull/113647)
- Centralize merged channel-ingress lifecycle handling [#113648](https://github.com/openclaw/openclaw/pull/113648)
- Deduplicate shared Control UI helpers and contracts [#113649](https://github.com/openclaw/openclaw/pull/113649)
- Slim workflow guard tests while retaining release authorization checks [#113650](https://github.com/openclaw/openclaw/pull/113650)
- Stage live-test auth profiles from SQLite [#113651](https://github.com/openclaw/openclaw/pull/113651)
- Make SQLite reliability proofs cross-platform safe [#113652](https://github.com/openclaw/openclaw/pull/113652)
- Restore session turn-ordering QA coverage [#113653](https://github.com/openclaw/openclaw/pull/113653)
- Compact JSON in commitment prompts [#113657](https://github.com/openclaw/openclaw/pull/113657)
- Split the QMD memory manager by domain [#113659](https://github.com/openclaw/openclaw/pull/113659)
- Split the Matrix CLI into focused command modules [#113664](https://github.com/openclaw/openclaw/pull/113664)
- Split the heartbeat runner into focused modules [#113668](https://github.com/openclaw/openclaw/pull/113668)
- Split Code Mode execution into owned modules [#113669](https://github.com/openclaw/openclaw/pull/113669)
- Split session cost and usage accounting into focused modules [#113670](https://github.com/openclaw/openclaw/pull/113670)
- Add a repository-owned continuous Auto QA workflow [#113674](https://github.com/openclaw/openclaw/pull/113674)
- Simplify the native hook relay module split [#113675](https://github.com/openclaw/openclaw/pull/113675)
- Stabilize the macOS onboarding progress test [#113682](https://github.com/openclaw/openclaw/pull/113682)
- Split main-session restart recovery into focused modules [#113687](https://github.com/openclaw/openclaw/pull/113687)
- QA suite summaries include skipped scenarios [#113696](https://github.com/openclaw/openclaw/pull/113696)
- Report live channel QA evidence from the selected driver [#113710](https://github.com/openclaw/openclaw/pull/113710)
- Split the subagent registry lifecycle into focused modules [#113711](https://github.com/openclaw/openclaw/pull/113711)
- Split configuration validation into focused modules [#113713](https://github.com/openclaw/openclaw/pull/113713)
- Split Control UI chat-thread projection into focused modules [#113714](https://github.com/openclaw/openclaw/pull/113714)
- Split the Control UI config view into focused modules [#113715](https://github.com/openclaw/openclaw/pull/113715)
- Split the CLI runner execution path into focused modules [#113716](https://github.com/openclaw/openclaw/pull/113716)
- Split legacy model migrations into focused modules [#113717](https://github.com/openclaw/openclaw/pull/113717)
- Split plugin manifest normalization into focused modules [#113720](https://github.com/openclaw/openclaw/pull/113720)
- Split the Gateway server by lifecycle ownership [#113725](https://github.com/openclaw/openclaw/pull/113725)
- Coordinate Auto QA around root-cause campaigns [#113727](https://github.com/openclaw/openclaw/pull/113727)
- Restore sanitized Crabbox PR validation [#113728](https://github.com/openclaw/openclaw/pull/113728)
- Split the Workboard view into focused modules [#113730](https://github.com/openclaw/openclaw/pull/113730)
- Extract reusable wizard step controls [#113733](https://github.com/openclaw/openclaw/pull/113733)
- Build one attachment message and project image markers at routing [#113738](https://github.com/openclaw/openclaw/pull/113738)
- Allow release preparation to fingerprint large generated diffs [#113760](https://github.com/openclaw/openclaw/pull/113760)
- Validate bundled provider catalogs in Doctor CI [#113761](https://github.com/openclaw/openclaw/pull/113761)
- Split Playwright interaction internals into focused modules [#113771](https://github.com/openclaw/openclaw/pull/113771)
- Split the LanceDB memory plugin entry into focused modules [#113772](https://github.com/openclaw/openclaw/pull/113772)
- Split the Mattermost inbound monitor by responsibility [#113775](https://github.com/openclaw/openclaw/pull/113775)
- Split configured-plugin Doctor repair into focused modules [#113777](https://github.com/openclaw/openclaw/pull/113777)
- Split embedded session-lock lifecycle into focused modules [#113779](https://github.com/openclaw/openclaw/pull/113779)
- Split Control UI chat state into focused modules [#113780](https://github.com/openclaw/openclaw/pull/113780)
- Tighten Windows Task Scheduler module ownership [#113783](https://github.com/openclaw/openclaw/pull/113783)
- Split embedded model resolution into concern-owned modules [#113785](https://github.com/openclaw/openclaw/pull/113785)
- Split the ClawHub lifecycle implementation into focused modules [#113789](https://github.com/openclaw/openclaw/pull/113789)
- Split model authentication into focused ownership modules [#113793](https://github.com/openclaw/openclaw/pull/113793)
- Centralize provider onboarding defaults in model manifests [#113794](https://github.com/openclaw/openclaw/pull/113794)
- Restore beta mention and performance validation gates [#113795](https://github.com/openclaw/openclaw/pull/113795)
- Split the gateway chat display projection [#113806](https://github.com/openclaw/openclaw/pull/113806)
- Split the agent exec pipeline into focused modules [#113807](https://github.com/openclaw/openclaw/pull/113807)
- Split Matrix SDK client responsibilities [#113815](https://github.com/openclaw/openclaw/pull/113815)
- Wait for terminal replies before session-switch tests [#113818](https://github.com/openclaw/openclaw/pull/113818)
- Update agent-deletion smoke checks for canonical config [#113827](https://github.com/openclaw/openclaw/pull/113827)
- Split cron service operations into focused modules [#113830](https://github.com/openclaw/openclaw/pull/113830)
- Split Gateway node methods into focused modules [#113832](https://github.com/openclaw/openclaw/pull/113832)
- Make QA fail-fast stop all suite runners [#113843](https://github.com/openclaw/openclaw/pull/113843)
- Serialize concurrent QA channel driver lifecycle changes [#113855](https://github.com/openclaw/openclaw/pull/113855)
- Prevent package installs from deleting the Control UI [#113856](https://github.com/openclaw/openclaw/pull/113856)
- Repair offline npm Control UI postinstall fixtures [#113871](https://github.com/openclaw/openclaw/pull/113871)
- Prevent QA transport cleanup races [#113874](https://github.com/openclaw/openclaw/pull/113874)
- Split model fallback responsibilities into focused modules [#113876](https://github.com/openclaw/openclaw/pull/113876)
- Repair plugin prerelease validation fixtures [#113877](https://github.com/openclaw/openclaw/pull/113877)
- Unify manifest model rows and provider defaults [#113879](https://github.com/openclaw/openclaw/pull/113879)
- Split the direct compaction pipeline into owned phases [#113880](https://github.com/openclaw/openclaw/pull/113880)
- Split reply-run orchestration into reviewable stages [#113881](https://github.com/openclaw/openclaw/pull/113881)
- Split the pre-tool execution pipeline into focused modules [#113885](https://github.com/openclaw/openclaw/pull/113885)
- Finish splitting the exec pipeline support code [#113889](https://github.com/openclaw/openclaw/pull/113889)
- Preserve QA message delivery across restarts [#113899](https://github.com/openclaw/openclaw/pull/113899)
- Install trusted dependencies for artifact package validation [#113907](https://github.com/openclaw/openclaw/pull/113907)
- Add a weekly sweep for dated maintenance commitments [#113914](https://github.com/openclaw/openclaw/pull/113914)
- Update diagnostic capture tests for current configuration [#113922](https://github.com/openclaw/openclaw/pull/113922)
- Share media reference access resolution across agent tools [#113931](https://github.com/openclaw/openclaw/pull/113931)
- Split Windows scheduled-task service internals [#113934](https://github.com/openclaw/openclaw/pull/113934)
- Align the Kimi K3 release-validation fixture [#113936](https://github.com/openclaw/openclaw/pull/113936)
- Split Doctor health-flow ownership into focused modules [#113937](https://github.com/openclaw/openclaw/pull/113937)
- Unify provider forward-compat model resolution [#113940](https://github.com/openclaw/openclaw/pull/113940)
- Split gateway protocol exports into focused registries [#113941](https://github.com/openclaw/openclaw/pull/113941)
- Align sidebar browser coverage with current navigation [#113942](https://github.com/openclaw/openclaw/pull/113942)
- Separate Memory Core ingestion codec ownership [#113949](https://github.com/openclaw/openclaw/pull/113949)
- Centralize inline stroke defaults for Control UI icons [#113952](https://github.com/openclaw/openclaw/pull/113952)
- Stabilize Codex realtime lease validation in shared test processes [#113962](https://github.com/openclaw/openclaw/pull/113962)
- Remove plugin IDs from harness-task ownership checks [#113964](https://github.com/openclaw/openclaw/pull/113964)
- Split the Talk realtime relay into focused owners [#113967](https://github.com/openclaw/openclaw/pull/113967)
- Centralize restart-recovery state snapshots [#113969](https://github.com/openclaw/openclaw/pull/113969)
- Converge Google Meet probes on the shared meeting adapter [#113970](https://github.com/openclaw/openclaw/pull/113970)
- Add CSS linting for Control UI styles and Lit templates [#113971](https://github.com/openclaw/openclaw/pull/113971)
- Split the private QA Lab suite runner [#113974](https://github.com/openclaw/openclaw/pull/113974)
- Centralize conversation registry scope resolution [#113977](https://github.com/openclaw/openclaw/pull/113977)
- Split ACP spawn helpers into focused modules [#113979](https://github.com/openclaw/openclaw/pull/113979)
- Centralize provider plugin alias matching [#113982](https://github.com/openclaw/openclaw/pull/113982)
- Remove unused agent-scope helper exports [#113985](https://github.com/openclaw/openclaw/pull/113985)
- Stabilize the Control UI session-menu end-to-end test [#113989](https://github.com/openclaw/openclaw/pull/113989)
- Extract and batch session PR landing checks [#114000](https://github.com/openclaw/openclaw/pull/114000)
- Track dated plugin compatibility debt and pending removals [#114002](https://github.com/openclaw/openclaw/pull/114002)
- Restore ClawHub CLI materialization on npm 12 [#114008](https://github.com/openclaw/openclaw/pull/114008)
- Split the Memory Core CLI runtime into focused modules [#114013](https://github.com/openclaw/openclaw/pull/114013)
- Allow frozen release candidates to stage Telegram QA artifacts [#114018](https://github.com/openclaw/openclaw/pull/114018)
- Make Telegram release QA tests behavioral [#114023](https://github.com/openclaw/openclaw/pull/114023)
- Isolate live tests from invalid host configuration [#114024](https://github.com/openclaw/openclaw/pull/114024)
- Pass the Telegram release scratch directory into isolation [#114026](https://github.com/openclaw/openclaw/pull/114026)
- Split the direct subagent-spawn implementation [#114030](https://github.com/openclaw/openclaw/pull/114030)
- Split the Copilot attempt runtime into focused lifecycle modules [#114035](https://github.com/openclaw/openclaw/pull/114035)
- Include terminal output in TUI fixture timeouts [#114045](https://github.com/openclaw/openclaw/pull/114045)
- Make QA scenario selection taxonomy-owned [#114055](https://github.com/openclaw/openclaw/pull/114055)
- Restore accurate beta runtime release gates [#114064](https://github.com/openclaw/openclaw/pull/114064)
- Validate releases that predate the npm-lock gate [#114073](https://github.com/openclaw/openclaw/pull/114073)
- Make subagent fanout QA wait for durable completion [#114080](https://github.com/openclaw/openclaw/pull/114080)
- Repair Memory Core async-search synchronization test [#114096](https://github.com/openclaw/openclaw/pull/114096)
- Retain release-validation refs after failed runs [#114104](https://github.com/openclaw/openclaw/pull/114104)
- Use the trusted release harness pnpm pin [#114106](https://github.com/openclaw/openclaw/pull/114106)
- Correct QA gateway config readiness checks [#114112](https://github.com/openclaw/openclaw/pull/114112)
- Stop npm lock fork packaging loops [#114115](https://github.com/openclaw/openclaw/pull/114115)
- Keep conflicting npm lockfile forks pinned during plugin packaging [#114122](https://github.com/openclaw/openclaw/pull/114122)
- Select supported macOS snapshots for candidate testing [#114144](https://github.com/openclaw/openclaw/pull/114144)
- Make Windows Parallels prerequisite setup deterministic [#114153](https://github.com/openclaw/openclaw/pull/114153)
- Select the newest Windows smoke snapshot [#114157](https://github.com/openclaw/openclaw/pull/114157)
- Repair Home run-indicator lifecycle E2E coverage [#114212](https://github.com/openclaw/openclaw/pull/114212)
- Isolate database-verifier test cleanup [#114216](https://github.com/openclaw/openclaw/pull/114216)
- Prevent auth migration-isolation CI timeouts [#114217](https://github.com/openclaw/openclaw/pull/114217)
- Remove stale dependency-ownership records [#114218](https://github.com/openclaw/openclaw/pull/114218)
- Share reply recovery and turn accounting boundaries [#114220](https://github.com/openclaw/openclaw/pull/114220)
- Share Anthropic and OpenAI admin usage aggregation [#114221](https://github.com/openclaw/openclaw/pull/114221)
- Fall back locally when Blacksmith never runs changed checks [#114225](https://github.com/openclaw/openclaw/pull/114225)
- Separate config write-preparation helpers by responsibility [#114228](https://github.com/openclaw/openclaw/pull/114228)
- Centralize meeting talk-back readiness policy [#114229](https://github.com/openclaw/openclaw/pull/114229)
- Freeze the private OpenAI Responses stream parity baseline [#114230](https://github.com/openclaw/openclaw/pull/114230)
- Clarify the provider request-parameter routing classifier [#114231](https://github.com/openclaw/openclaw/pull/114231)
- Reuse the shared Volcengine compatibility patcher [#114232](https://github.com/openclaw/openclaw/pull/114232)
- Consolidate IRC outbound delivery through one adapter [#114235](https://github.com/openclaw/openclaw/pull/114235)
- Restore the macOS Tauri companion build for Quick Chat [#114243](https://github.com/openclaw/openclaw/pull/114243)
- Make the mock Control UI approval modal opt-in [#114246](https://github.com/openclaw/openclaw/pull/114246)
- Add Cron fixtures to the Control UI mock server [#114248](https://github.com/openclaw/openclaw/pull/114248)
- Add regression coverage for session agent-scope label synchronization [#114259](https://github.com/openclaw/openclaw/pull/114259)
- Run the companion Rust suite on Linux and macOS [#114260](https://github.com/openclaw/openclaw/pull/114260)
- Remove duplicate plugin route lookups after lazy loading [#114273](https://github.com/openclaw/openclaw/pull/114273)
- Unify Slack and Microsoft Teams account setup adapters [#114290](https://github.com/openclaw/openclaw/pull/114290)
- Consolidate single-consumer subagent-spawn helpers [#114301](https://github.com/openclaw/openclaw/pull/114301)
- Add CI and release operations guidance for agents [#114307](https://github.com/openclaw/openclaw/pull/114307)
- Centralize embedded-agent terminal outcome handling [#114310](https://github.com/openclaw/openclaw/pull/114310)
- Consolidate subagent lifecycle regression tests [#114326](https://github.com/openclaw/openclaw/pull/114326)
- Streamline Slack transport regression tests [#114329](https://github.com/openclaw/openclaw/pull/114329)
- Consolidate channel and auto-reply test setup [#114330](https://github.com/openclaw/openclaw/pull/114330)
- Derive bundled provider registrations from plugin manifests [#114331](https://github.com/openclaw/openclaw/pull/114331)
- Consolidate configuration write regression tests [#114332](https://github.com/openclaw/openclaw/pull/114332)
- Consolidate plugin planning and provider stream tests [#114333](https://github.com/openclaw/openclaw/pull/114333)
- Consolidate duplicated CLI regression-test fixtures [#114334](https://github.com/openclaw/openclaw/pull/114334)
- Consolidate Control UI chat regression tests [#114335](https://github.com/openclaw/openclaw/pull/114335)
- Consolidate provider streaming contract tests [#114336](https://github.com/openclaw/openclaw/pull/114336)
- Consolidate Gateway chat regression tests [#114337](https://github.com/openclaw/openclaw/pull/114337)
- Consolidate agent subscription event test fixtures [#114339](https://github.com/openclaw/openclaw/pull/114339)
- Use CI-measured bytes for Control UI budget baselines [#114340](https://github.com/openclaw/openclaw/pull/114340)
- Intended to surface Linux manual update results [#114341](https://github.com/openclaw/openclaw/pull/114341)
- Consolidate plugin update regression fixtures [#114344](https://github.com/openclaw/openclaw/pull/114344)
- Consolidate auto-reply routing regression tests [#114345](https://github.com/openclaw/openclaw/pull/114345)
- Consolidate configuration-write regression fixtures [#114347](https://github.com/openclaw/openclaw/pull/114347)
- Consolidate Workboard regression-test fixtures [#114348](https://github.com/openclaw/openclaw/pull/114348)
- Consolidate CLI regression tests without changing behavior [#114349](https://github.com/openclaw/openclaw/pull/114349)
- Consolidate provider contract-test fixtures and cases [#114352](https://github.com/openclaw/openclaw/pull/114352)
- Centralize gateway validation and shared helpers [#114353](https://github.com/openclaw/openclaw/pull/114353)
- Consolidate agent runtime ownership and remove retired fallbacks [#114355](https://github.com/openclaw/openclaw/pull/114355)
- Consolidate OpenAI and Azure Responses transport execution [#114357](https://github.com/openclaw/openclaw/pull/114357)
- Verify stale bug reports before closure [#114365](https://github.com/openclaw/openclaw/pull/114365)
- Speed up measured CI test hotspots [#114367](https://github.com/openclaw/openclaw/pull/114367)
- Make Gateway reload restarts transactional [#114368](https://github.com/openclaw/openclaw/pull/114368)
- Make release acceptance checks portable on stock macOS [#114371](https://github.com/openclaw/openclaw/pull/114371)
- Run required Testbox checks when drafts become ready [#114372](https://github.com/openclaw/openclaw/pull/114372)
- Make TUI session-rollover tests deterministic [#114373](https://github.com/openclaw/openclaw/pull/114373)
- Expand model-catalog normalization regression coverage [#114384](https://github.com/openclaw/openclaw/pull/114384)
- Split oversized cron modules and rename regression suites [#114391](https://github.com/openclaw/openclaw/pull/114391)
- Stabilize beta validation and SHA-helper completion [#114396](https://github.com/openclaw/openclaw/pull/114396)
- Detect missing bundled providers after npm install [#114400](https://github.com/openclaw/openclaw/pull/114400)
- Consolidate gateway RPC test scenarios [#114404](https://github.com/openclaw/openclaw/pull/114404)
- Consolidate Control UI regression-test fixtures [#114408](https://github.com/openclaw/openclaw/pull/114408)
- Consolidate duplicated channel and auto-reply test fixtures [#114409](https://github.com/openclaw/openclaw/pull/114409)
- Consolidate plugin security and install regression fixtures [#114410](https://github.com/openclaw/openclaw/pull/114410)
- Consolidate CLI regression test fixtures [#114411](https://github.com/openclaw/openclaw/pull/114411)
- Publish gauntlet child process IDs atomically [#114418](https://github.com/openclaw/openclaw/pull/114418)
- Consolidate Gateway test fixtures [#114420](https://github.com/openclaw/openclaw/pull/114420)
- Consolidate Discord, Matrix, and Slack regression fixtures [#114423](https://github.com/openclaw/openclaw/pull/114423)
- Consolidate provider contract test fixtures [#114424](https://github.com/openclaw/openclaw/pull/114424)
- Consolidate agent lifecycle regression fixtures [#114425](https://github.com/openclaw/openclaw/pull/114425)
- Consolidate configuration regression tests [#114426](https://github.com/openclaw/openclaw/pull/114426)
- Consolidate duplicated CLI test fixtures [#114427](https://github.com/openclaw/openclaw/pull/114427)
- Consolidate Discord, Matrix, and Slack policy regression tests [#114428](https://github.com/openclaw/openclaw/pull/114428)
- Harden Mantis Telegram desktop proof collection [#114429](https://github.com/openclaw/openclaw/pull/114429)
- Consolidate inbound and reply test fixtures [#114430](https://github.com/openclaw/openclaw/pull/114430)
- Consolidate duplicate protocol, updater, setup, plugin, and Talk internals [#114432](https://github.com/openclaw/openclaw/pull/114432)
- Consolidate Gateway chat-history test fixtures [#114435](https://github.com/openclaw/openclaw/pull/114435)
- Derive agent file listings from the canonical workspace set [#114436](https://github.com/openclaw/openclaw/pull/114436)
- Batch Docker maturity scenarios through the aggregate scheduler [#114447](https://github.com/openclaw/openclaw/pull/114447)
- Restore live Gateway model verification [#114451](https://github.com/openclaw/openclaw/pull/114451)
- Update macOS Swift dependencies [#114452](https://github.com/openclaw/openclaw/pull/114452)
- Cache parsed SQLite session entries between reads [#114453](https://github.com/openclaw/openclaw/pull/114453)
- Consolidate configuration regression fixtures [#114459](https://github.com/openclaw/openclaw/pull/114459)
- Consolidate Discord, Matrix, and Slack regression tests [#114464](https://github.com/openclaw/openclaw/pull/114464)
- Isolate Mantis candidate execution [#114465](https://github.com/openclaw/openclaw/pull/114465)
- Align plugin metadata tests with explicit lifecycle resets [#114469](https://github.com/openclaw/openclaw/pull/114469)
- Consolidate Bedrock and Google provider test fixtures [#114475](https://github.com/openclaw/openclaw/pull/114475)
- Restore Anthropic Gateway verification and SQLite test cleanup [#114495](https://github.com/openclaw/openclaw/pull/114495)
- Keep bundled-plugin package verification complete [#114497](https://github.com/openclaw/openclaw/pull/114497)
- Consolidate outbound delivery regression-test fixtures [#114509](https://github.com/openclaw/openclaw/pull/114509)
- Consolidate Anthropic regression-test fixtures [#114511](https://github.com/openclaw/openclaw/pull/114511)
- Consolidate CLI route argument fixtures [#114513](https://github.com/openclaw/openclaw/pull/114513)
- Consolidate gateway send and restart recovery test fixtures [#114515](https://github.com/openclaw/openclaw/pull/114515)
- Make Vitest module resolution work under Bun [#114520](https://github.com/openclaw/openclaw/pull/114520)
- Isolate Telegram tests for reliable release validation [#114532](https://github.com/openclaw/openclaw/pull/114532)
- Update the Google Meet descriptor contract test [#114562](https://github.com/openclaw/openclaw/pull/114562)
- Run native SQLite runtime/config tests in forked workers [#114567](https://github.com/openclaw/openclaw/pull/114567)
- Make compact-terminal TUI approval tests reliable [#114571](https://github.com/openclaw/openclaw/pull/114571)
- Update the Browser CLI descriptor test for machine output [#114581](https://github.com/openclaw/openclaw/pull/114581)
- Build skill snapshot cache keys only when needed [#114584](https://github.com/openclaw/openclaw/pull/114584)
- Remove two load-dependent Control UI test flakes [#114585](https://github.com/openclaw/openclaw/pull/114585)
- Unify queued follow-up turns with the canonical agent runner [#114599](https://github.com/openclaw/openclaw/pull/114599)
- Restore the web-fetch prerelease validation gate [#114607](https://github.com/openclaw/openclaw/pull/114607)
- Remove loopback Codex proxy support [#114616](https://github.com/openclaw/openclaw/pull/114616)
- Align bundled plugin lock generation with shallow installs [#114620](https://github.com/openclaw/openclaw/pull/114620)
- Compact plugin SDK alias metadata without contract changes [#114666](https://github.com/openclaw/openclaw/pull/114666)
- Keep tracked QA harness gaps advisory [#114667](https://github.com/openclaw/openclaw/pull/114667)
- Consolidate compatible provider replay policies [#114669](https://github.com/openclaw/openclaw/pull/114669)
- Consolidate Android and iOS lifecycle transitions [#114671](https://github.com/openclaw/openclaw/pull/114671)
- Stabilize wrapped-terminal TUI regression tests [#114672](https://github.com/openclaw/openclaw/pull/114672)
- Repair browser CDP Docker fixture validation [#114691](https://github.com/openclaw/openclaw/pull/114691)
- Add pinned opt-in auto-merge for verified behind PRs [#114702](https://github.com/openclaw/openclaw/pull/114702)
- Validate frozen beta runtime-pair evidence with a trusted checker [#114707](https://github.com/openclaw/openclaw/pull/114707)
- Centralize agent tool-visibility predicates [#114720](https://github.com/openclaw/openclaw/pull/114720)
- Deflake Workboard lazy-load and dialog tests [#114722](https://github.com/openclaw/openclaw/pull/114722)
- Contain PR landing mutations in dedicated worktrees [#114723](https://github.com/openclaw/openclaw/pull/114723)
- Remove dead re-export facades after owner-module splits [#114726](https://github.com/openclaw/openclaw/pull/114726)
- Preserve Unicode in fragmented TUI test input [#114728](https://github.com/openclaw/openclaw/pull/114728)
- Centralize live-session model selection contracts [#114739](https://github.com/openclaw/openclaw/pull/114739)
- Simplify channel settings with a shared advanced tier [#114741](https://github.com/openclaw/openclaw/pull/114741)
- Prevent gateway test timer livelock in CI [#114751](https://github.com/openclaw/openclaw/pull/114751)
- Consolidate Mattermost planning and WhatsApp durable admission [#114763](https://github.com/openclaw/openclaw/pull/114763)
- Consolidate DM-policy tests and retire dead package facades [#114776](https://github.com/openclaw/openclaw/pull/114776)
- Unblock production type checks after sessions-yield cleanup [#114787](https://github.com/openclaw/openclaw/pull/114787)
- Exclude automation accounts from changelog credit [#114788](https://github.com/openclaw/openclaw/pull/114788)
- Align active-memory tests with canonical delivery records [#114806](https://github.com/openclaw/openclaw/pull/114806)
- Make ripgrep a consistent prerequisite for the PR landing tool [#114809](https://github.com/openclaw/openclaw/pull/114809)
- Preserve canonical agent termination and fallback decisions [#114810](https://github.com/openclaw/openclaw/pull/114810)
- Split the gateway protocol registry into owner fragments [#114817](https://github.com/openclaw/openclaw/pull/114817)
- Derive cloud-worker metadata from canonical Zod fields [#114818](https://github.com/openclaw/openclaw/pull/114818)
- Deflake Telegram credential process-tree timeout tests [#114821](https://github.com/openclaw/openclaw/pull/114821)
- Account for flushLogger in deprecated SDK surface budgets [#114827](https://github.com/openclaw/openclaw/pull/114827)
- Isolate native Codex QA sandboxing from production policy [#114830](https://github.com/openclaw/openclaw/pull/114830)
- Accept corrected beta runtime evidence without widening QA gaps [#114838](https://github.com/openclaw/openclaw/pull/114838)
- Guard delegated plugin alias authorization order [#114870](https://github.com/openclaw/openclaw/pull/114870)
- Split oversized Control UI end-to-end test suites [#114889](https://github.com/openclaw/openclaw/pull/114889)
- Bind PR review artifacts to the reviewed commit [#114897](https://github.com/openclaw/openclaw/pull/114897)
- Isolate CLI process tests from shared test shards [#114903](https://github.com/openclaw/openclaw/pull/114903)
- Prevent duplicate replies on the QA bus [#114910](https://github.com/openclaw/openclaw/pull/114910)
- Stabilize Workboard dashboard lifecycle tests [#114921](https://github.com/openclaw/openclaw/pull/114921)
- Centralize durable delivery queue routing metadata [#114928](https://github.com/openclaw/openclaw/pull/114928)
- Unify provider stream wrapper composition [#114929](https://github.com/openclaw/openclaw/pull/114929)
- Stabilize board ticket-refresh timing tests [#114930](https://github.com/openclaw/openclaw/pull/114930)
- Reuse prepared channel action discovery [#114942](https://github.com/openclaw/openclaw/pull/114942)
- Let release review tests run on GitHub-hosted Ubuntu [#114958](https://github.com/openclaw/openclaw/pull/114958)
- Localize Control UI chat and accessibility labels [#114990](https://github.com/openclaw/openclaw/pull/114990)
- Deduplicate auto-reply command context rewrites [#115002](https://github.com/openclaw/openclaw/pull/115002)
- Refresh the generated config baseline [#115003](https://github.com/openclaw/openclaw/pull/115003)
- Prevent embedded-agent release-validation stalls [#115019](https://github.com/openclaw/openclaw/pull/115019)
- Refresh native localization source offsets [#115024](https://github.com/openclaw/openclaw/pull/115024)
- Filter unsupported QA profile channels [#115026](https://github.com/openclaw/openclaw/pull/115026)
- Prevent cold fork runners from timing out the embedded-agent shard [#115035](https://github.com/openclaw/openclaw/pull/115035)
- Remove a dead provider-runtime test reset [#115043](https://github.com/openclaw/openclaw/pull/115043)
- Retry only the failed QA Lab channel partition [#115046](https://github.com/openclaw/openclaw/pull/115046)
- Remove an unused Wear OS voice-button component [#115061](https://github.com/openclaw/openclaw/pull/115061)
- Share Control UI board provider helpers [#115082](https://github.com/openclaw/openclaw/pull/115082)
- Exclude incompatible channel scenarios from QA plans [#115087](https://github.com/openclaw/openclaw/pull/115087)
- Restore Android CodeQL compatibility with Kotlin 2.4.0 [#115095](https://github.com/openclaw/openclaw/pull/115095)
- Deduplicate Google Meet OAuth option resolution [#115096](https://github.com/openclaw/openclaw/pull/115096)
- Clear completed Discord Activity launch watchdogs [#115100](https://github.com/openclaw/openclaw/pull/115100)
- Consolidate Plugin SDK HTML escaping [#115109](https://github.com/openclaw/openclaw/pull/115109)
- Materialize complete PR worktrees before preparation gates [#115120](https://github.com/openclaw/openclaw/pull/115120)
- Standardize Control UI async read lifecycles with Lit Task [#115131](https://github.com/openclaw/openclaw/pull/115131)
- Stop synthetic model transport tests from stalling CI [#115139](https://github.com/openclaw/openclaw/pull/115139)
- Accept tracked advisory gaps in runtime-pair validation [#115140](https://github.com/openclaw/openclaw/pull/115140)
- Align release-validation fixtures with current contracts [#115146](https://github.com/openclaw/openclaw/pull/115146)
- Compare the environment-variable ratchet at the branch fork [#115149](https://github.com/openclaw/openclaw/pull/115149)
- Align the QMD alias privacy fixture with canonical session identity [#115150](https://github.com/openclaw/openclaw/pull/115150)
- Run release-harness installs from the harness directory [#115172](https://github.com/openclaw/openclaw/pull/115172)
- Isolate Workboard mock URL state between UI tests [#115173](https://github.com/openclaw/openclaw/pull/115173)
- Reject packages missing the Code Mode worker [#115178](https://github.com/openclaw/openclaw/pull/115178)
- Make Control UI working-timer E2E tests deterministic [#115187](https://github.com/openclaw/openclaw/pull/115187)
- Unify tool-surface planning across agent harnesses [#115189](https://github.com/openclaw/openclaw/pull/115189)
- Simplify Control UI Workboard execution helpers [#115195](https://github.com/openclaw/openclaw/pull/115195)
- Stabilize hidden-reasoning idle-timeout coverage [#115196](https://github.com/openclaw/openclaw/pull/115196)
- Reuse cached file metadata for small PR reviews [#115199](https://github.com/openclaw/openclaw/pull/115199)
- Make Control UI virtual-clock tests deterministic [#115203](https://github.com/openclaw/openclaw/pull/115203)
- Match shared models across aggregator catalogs [#115210](https://github.com/openclaw/openclaw/pull/115210)
- Simplify embedded client-tool catalog selection [#115212](https://github.com/openclaw/openclaw/pull/115212)
- Derive Control UI page routes from one table [#115214](https://github.com/openclaw/openclaw/pull/115214)
- Isolate legacy transcript fixtures from production sessions [#115231](https://github.com/openclaw/openclaw/pull/115231)
- Route focused agent tests to their isolated harnesses [#115241](https://github.com/openclaw/openclaw/pull/115241)
- Bound Telegram Mantis proof cleanup and restore artifact access [#115253](https://github.com/openclaw/openclaw/pull/115253)
- De-flake Codex turn-watch timing tests [#115258](https://github.com/openclaw/openclaw/pull/115258)
- Make the audit checkpoint rehash fixture deterministic [#115269](https://github.com/openclaw/openclaw/pull/115269)
- Stabilize Signal archive-limit tests [#115270](https://github.com/openclaw/openclaw/pull/115270)
- Standardize Control UI read lifecycles with Lit Task [#115274](https://github.com/openclaw/openclaw/pull/115274)
- Support frozen targets in Matrix release QA [#115298](https://github.com/openclaw/openclaw/pull/115298)
- Consolidate internal session-entry state [#115299](https://github.com/openclaw/openclaw/pull/115299)
- Stabilize Control UI end-to-end route readiness [#115320](https://github.com/openclaw/openclaw/pull/115320)
- Release SQLite statement caches when databases close [#115321](https://github.com/openclaw/openclaw/pull/115321)
- Keep changed-file lint checks targeted [#115322](https://github.com/openclaw/openclaw/pull/115322)
- Catch dead exports and identify drifted PR wrappers [#115333](https://github.com/openclaw/openclaw/pull/115333)
- Centralize agent test ownership and timeout routing [#115340](https://github.com/openclaw/openclaw/pull/115340)
- Stop CI sweeper from reviving superseded workflows [#115378](https://github.com/openclaw/openclaw/pull/115378)
- Unify CLI process cancellation and terminal state [#115416](https://github.com/openclaw/openclaw/pull/115416)
- Consolidate Gateway cron shutdown ownership [#115417](https://github.com/openclaw/openclaw/pull/115417)
- Remove obsolete node approval execution paths [#115418](https://github.com/openclaw/openclaw/pull/115418)
- Harden review workflow revival provenance [#115420](https://github.com/openclaw/openclaw/pull/115420)
- Prevent Gateway startup-log CI hangs [#115428](https://github.com/openclaw/openclaw/pull/115428)
- Remove retired session identity from memory fixtures [#115442](https://github.com/openclaw/openclaw/pull/115442)
- Restore Telegram media tests with production-like bot identity [#115444](https://github.com/openclaw/openclaw/pull/115444)
- Validate QA profiles against the scenario inventory [#115446](https://github.com/openclaw/openclaw/pull/115446)
- Split Code Mode tests into focused suites [#115462](https://github.com/openclaw/openclaw/pull/115462)
- Consolidate duplicate runtime, plugin, transcript, and chat paths [#115483](https://github.com/openclaw/openclaw/pull/115483)
- Stabilize Workboard form-state E2E timing [#115496](https://github.com/openclaw/openclaw/pull/115496)
- Preserve Android generated lint suppressions [#115501](https://github.com/openclaw/openclaw/pull/115501)
- Consolidate dashboard widget pinning paths [#115504](https://github.com/openclaw/openclaw/pull/115504)
- Reuse prepared model facts across warm agent turns [#115527](https://github.com/openclaw/openclaw/pull/115527)
- Remove duplicate provider and runtime implementations [#115529](https://github.com/openclaw/openclaw/pull/115529)
- Expand QA profile scenarios across every eligible channel [#115540](https://github.com/openclaw/openclaw/pull/115540)
- Unify interactive and non-interactive Ollama onboarding [#115543](https://github.com/openclaw/openclaw/pull/115543)
- Make Matrix QA sharding execution-owned [#115589](https://github.com/openclaw/openclaw/pull/115589)
- Support historical targets in Control UI i18n validation [#115605](https://github.com/openclaw/openclaw/pull/115605)
- Deduplicate gateway message routing logic [#115615](https://github.com/openclaw/openclaw/pull/115615)
- Table-drive retired model migrations [#115618](https://github.com/openclaw/openclaw/pull/115618)
- Consolidate chat media and outbox lifecycle ownership [#115621](https://github.com/openclaw/openclaw/pull/115621)
- Reuse shared durability helpers in the TOOLS.md migration [#115625](https://github.com/openclaw/openclaw/pull/115625)
- Consolidate duplicated runtime decisions and regression fixtures [#115626](https://github.com/openclaw/openclaw/pull/115626)
- Centralize trusted CLI backend authentication policy [#115633](https://github.com/openclaw/openclaw/pull/115633)
- Enforce canonical subagent state in SQLite [#115634](https://github.com/openclaw/openclaw/pull/115634)
- Verify paired-node Ollama through a real Gateway [#115644](https://github.com/openclaw/openclaw/pull/115644)
- Deduplicate extension normalization helpers [#115650](https://github.com/openclaw/openclaw/pull/115650)
- Stabilize cross-version dev upgrades [#115651](https://github.com/openclaw/openclaw/pull/115651)
- Restore Telegram release QA scratch access [#115659](https://github.com/openclaw/openclaw/pull/115659)
- Type the Code Mode matrix rejection callback [#115674](https://github.com/openclaw/openclaw/pull/115674)
- Update dependencies across the OpenClaw workspace [#115677](https://github.com/openclaw/openclaw/pull/115677)
- Add browser regression coverage for imported Claude history redaction [#115683](https://github.com/openclaw/openclaw/pull/115683)
- Deduplicate model-fallback observation metadata [#115687](https://github.com/openclaw/openclaw/pull/115687)
- Stabilize paired-node Ollama E2E under cold starts [#115693](https://github.com/openclaw/openclaw/pull/115693)
- Bound remote Testbox agentic and extension worker lifetimes [#115696](https://github.com/openclaw/openclaw/pull/115696)
- Consolidate memory CLI and promotion lifecycle helpers [#115706](https://github.com/openclaw/openclaw/pull/115706)
- Consolidate Teams and Zoom meeting plugin shells [#115707](https://github.com/openclaw/openclaw/pull/115707)
- Centralize channel streaming configuration hints [#115739](https://github.com/openclaw/openclaw/pull/115739)
- Use canonical Matrix E2EE state in QA scenarios [#115748](https://github.com/openclaw/openclaw/pull/115748)
- Unify JSONL and SQLite session-cost rollup scans [#115749](https://github.com/openclaw/openclaw/pull/115749)
- Consolidate live-channel QA scenario execution [#115752](https://github.com/openclaw/openclaw/pull/115752)
- Keep live-transport QA on runnable scenarios and requested models [#115767](https://github.com/openclaw/openclaw/pull/115767)
- Remove temporary Matrix QA execution sharding [#115787](https://github.com/openclaw/openclaw/pull/115787)
- Isolate Skill Workshop draft ingestion and validation [#115791](https://github.com/openclaw/openclaw/pull/115791)
- Centralize durable channel ingress lifecycle helpers [#115792](https://github.com/openclaw/openclaw/pull/115792)
- Make Swift protocol checks non-mutating [#115793](https://github.com/openclaw/openclaw/pull/115793)
- Stabilize CI checkout and Testbox preparation [#115795](https://github.com/openclaw/openclaw/pull/115795)
- Restore shared Slack live QA scenarios [#115802](https://github.com/openclaw/openclaw/pull/115802)
- Split WhatsApp inbound monitoring into focused owners [#115806](https://github.com/openclaw/openclaw/pull/115806)
- Reuse canonical record guards [#115810](https://github.com/openclaw/openclaw/pull/115810)
- Consolidate Teams and Zoom meeting runtime facades [#115819](https://github.com/openclaw/openclaw/pull/115819)
- Make OpenAI realtime voice lifecycle explicit [#115820](https://github.com/openclaw/openclaw/pull/115820)
- Decompose the Microsoft Teams inbound handler [#115823](https://github.com/openclaw/openclaw/pull/115823)
- Share channel ingress retention defaults [#115824](https://github.com/openclaw/openclaw/pull/115824)
- Move health snapshot collection under gateway ownership [#115825](https://github.com/openclaw/openclaw/pull/115825)
- Move status summary preparation to its domain owner [#115839](https://github.com/openclaw/openclaw/pull/115839)
- Clarify review-premise and cross-lane test policy [#115841](https://github.com/openclaw/openclaw/pull/115841)
- Refresh generated Control UI translations [#115843](https://github.com/openclaw/openclaw/pull/115843)
- Separate WhatsApp inbound transport state [#115844](https://github.com/openclaw/openclaw/pull/115844)
- Isolate CLI unknown-command tests from bundled plugin discovery [#115848](https://github.com/openclaw/openclaw/pull/115848)
- Isolate registry-sensitive Control UI tests [#115860](https://github.com/openclaw/openclaw/pull/115860)
- Correct Plugin SDK compatibility removal metadata [#115862](https://github.com/openclaw/openclaw/pull/115862)
- Restore isolated memory manager tests [#115880](https://github.com/openclaw/openclaw/pull/115880)
- Accept decreasing video-generation test deadlines [#115883](https://github.com/openclaw/openclaw/pull/115883)
- Align the QA Lab bootstrap profile catalog test [#115898](https://github.com/openclaw/openclaw/pull/115898)
- Stabilize Codex plugin-discovery deadline testing [#115927](https://github.com/openclaw/openclaw/pull/115927)
- Prevent logging listener leaks in shared Vitest workers [#115929](https://github.com/openclaw/openclaw/pull/115929)
- Run Gmail watcher shutdown integration on Unix [#115937](https://github.com/openclaw/openclaw/pull/115937)
- Make CLI process-test hangs diagnosable [#115940](https://github.com/openclaw/openclaw/pull/115940)
- Require the complete fleet-doctor healthy check set [#115946](https://github.com/openclaw/openclaw/pull/115946)
- Reuse canonical record guards across agent and tooling paths [#115951](https://github.com/openclaw/openclaw/pull/115951)
- Align the environment-variable CI ratchet with cleanup [#115958](https://github.com/openclaw/openclaw/pull/115958)
- Remove redundant runtime and test code [#115961](https://github.com/openclaw/openclaw/pull/115961)
- Exercise least-privilege voice-node Talk reconnects [#115966](https://github.com/openclaw/openclaw/pull/115966)
- Move channel account mutations behind owner APIs [#115970](https://github.com/openclaw/openclaw/pull/115970)
- Keep auth logout TTY tests portable [#115985](https://github.com/openclaw/openclaw/pull/115985)
- Keep plugin install test fixtures portable [#116008](https://github.com/openclaw/openclaw/pull/116008)
- Remove the retired Codex CLI JSONL parser [#116017](https://github.com/openclaw/openclaw/pull/116017)
- Update the memory sidecar startup test expectation [#116018](https://github.com/openclaw/openclaw/pull/116018)
- Bound declaration-build memory on smaller Linux hosts [#116021](https://github.com/openclaw/openclaw/pull/116021)
- Stop cross-file state leaks in media tests [#116027](https://github.com/openclaw/openclaw/pull/116027)
- Reuse the Gateway server-methods lazy import [#116060](https://github.com/openclaw/openclaw/pull/116060)
- Stabilize beta validation fixtures and QA selection [#116065](https://github.com/openclaw/openclaw/pull/116065)
- Stabilize warm-session Matrix tool-progress QA [#116066](https://github.com/openclaw/openclaw/pull/116066)
- Prevent state leakage in Matrix live validation [#116071](https://github.com/openclaw/openclaw/pull/116071)
- Isolate ACP startup test output streams [#116076](https://github.com/openclaw/openclaw/pull/116076)
- Add opt-in threaded Buzz QA coverage [#116081](https://github.com/openclaw/openclaw/pull/116081)
- Remove retired Control UI time-format bootstrap state [#116097](https://github.com/openclaw/openclaw/pull/116097)
- Cover per-account hook replay isolation [#116121](https://github.com/openclaw/openclaw/pull/116121)
- Calibrate defaults and security review doctrine [#116126](https://github.com/openclaw/openclaw/pull/116126)
- Serialize hosted macOS Swift validation runs [#116137](https://github.com/openclaw/openclaw/pull/116137)
- Stop collecting the Vydra helper as an empty test suite [#116139](https://github.com/openclaw/openclaw/pull/116139)
- Rebuild stale extension boundary declarations in CI [#116147](https://github.com/openclaw/openclaw/pull/116147)
- Stop the Google batch timeout test from leaking requests [#116161](https://github.com/openclaw/openclaw/pull/116161)
- Serialize hosted macOS Swift release tests [#116167](https://github.com/openclaw/openclaw/pull/116167)
- Restore the doctor install-switch release scenario [#116190](https://github.com/openclaw/openclaw/pull/116190)
- Serialize transcript mirror test setup [#116207](https://github.com/openclaw/openclaw/pull/116207)
- Align doctor-switch E2E with service ownership [#116209](https://github.com/openclaw/openclaw/pull/116209)
- Repair release scanning for reviewed Codex runtime chunks [#116212](https://github.com/openclaw/openclaw/pull/116212)
- Refresh generated native app locales [#116213](https://github.com/openclaw/openclaw/pull/116213)
- Use the OS account home in doctor release proof [#116217](https://github.com/openclaw/openclaw/pull/116217)
- Recognize asynchronous image completions in the QA mock provider [#116234](https://github.com/openclaw/openclaw/pull/116234)
- Let the trusted Telegram QA runner stage runtime files [#116252](https://github.com/openclaw/openclaw/pull/116252)
- Align release harness service-account state [#116254](https://github.com/openclaw/openclaw/pull/116254)
- Apply the default service identity after each doctor-switch flow setup [#116265](https://github.com/openclaw/openclaw/pull/116265)
- Accept one verified Telegram QA runtime launch [#116267](https://github.com/openclaw/openclaw/pull/116267)
- Restore iOS Release archives under Swift 6.3 [#116270](https://github.com/openclaw/openclaw/pull/116270)
- Load the trusted Node shard runner without repeated repository fetches [#116273](https://github.com/openclaw/openclaw/pull/116273)
- Clean stale outputs before npm preflight cache restore [#116276](https://github.com/openclaw/openclaw/pull/116276)
- Tag mock Responses preambles as commentary [#116283](https://github.com/openclaw/openclaw/pull/116283)
- Preserve failed Vitest shard diagnostics [#116289](https://github.com/openclaw/openclaw/pull/116289)
- Add a live Buzz channel QA lane [#116298](https://github.com/openclaw/openclaw/pull/116298)
- Use the trusted harness for update-restart validation [#116301](https://github.com/openclaw/openclaw/pull/116301)
- Allow one frozen Telegram candidate to use legacy QA evidence [#116305](https://github.com/openclaw/openclaw/pull/116305)
- Restore subagent announce-loop guard coverage [#116307](https://github.com/openclaw/openclaw/pull/116307)
- Prevent Slack QA observer teardown hangs [#116312](https://github.com/openclaw/openclaw/pull/116312)
- Make Kova startup performance reports actionable [#116319](https://github.com/openclaw/openclaw/pull/116319)
- Pass the target SHA to Telegram evidence finalization [#116331](https://github.com/openclaw/openclaw/pull/116331)
- Make release-validation fail-fast optional [#116352](https://github.com/openclaw/openclaw/pull/116352)
- Keep frozen release validation tied to candidate evidence [#116357](https://github.com/openclaw/openclaw/pull/116357)
- Prevent Slack QA cleanup from stalling completed profile runs [#116361](https://github.com/openclaw/openclaw/pull/116361)
- Align Discord progress receipt timing tests [#116377](https://github.com/openclaw/openclaw/pull/116377)
- Remove the redundant extension boundary test wrapper [#116385](https://github.com/openclaw/openclaw/pull/116385)
- Evaluate Comfy live-test guards after configuration loads [#116388](https://github.com/openclaw/openclaw/pull/116388)
- Remove a false-green Reef live smoke test [#116393](https://github.com/openclaw/openclaw/pull/116393)
- Run browser copilot end-to-end tests in required CI [#116407](https://github.com/openclaw/openclaw/pull/116407)
- Reduce repeated macOS Gateway endpoint reads [#116421](https://github.com/openclaw/openclaw/pull/116421)
- Preserve unavailable Ollama cache telemetry in QA [#116424](https://github.com/openclaw/openclaw/pull/116424)
- Exercise late iOS pairing cleanup during gateway forget [#116425](https://github.com/openclaw/openclaw/pull/116425)
- Accept legacy zero-skipped runtime summaries [#116429](https://github.com/openclaw/openclaw/pull/116429)
- Bound QA Gateway diagnostic-log teardown [#116431](https://github.com/openclaw/openclaw/pull/116431)
- Skip unavailable Docker scripts for frozen release candidates [#116432](https://github.com/openclaw/openclaw/pull/116432)
- Restore OpenAI auth for Matrix live-frontier QA [#116434](https://github.com/openclaw/openclaw/pull/116434)
- Rebalance embedded-agent configs across compact CI shards [#116436](https://github.com/openclaw/openclaw/pull/116436)
- Fix fanout and Codex watchdog QA scenarios [#116440](https://github.com/openclaw/openclaw/pull/116440)
- Run the built plugin-tools server in QA profiles [#116442](https://github.com/openclaw/openclaw/pull/116442)
- Avoid false tool failures from fetched prose [#116444](https://github.com/openclaw/openclaw/pull/116444)
- Align Slack progress QA with fresh final messages [#116445](https://github.com/openclaw/openclaw/pull/116445)
- Make the Slack fallback QA probe deterministic [#116447](https://github.com/openclaw/openclaw/pull/116447)
- Tolerate loaded-runner QA bus delivery stalls [#116448](https://github.com/openclaw/openclaw/pull/116448)
- Run MXC Windows-only suites in Windows CI [#116451](https://github.com/openclaw/openclaw/pull/116451)
- Reset Matrix streaming state between QA scenarios [#116454](https://github.com/openclaw/openclaw/pull/116454)
- Add repeated OpenAI Realtime audio roundtrip verification [#116456](https://github.com/openclaw/openclaw/pull/116456)
- Reuse the macOS Tailscale discovery session [#116465](https://github.com/openclaw/openclaw/pull/116465)
- Refresh the Matrix QA homeserver fixture [#116467](https://github.com/openclaw/openclaw/pull/116467)
- Run exec-script preflight coverage in Windows CI [#116469](https://github.com/openclaw/openclaw/pull/116469)
- Stabilize Apple UI validation across supported runtimes [#116487](https://github.com/openclaw/openclaw/pull/116487)
- Run exec allowlist matcher coverage on Windows [#116492](https://github.com/openclaw/openclaw/pull/116492)
- Run safe-removal race coverage in Windows CI [#116510](https://github.com/openclaw/openclaw/pull/116510)
- Refresh generated Android locale resources [#116567](https://github.com/openclaw/openclaw/pull/116567)
- Preserve Matrix crypto identity during QA fault injection [#116578](https://github.com/openclaw/openclaw/pull/116578)
- Extend OpenAI live-profile setup budget [#116580](https://github.com/openclaw/openclaw/pull/116580)
- Add a tmux workflow for comparing TUI prototypes [#116583](https://github.com/openclaw/openclaw/pull/116583)
- Restore beta release validation across installed environments [#116596](https://github.com/openclaw/openclaw/pull/116596)
- Stabilize Custodian mobile layout assertions [#116613](https://github.com/openclaw/openclaw/pull/116613)
- Stabilize Codex WebSocket heartbeat tests [#116617](https://github.com/openclaw/openclaw/pull/116617)
- Run Windows path regression assertions on every CI host [#116627](https://github.com/openclaw/openclaw/pull/116627)
- Remove obsolete browser config tests [#116631](https://github.com/openclaw/openclaw/pull/116631)
- Keep Anthropic Code Mode parity QA reliable [#116633](https://github.com/openclaw/openclaw/pull/116633)
- Remove redundant agent path tests [#116634](https://github.com/openclaw/openclaw/pull/116634)
- Strengthen core tests and remove duplicate coverage [#116641](https://github.com/openclaw/openclaw/pull/116641)
- Remove duplicate extension test coverage [#116643](https://github.com/openclaw/openclaw/pull/116643)
- Move live audio integrations out of regular extension tests [#116651](https://github.com/openclaw/openclaw/pull/116651)
- Align full release validation with current runtime state [#116653](https://github.com/openclaw/openclaw/pull/116653)
- Remove duplicate avatar route tests [#116656](https://github.com/openclaw/openclaw/pull/116656)
- Remove duplicate iOS deep-link security tests [#116657](https://github.com/openclaw/openclaw/pull/116657)
- Remove duplicate Android setup-code test coverage [#116658](https://github.com/openclaw/openclaw/pull/116658)
- Fail plugin conformance checks on probe diagnostics [#116676](https://github.com/openclaw/openclaw/pull/116676)
- Keep the memory file-descriptor repro configuration valid [#116698](https://github.com/openclaw/openclaw/pull/116698)
- Unblock beta release validation workflows [#116708](https://github.com/openclaw/openclaw/pull/116708)
- Run only startup benchmarks supported by frozen targets [#116711](https://github.com/openclaw/openclaw/pull/116711)
- Restore the realtime Talk relay live smoke [#116719](https://github.com/openclaw/openclaw/pull/116719)
- Scope QA transport evidence by account and ignore deleted reply matches [#116744](https://github.com/openclaw/openclaw/pull/116744)
- Fail closed on invalid QA summaries and timeouts [#116748](https://github.com/openclaw/openclaw/pull/116748)
- Skip Buzz QA for candidates without the runner [#116753](https://github.com/openclaw/openclaw/pull/116753)
- Allow the autonomous issue-sweep skill to synchronize [#116755](https://github.com/openclaw/openclaw/pull/116755)
- Avoid ambient startup of external source plugins [#116759](https://github.com/openclaw/openclaw/pull/116759)
- Stop scheduling retired Kova runtime dependency coverage [#116760](https://github.com/openclaw/openclaw/pull/116760)
- Keep tracked skills visible to packaging [#116766](https://github.com/openclaw/openclaw/pull/116766)
- refactor(reply): simplify task-owned typing refresh [#116770](https://github.com/openclaw/openclaw/pull/116770)
- Restore autonomous sweep guide formatting [#116782](https://github.com/openclaw/openclaw/pull/116782)
- Centralize private execution attribution [#116793](https://github.com/openclaw/openclaw/pull/116793)
- Propagate private execution attribution across runtimes [#116794](https://github.com/openclaw/openclaw/pull/116794)
- Bind tool policy to exact execution attribution [#116795](https://github.com/openclaw/openclaw/pull/116795)
- Stabilize subagent fanout QA with public evidence [#116832](https://github.com/openclaw/openclaw/pull/116832)
- Reduce Testbox hydration and teardown delays [#116840](https://github.com/openclaw/openclaw/pull/116840)
- Route remote validation by workload and provider readiness [#116841](https://github.com/openclaw/openclaw/pull/116841)
- Route Telegram startup QA through shared credential leases [#116842](https://github.com/openclaw/openclaw/pull/116842)
- Isolate Slack MPIM dedupe QA from streaming [#116843](https://github.com/openclaw/openclaw/pull/116843)
- Stabilize Slack QA progress and table proofs [#116847](https://github.com/openclaw/openclaw/pull/116847)
- Keep memory context QA on the internal channel [#116849](https://github.com/openclaw/openclaw/pull/116849)
- Keep the Codex authentication QA fixture aligned with runtime [#116859](https://github.com/openclaw/openclaw/pull/116859)
- Restore standalone Buzz plugin packaging [#116865](https://github.com/openclaw/openclaw/pull/116865)
- Preserve QA transport ownership and truthful reports [#116911](https://github.com/openclaw/openclaw/pull/116911)
- Authenticate QA scenarios and reject silent character runs [#116912](https://github.com/openclaw/openclaw/pull/116912)
- Pin the corrected Kova release evaluator [#116920](https://github.com/openclaw/openclaw/pull/116920)
- Repair full release-validation regressions [#116931](https://github.com/openclaw/openclaw/pull/116931)
- Attribute embedded-agent preparation latency [#116936](https://github.com/openclaw/openclaw/pull/116936)
- Prevent macOS release-gate fixture deadlocks [#116972](https://github.com/openclaw/openclaw/pull/116972)
- Reject false-green QA suite summaries [#117004](https://github.com/openclaw/openclaw/pull/117004)
- Stabilize sandbox exclusive-create collision tests [#117026](https://github.com/openclaw/openclaw/pull/117026)
- Harden internal macOS Gateway replacement and rollback [#117030](https://github.com/openclaw/openclaw/pull/117030)
- Add private Microsoft Teams Gateway QA [#117033](https://github.com/openclaw/openclaw/pull/117033)
- Prevent no-op live updates from restarting healthy Gateways [#117038](https://github.com/openclaw/openclaw/pull/117038)
- Remove redundant session manager forwarding methods [#117073](https://github.com/openclaw/openclaw/pull/117073)
- Unify synchronous and asynchronous plugin storage [#117075](https://github.com/openclaw/openclaw/pull/117075)
- Compact Doctor compatibility inventory defaults [#117077](https://github.com/openclaw/openclaw/pull/117077)
- Unify subagent completion fallback delivery [#117085](https://github.com/openclaw/openclaw/pull/117085)
- Share Doctor state-migration ownership handling [#117088](https://github.com/openclaw/openclaw/pull/117088)
- Reuse the authoritative plugin manifest graph [#117091](https://github.com/openclaw/openclaw/pull/117091)
- Unify session transcript write leases [#117092](https://github.com/openclaw/openclaw/pull/117092)
- Consolidate Discord model-picker navigation [#117093](https://github.com/openclaw/openclaw/pull/117093)
- Unify memory embedding provider adaptation [#117094](https://github.com/openclaw/openclaw/pull/117094)
- Consolidate Gateway operator approval resolution [#117095](https://github.com/openclaw/openclaw/pull/117095)
- Share progress-draft composition between Matrix and Slack [#117097](https://github.com/openclaw/openclaw/pull/117097)
- Unify model-selection policy across agent paths [#117098](https://github.com/openclaw/openclaw/pull/117098)
- Derive changed-test routes from canonical owners [#117099](https://github.com/openclaw/openclaw/pull/117099)
- Unify Telegram outbound media delivery [#117102](https://github.com/openclaw/openclaw/pull/117102)
- Share approval-reaction binding validation across channels [#117105](https://github.com/openclaw/openclaw/pull/117105)
- Enforce session migration guards across every protected file [#117140](https://github.com/openclaw/openclaw/pull/117140)
- Consolidate Doctor state-migration ownership [#117142](https://github.com/openclaw/openclaw/pull/117142)
- Unify slash-command and directive ownership [#117143](https://github.com/openclaw/openclaw/pull/117143)
- Consolidate reply lifecycle state ownership [#117145](https://github.com/openclaw/openclaw/pull/117145)
- Consolidate plugin descriptors and Gateway startup activation [#117146](https://github.com/openclaw/openclaw/pull/117146)
- Unify context limits and compaction recovery [#117149](https://github.com/openclaw/openclaw/pull/117149)
- Consolidate generated-media completion delivery [#117150](https://github.com/openclaw/openclaw/pull/117150)

</details>
