Highlights
See the complete change list below.
Breaking Changes
No known breaking changes.
Complete Change List
Features
- feat(mods): run prompt.submit hooks in the OpenTUI terminal (#16195) by @qqqys
- feat(cli): run the Ink TUI's model rounds on the shared loop's round (#16206) by @qqqys
- feat(web-shell): collapse channel editor tuning behind advanced settings (#16239) by @wenshao
- feat(web-shell): link GitHub PR/Issue targets in channel events (#16226) by @wenshao
- feat(channels): role-aware action templates for GitHub bound-session delivery (#16258) by @wenshao
- feat(cli): run the Ink TUI's tool batches on the shared loop's batch (#16304) by @qqqys
- feat(mods): let a Mod submit a prompt of its own in headless runs (#16302) by @qqqys
- feat(managed-agent): allow concurrent workspace rewinds (#16369) by @doudouOUC
- feat(channels): edit bound-session action templates on demand (#16349) by @wenshao
- feat(serve): allow configuring the Conversations working-directory root (#16105) by @jkxiao
- feat(cli): end the Ink TUI's shared tool batch on the TUI's own stops (#16365) by @qqqys
- feat(web-shell): link channel event rows to their sessions (#16375) by @wenshao
- feat(mods): run the prompts a Mod submits in the Ink terminal (#16373) by @qqqys
- feat: add Qwen subscription support across CLI, VS Code, and Desktop (#16378) by @liuxuely0626
Bug Fixes
- Makes linter archive downloads resume after stalls so CI lint installs fail less often on slow or throttled releases. (#16067) by @yiliang114
- Repins the RHEL 10 rpm build root to a current CentOS stream10 digest so CI containers start instead of failing on manifest lookup. (#16261) by @yiliang114
- Waits for the RocketMQ port listener to clear after stop, reducing flaky script test failures on shared CI hosts. (#16252) by @qwen-code-dev-bot
- fix(core): preserve Gemini thought signatures for tool replay (#16270) by @doudouOUC
- fix(core): recognize Hugging Face TGI context overflow errors so reactive compaction runs (#16245) by @Shizoqua
- fix(core): accept images for Qwen2-VL, Qwen2.5-VL and QVQ models the catalog does not list (#16247) by @Shizoqua
- fix(daemon): automatically discover config Skills changes (#16262) by @callmeYe
- fix(mods): skip hooks on ui.backdrop instead of failing (#16289) by @qqqys
- fix(cli): derive context tool details from declared schemas (#16292) by @callmeYe
- fix(managed-agent): enforce strict SQL mode per embedded connection (#16288) by @doudouOUC
- fix(ci): widen the built-tree download window for eight shards (#16285) by @yiliang114
- fix(ci): fail Java lanes before disk exhaustion (#16068) by @yiliang114
- fix(managed-agent): use current state for approval changes (#16296) by @doudouOUC
- fix(managed): Reap Git descendants before terminating parents (#16298) by @doudouOUC
- fix(cli): gate project hooks behind an approval dialog (#14748) by @TianYuan1024
- fix(managed-agent): reject dangling Hosted cleanup references (#16275) by @doudouOUC
- fix(web-shell): express the PR watch events dependency in the channel editor (#16236) by @wenshao
- fix(serve): read PR sidecars directly for the bindings snapshot (#16241) by @wenshao
- fix(managed-agent): restore JournalCommit under its class-size ratchet (#16323) by @wenshao
- fix(ci): pin COREPACK_HOME for Linux test shards on cold-HOME runs (#16328) by @yiliang114
- fix(managed-agent): bound runtime thread pools (#16330) by @doudouOUC
- fix(managed-agent): refuse every URL fetch refuses and say why a health probe failed (#16110) by @wenshao
- fix(cli): keep project hook approval env inside the workspace (#16316) by @yiliang114
- fix(verify-pr): post flaky demotions on closed PRs and pin the blank class (#16135) by @wenshao
- fix(managed-agent): find the Flyway scripts in the module jar the server ships them in (#16175) by @wenshao
- fix(managed-agent): harden capacity recovery and clean up Java conventions (#16318) by @doudouOUC
- fix(ci): clear the pinned corepack cache before every install (#16351) by @wenshao
- fix(core): headless project-hook trust requires the folder-trust feature (#16264) by @yiliang114
- fix(web-shell): align welcome models and make UI language sessionless (#16297) by @liuxuely0626
- fix(channels): keep GitHub notifications unread on transient thread errors (#16333) by @wenshao
- fix(cli): stop Agent Host disconnects being undone and report unsaved joins (#16156) by @wenshao
- fix(core): tell the model the date once, from the history (#16362) by @qqqys
- fix(cli): preserve raw context usage estimates (#16360) by @callmeYe
- fix(serve): serve qualified hooks status for untrusted workspaces (#16388) by @yiliang114
- fix(cli): land a Web Shell update on the current latest release (#16374) by @wenshao
- fix(channels): keep GitHub replies hit by a secondary rate limit (#16334) by @wenshao
- fix(cli): forward the folder-trust store into the container sandbox (#16390) by @yiliang114
Performance
- Improves managed-agent performance and stability by queueing ordinary journal commits on the Session row instead of a tenant-wide lock. (#16256) by @doudouOUC
- Narrows managed-agent lock scopes for output, lifecycle, and storage updates to reduce contention and improve throughput. (#16268) by @doudouOUC
- perf(managed-agent): separate workspace reads from durable admission (#16283) by @doudouOUC
- perf(managed-agent): avoid storage locks in read preflight (#16312) by @doudouOUC
- perf(managed-agent): index the Runtime slot lookup by isolation key (#16325) by @wenshao
- perf(managed-agent): share the storage fence in session command admissions (#16329) by @doudouOUC
- perf(managed-agent): take ordinary tool publication and read leases off the tenant lock (#16335) by @doudouOUC
- perf(core): defer workflow tool schemas by default (#16310) by @callmeYe
- perf(managed-agent): narrow queue dispatch and workspace session creation locks (#16327) by @doudouOUC
- perf(managed-agent): take ordinary publication lanes off the placement guard (#16354) by @doudouOUC
- perf(memory): move the main session's auto-memory guidance into a bundled skill (#16303) by @qqqys
- perf(managed-agent): remove ordinary journal and publication storage locks (#16370) by @doudouOUC
- perf(serve): keep the ACP spawn channel out of Managed Runtime workers (#16235) by @wenshao
Documentation
- docs: configure Qwen3.x served under a custom model name (#16342) by @spped2000
Internal Changes
- Keeps ACP parity test runtime state outside the workspace so integration tests compare only intended files and run more reliably. (#16254) by @qwen-code-dev-bot
- Makes the ACP parity workspace guard compare the home directory against its pre-run listing, improving test reliability. (#16266) by @wenshao
- Speeds up CI by sharding Linux unit tests and web-shell smoke tests and reusing cached builds instead of rebuilding each workspace. (#16133) by @sorrycc
- test(web-shell): wait for the restored card before clicking continue (#16286) by @yiliang114
- test(interactive): share one CI-scaled wait policy across the TUI suites (#16276) by @yiliang114
- test(e2e): accept both plan-mode wordings in the ACP case (#16273) by @yiliang114
- test(managed-agent): ratchet persistence and runtime-broker class sizes (#16284) by @wenshao
- test(acp): expect the scheduler's plan-mode notice on the shared loop (#16305) by @qqqys
- test(sdk): read before an approved write in the tool-control E2E tests (#16366) by @qqqys
- test(managed-agent): declare v2 reader in the cleanup-conflict MySql IT (#16372) by @yiliang114
- test(managed-agent): fix busy-storage assertion broken by #16369 (#16382) by @yiliang114
- test(ci): pin the zero-skip timeout shape in awaitTwoSkipLines (#16384) by @yiliang114
- test(web-shell): pin the rewind capacity-latch re-open (#16358) by @yiliang114
- test(managed-agent): gate lifecycle-v2 close with a stopped worker (#16123) by @wenshao
- test(review): pin the carried-ledger carrier order and fail-open arms (#10464) (#16395) by @yiliang114
New Contributors
- @sorrycc made their first contribution in #16133
- @spped2000 made their first contribution in #16342
- @liuxuely0626 made their first contribution in #16297
Full Changelog: v0.26.7...v0.26.8