What's Changed
- feat(serve): add daemon token persistence by @wenshao in #15023
- fix(release): cover every spawned vendored binary in the tarball exec-bit gate by @yiliang114 in #15008
- test(managed-agent): reuse a same-key cancel (FG11d) by @wenshao in #14997
- test(managed-agent): share the quote and camel gate helpers (FG13) by @wenshao in #15047
- test(managed-agent): align Hosted fault gates with shared ownership by @doudouOUC in #15066
- test(ci): guard no-AK membership and filter resolution by @zonemeen in #14989
- feat(managed-agent): Add durable manual context compression by @doudouOUC in #15104
- feat(cli): align OpenTUI input, editing and status lines with Ink by @chiga0 in #14964
- test(cli): canonicalize the review git fixture so R32-2 holds under a symlinked tmpdir by @wenshao in #15133
- feat(shell): remind the model to record files a command writes by @zjgzx1988 in #15055
- docs(skills): document .agents/skills and skills.directories by @shpaker in #15086
- fix(core): avoid false interruption after directory changes by @ytahdn in #15012
- test(managed-agent): refuse a second fire while the turn runs (FG11d) by @wenshao in #14998
- fix(ci): enroll the OpenTUI parity tests in the no-AK lane by @yiliang114 in #15142
- fix(core): remove duplicate prompt metadata import in chat test by @ytahdn in #15146
- fix(ci): let the fast Java tier overtake waiting full-tier lock tickets by @qwen-code-dev-bot in #15035
- fix(core): link workflow agents to the Workflow tool call that started them by @qqqys in #15145
- fix(core): align official DeepSeek with deepseek-flash vision and effort tiers by @qqqys in #15164
- feat(managed-agent): Safely settle recovery and continue sessions by @doudouOUC in #15131
- docs(managed-agent): propose local-process confinement by @yiliang114 in #15163
- fix(ci): report swap and a df -h fallback in the lint lane failure dump by @yiliang114 in #15095
- fix(ci): write back only the MariaDB lane's Maven delta and size its ceiling (#15000) by @yiliang114 in #15064
- feat(web-shell): allow hosts to inject disabled catalog models by @callmeYe in #15015
- test(sdk-java): close the body-less pre-contract 404 connection (#15167) by @qwen-code-dev-bot in #15172
- test(managed-agent): keep a sibling run alive past a cancel (FG11d) by @wenshao in #14999
- feat(managed-agent): Add session lifecycle UI and reading exports by @doudouOUC in #15100
- test(core): pin that setTools writes the tool declarations by @yiliang114 in #15118
- feat(generated-ui): expose interaction outcomes and applied parameter snapshots by @qqqys in #15004
- fix(web-shell): show actionable skill installation errors by @callmeYe in #15013
- feat(managed-agent): expose durable capacity observations by @yiliang114 in #15162
- fix(web-shell): reduce table menu opening latency by @ytahdn in #15179
- test(managed-agent): pin durable recovery park acceptance by @yiliang114 in #15154
- test(managed-agent): atomically claim MCP fixture closes by @yiliang114 in #15158
- test(core): pin the no-upstream branch shape the web-shell push hint reads by @yiliang114 in #15073
- feat(ci): restore a MariaDB leg for the non-Hosted IT family by @yiliang114 in #15003
- fix(managed): Align checkpoint budgets and surface recovery blocks by @doudouOUC in #15094
- fix(providers): refresh the Alibaba Token Plan model list and thinking controls by @qqqys in #15184
- fix(providers): refresh the ModelStudio Standard preset and enable model discovery by @qqqys in #15189
- perf(ci): Parallelize database integration tests and remove redundant work by @doudouOUC in #15200
- feat(managed-agent): Page checkpoint history and improve session feedback by @doudouOUC in #15170
- test(ci): pin daemon E2E build ordering and correct the install warning by @qwen-code-dev-bot in #14884
- feat(core): gate scheduled tasks on a shell command run outside the model by @wenshao in #15069
- feat(managed-agent): add filtered session title queries by @yiliang114 in #15157
- fix(core): make Anthropic global cache scope opt-in on every base URL by @yiliang114 in #15053
- test(vscode-ide-companion): pin the html lang attribute escaping by @CanReader in #10492
- fix(ci): scope the sdk-java host lock to the cache write-back by @qwen-code-dev-bot in #15128
- test(sdk-java): pin the idle watchdog tick without a wall-clock race by @qwen-code-dev-bot in #15103
- feat(managed-agent): read the Harness credentials from one file by @wenshao in #15063
- feat(managed-agent): manage MCP servers without recreating sessions by @doudouOUC in #15119
- test(managed-agent): keep the FG12d lifecycle cells' writer lease past the close window by @wenshao in #15068
- test(managed-agent): pin the queue_one reachability (FG11d) by @wenshao in #15187
- fix(mods): exclude native waits from root execution budget by @qqqys in #14986
- feat(cli): align OpenTUI Vim, history and live output with Ink by @chiga0 in #15067
- fix(core): cap MiniMax-M2.5 output at the DashScope endpoint limit by @qqqys in #15210
- feat(managed-agent): Enable public subagent delegation by default by @doudouOUC in #15171
- test(managed-agent): replace the Runtime MCP connection mid-stream (FG12e) by @wenshao in #15198
- test(managed-agent): pin both worker launch paths to the env filter by @wenshao in #15051
- fix(serve): fall back to an available Local Control port by @Sumire-no-kai in #12352
- feat(managed-agent): Start daemon and Managed locally with one command by @doudouOUC in #14928
- fix(core): stop sed simulation from misreading backslashes in brackets by @MohammedAlkindi in #13557
- test(managed-agent): poll ToolTurn producers instead of waiting on onExit() by @wenshao in #15065
- test(e2e): isolate permission-control suite from shared QWEN_HOME memory state by @he-yufeng in #11401
- test(integration): give the resume gate E2E its CI startup budget (#15185) by @qwen-code-dev-bot in #15188
- fix(cli): recover from hosted send_message encoding limits by @water-in-stone in #14726
- fix(web-shell): preserve composer draft attachments across views by @ytahdn in #15025
- refactor(managed-agent): Remove pre-release compatibility paths by @doudouOUC in #15263
- fix(cli): reject malformed hosted shell Unicode before admission by @water-in-stone in #13678
- feat(cli): ship private Bun and preserve interpreter boundaries by @chiga0 in #14959
- feat(mods): skip hooks for Claude Code events this runtime does not run by @qqqys in #15273
- fix(web-shell): prevent artifact card overlap on narrow screens by @ytahdn in #15300
- test(web-shell): pin which binding the session PR badge renders by @wenshao in #15238
- test(managed-agent): align the FG12d reload comment with the lease expiry by @wenshao in #15234
- fix(managed-agent): refuse
;comments in the Harness credentials file by @wenshao in #15236 - test(managed-agent): fix ToolPublicationStore constructor call in HostedWorkspaceToolTurnIT by @yiliang114 in #15305
- feat(mods): send a Mod's own tool.check ask to the user by @qqqys in #15306
- fix(managed-agent): drop removed publication constructor argument by @qwen-code-dev-bot in #15314
- fix(ci): reuse open workflow failure issues by @yiliang114 in #15256
- test(managed-agent): share the Hosted gate attachment lookup by @wenshao in #15295
- fix(ci): gate the Windows Hosted suite on a successful install by @qwen-code-dev-bot in #15290
- fix(web-shell): preserve draft attachments through refresh and allocation by @ytahdn in #15303
- fix(core): bind session PRs when gh is outside PATH by @wenshao in #15212
- feat(serve): carry a scheduled-task gate through the daemon and Web Shell by @wenshao in #15211
- feat(ci): switchable Linux runner fleet (hosted/arm64) via LINUX_RUNNER_FLEET variable + dispatch option by @yiliang114 in #15329
- fix(acp): stop blanking replay App html that cannot reclaim bytes by @yiliang114 in #15279
- fix(ci): refuse a partial jobs page list before reporting by @wenshao in #15174
- fix(web-shell): honor loading phrase visibility setting by @ytahdn in #15337
- fix(web-shell): Align Managed sidebar with daemon navigation by @doudouOUC in #15331
- feat(serve): bind reviewed PR when a /review prompt is admitted by @wenshao in #15207
- fix(mods): refuse values nested too deeply to cross the Mod boundary by @qqqys in #15317
- docs(mods): propose the Claude Code compatibility baseline by @qqqys in #15270
- docs(design): add the unified agent loop design by @qqqys in #15343
- fix(ci): install linters on linux/arm64 runners by @wenshao in #15350
- fix(cli): kill a timed-out review command's process tree by @wenshao in #15352
- fix(managed-agent): resume collection blockers at their own clearing instant by @wenshao in #15195
- feat(cli): add a capability parity matrix against the Managed Agent path by @wenshao in #15085
- feat(managed-agent): Enable unified Shell session lifecycle by @doudouOUC in #15330
- feat(managed): gate managed automations on a Runtime probe run before the claim by @wenshao in #15218
- fix(cli): drop the removed V2 tool lists from the parity test by @wenshao in #15362
- test(cli): cover workspace-scope aux model persistence in ModelDialog by @yiliang114 in #15356
- docs(verify-pr): add a --publish shorthand for maintainer rounds by @wenshao in #15357
- test(web-shell): cover reopened session details focus handoff by @Jun516 in #15351
- fix(release): skip cua-sdk publish dry-run when the version is already on npm by @yiliang114 in #15355
- fix(ci): annotate the temp short-alias guard's failing branches by @yiliang114 in #15366
- fix(ci): stabilize TUI attachment wait and allow full acceptance run by @yiliang114 in #15372
- feat(web-shell): let users reorder sidebar workspaces by @wenshao in #15360
- test(core): give the paged-outcomes turn a CI-sized timeout by @yiliang114 in #15374
- fix(ci): route web shell smoke to ARM64 independently by @yiliang114 in #15364
- feat(managed-agent): Add web_fetch to Workspace Sessions by @doudouOUC in #15313
- test(cli): stop assuming one build's CA loader and sleep semantics by @yiliang114 in #15370
- feat(cli): add the PR watch probes behind the scheduled-task gate by @qqqys in #15057
- fix(node-repl): let the kernel exit promptly on shutdown by @wenshao in #15160
- feat(managed-agent): Add a shared Harness pool for Kubernetes by @doudouOUC in #15255
- fix(ci): pin and cache the standalone runtime archives by @wenshao in #15159
- fix(cli): install the reaping traps before the review command starts by @wenshao in #15367
- test(web-shell): pin running title cue spinner parity by @Jun516 in #15371
- test(web-shell): stop pinning hero header wrap in token usage min-width check by @yiliang114 in #15399
- test(web-shell): stop requiring the token-usage meta to wrap at min width by @yiliang114 in #15400
- test(web-shell): cross the hover-menu corridor with raw pointer moves by @yiliang114 in #15404
- fix(cli): keep reaping a review command's tree on a busy machine and under old bash by @wenshao in #15375
- feat(verify-pr): configure the assets host and branch once by @wenshao in #15377
- perf(ci): scope PR lint and reuse static build outputs by @yiliang114 in #15381
- ci: reduce redundant TUI parity runs and build scope by @yiliang114 in #15383
- feat(web-shell): expose model output language in settings panel by @wenshao in #15363
- refactor(web-shell): share the openable-PR filter with the details tooltip by @wenshao in #15373
- test(scripts): pin newline-bearing takeover round seed bodies by @yiliang114 in #15390
- test(cli): widen held-expiry margins in the peer listing stale test by @wenshao in #15413
- feat(serve): give managed workspace sessions todo_write (#15076) by @wenshao in #15089
- fix(ci): file new main CI failure signatures as their own issues by @yiliang114 in #15405
- test(review): witness the unasserted halves of two Aone routing pins by @yiliang114 in #15395
- fix(vscode): keep transcript selection alive during host-driven webview copy by @yar3333 in #15403
- feat(serve): persist max-sessions in settings.json by @wenshao in #15419
- docs(managed): document the PR watch probes as Managed automation gates by @wenshao in #15420
- fix(web-shell): move group creation into workspace menu by @deggs7 in #15320
- test(integration): give the skill-hook parity E2E the docker startup budget (#15226) by @qwen-code-dev-bot in #15237
- fix(ci): raise the sdk-java test-lane lock wait above the longest hold by @qwen-code-dev-bot in #15257
- feat(web-shell): add unified recent sessions sidebar by @deggs7 in #14904
- feat(mods): read session facts and the clock by @qqqys in #15348
- feat(verify-pr): add a watch mode backed by the PR probe gate by @wenshao in #15409
- feat(memory): add scoped external import jobs for CLI and HTTP by @callmeYe in #14281
- feat(ci): fail fast when a pool host drifts off the font baseline by @yiliang114 in #15410
- test(cli): pin the reaping shell's trap order and tighten its interrupt test by @wenshao in #15415
- test(cli): poll the held-expiry assertions instead of sleeping by @wenshao in #15417
- test(feishu): cover inbound file attachment lifecycle by @jabrailkhalil in #13278
- feat(cli): attach a terminal to daemon sessions by @wenshao in #15209
- fix(acp): refuse an edit whose arguments were cut off or arrived incomplete by @qqqys in #15346
- fix(qqbot)!: restore per-group session isolation under thread scope by @Eric-GoodBoy-Tech in #13882
- fix(ci): skip stale main CI failure issues after main advances by @qwen-code-dev-bot in #15272
- test(managed-agent): retry the Hosted boot when a probed port is taken by @yiliang114 in #15432
- test(core): isolate outcomes-test retries from the dispatch gate by @yiliang114 in #15429
- fix(cua): sign Windows UIAccess workers before publishing by @yiliang114 in #12442
- fix(cli): Replace synthesized tool-result placeholders with late real results by @yiliang114 in #15308
- feat(cli): add the /autofix-pr reaction layer: guarded push, sync, replies, re-runs and the skill by @wenshao in #15385
- fix(ci): skip the font baseline gate when the checkout predates it by @yiliang114 in #15436
- fix(cli): let review build-test reach the test phase on this monorepo by @wenshao in #15332
- test(runtime-broker): show what the rig saw when an execution wait times out by @wenshao in #15437
- fix(core): count only well-formed snapshots toward the workflow retention cap by @yiliang114 in #15391
Full Changelog: v0.26.0...v0.26.1