## 更新内容
* feat(cli): 使用 OSC 8 包裹 Markdown 链接,使换行后的 URL 保持可点击 by @BZ-D in https://github.com/QwenLM/qwen-code/pull/4037
* fix(core): 将累积的 OpenAI 流式增量标准化为后缀 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/3896
* fix(cli): 取消时自动恢复提示词并保留队列 by @wenshao in https://github.com/QwenLM/qwen-code/pull/4023
* docs(auth): 添加自定义 API 密钥向导的产品需求文档 (PRD) by @pomelo-nwu in https://github.com/QwenLM/qwen-code/pull/3583
* feat(cli): 在 /delete 命令中支持会话批量删除 by @qqqys in https://github.com/QwenLM/qwen-code/pull/3733
* feat(cli,sdk): qwen serve 守护进程(第一阶段) by @wenshao in https://github.com/QwenLM/qwen-code/pull/3889
* fix(core): 为子代理的 OpenAI JSON 日志添加标签 by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4099
* feat(subagents): 为 Explore 子代理使用 fastModel by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4086
* fix(dashscope): 使用 URL 主机名检查替代正则表达式以避免 ReDoS(CodeQL) by @qqqys in https://github.com/QwenLM/qwen-code/pull/4112
* fix(core): 改进运行时 fetch 选项的错误处理与文档 by @ZevGit in https://github.com/QwenLM/qwen-code/pull/3997
* fix(telemetry): 处理 PR #3847 审查后续事项以完善链路追踪关联 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4058
* feat(perf): 渐进式 MCP 可用性 —— MCP 不再阻塞首次输入 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/3994
* fix(search): 使空查询退出变为同步操作,并统一 Windows 退格键行为 by @B-A-M-N in https://github.com/QwenLM/qwen-code/pull/3981
* chore(release): v0.15.11 by @qwen-code-ci-bot in https://github.com/QwenLM/qwen-code/pull/4100
* fix(anthropic): 允许在 tool_result 块上使用 cache_control by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4121
* feat(core): 在聊天压缩摘要前剥离内联媒体 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/4101
* ci(deps): 将 docker/* actions 升级至 Node 24 主版本(消除 GitHub Node 20 弃用警告) by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4131
* fix(core): 将 IDE 上下文合并至用户提示词 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/3980
* fix(cli): 无需重启即可将 /language 输出应用于运行中的会话 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4143
* feat(tools): 添加通用 worktree 支持 —— EnterWorktree/ExitWorktree + 代理隔离 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/4073
* feat(cli): 将 ModelScope 添加为内置第三方 API 提供商 by @Col0ring in https://github.com/QwenLM/qwen-code/pull/4150
* fix(core): 修正上下文使用页脚,以准确显示提示词大小与 Anthropic 缓存 by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4109
* fix(core): 支持跨认证快速侧边查询 by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4117
* test(integration): 在 #4163 修复前,将 simple-mcp-server 锁定至旧版 MCP 路径 by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4164
* refactor(serve): 1 个守护进程 = 1 个工作区 (#3803 §02) by @wenshao in https://github.com/QwenLM/qwen-code/pull/4113
* fix(vscode): 保留思考状态并恢复缺失的编辑快照 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/4147
* fix(cli): 将 MinTTY 的 Ctrl+Backspace 处理为删除前一个单词 by @dreamWB in https://github.com/QwenLM/qwen-code/pull/4059
* refactor(serve): 提取 createInMemoryChannel 辅助函数 (#4156 A1) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4160
* fix(cli): 在沙箱重启时保留调试会话 by @kkhomej33-netizen in https://github.com/QwenLM/qwen-code/pull/4060
* feat(core): 为 Qwen3.6-35B-A3B 量化变体添加图像+视频支持 by @Dinsmoor in https://github.com/QwenLM/qwen-code/pull/4106
* fix(hooks): 将 SessionStart 的 additionalContext 注入聊天上下文 by @DennisYu07 in https://github.com/QwenLM/qwen-code/pull/4115
* fix(i18n): 修正 zh-TW 翻译以符合繁体中文习惯 by @MikeWang0316tw in https://github.com/QwenLM/qwen-code/pull/4129
* feat(hooks): 为待办事项生命周期事件添加 TodoCreated 和 TodoCompleted 钩子 by @DennisYu07 in https://github.com/QwenLM/qwen-code/pull/3378
* refactor(cli): 回退斜杠命令动态 LLM 翻译 by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4145
* chore(deps): 重新升级 ink 6 → 7.0.3(上游 Static 重新挂载修复已合并) by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4119
* feat(hooks): 添加支持 LLM 评估的 prompt 钩子类型 by @DennisYu07 in https://github.com/QwenLM/qwen-code/pull/3388
* perf(cli): 对 lowlight 进行代码分割以降低启动时 V8 解析开销 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4070
* fix(core): 在 setTools() 中刷新 systemInstruction,使渐进式 MCP 工具能送达模型 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4166
* feat(core,cli): 添加通用 atomicWriteFile,接入 Write/Edit 工具,升级 @types/node by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4096
* fix(vscode-ide-companion): 在 diff 时使用现有编辑器组而非强制新建 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/4130
* feat(cli): 警告用户 IDE 模式下已禁用回退(rewind)功能 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4122
* feat(cli): 为 /rename 添加参数提示与 --auto 自动补全 by @qqqys in https://github.com/QwenLM/qwen-code/pull/4048
* feat(cli): 添加基础的 /doctor 内存诊断功能 by @qqqys in https://github.com/QwenLM/qwen-code/pull/4180
* [codex] feat(serve): 添加能力注册表协议版本 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4191
* feat(cli): 添加会话级 /goal 命令,支持由评估器驱动的回合继续 by @qqqys in https://github.com/QwenLM/qwen-code/pull/4123
* feat(rewind): 为 /rewind 命令添加文件恢复支持 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4064
* feat(skills): 为冻结会话添加 /stuck 诊断技能 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4133
* feat(telemetry): 统一分层追踪树的 span 创建路径 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4126
* refactor(core): TaskBase 信封 + 前台子代理持久化 by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/3970
* feat(cli): 通过 readline Ctrl+P/N 实现历史记录与选择导航 by @dreamWB in https://github.com/QwenLM/qwen-code/pull/4082
* feat(cli): 添加带有交互式对话框的内置状态行预设 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/4120
* fix(core): 添加堆内存压力自动压缩安全网 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/4186
* feat(serve): 在 POST /session 上实现每次请求的 sessionScope 覆盖 (#4175 Wave 2 PR 5) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4209
* fix(cli): 传递 rewind 选择器测试属性 by @wenshao in https://github.com/QwenLM/qwen-code/pull/4211
* feat(cli): 添加 fork-session 恢复标志 by @qqqys in https://github.com/QwenLM/qwen-code/pull/4159
* feat(telemetry): 添加交互 span 及详细敏感属性 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4097
* test(perf): 添加守护进程基线测试框架 (#4175 Wave 1 PR 1) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4205
* feat(sdk): 添加 DaemonSessionClient 骨架 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4201
* fix(lsp): 暴露状态与启动诊断信息 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/3649
* fix(serve): 对齐已合并的 sessionScope 覆盖功能的集成测试与用户文档 (#4175 follow-up) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4214
* fix(rewind): 恢复上游 TOCTOU 排序 + 修复粘性失败标记 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4216
* 添加停止钩子阻塞上限 by @qqqys in https://github.com/QwenLM/qwen-code/pull/4208
* fix(test): 清除 boundedPromise 定时器以防止 abort-and-lifecycle 测试中的未处理拒绝 by @wenshao in https://github.com/QwenLM/qwen-code/pull/4220
* fix(ui): 截断后台任务结果并按最新优先显示 (#4094) by @wenshao in https://github.com/QwenLM/qwen-code/pull/4125
* feat(protocol): 类型化守护进程事件模式 v1 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4217
* [codex] 允许 /export 使用自定义输出目录 by @qqqys in https://github.com/QwenLM/qwen-code/pull/4193
* [codex] 添加守护进程会话加载/恢复 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4222
* feat(sdk): 加固守护进程会话客户端 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4225
* fix(core): 使 shell 工具描述与配置的 shell 保持一致 by @kkhomej33-netizen in https://github.com/QwenLM/qwen-code/pull/4170
* fix(cli): 在斜杠命令中包含技能基础目录 by @kkhomej33-netizen in https://github.com/QwenLM/qwen-code/pull/4224
* feat(serve): 添加带守护进程标记的客户端标识 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4231
* feat(serve): 添加会话级权限路由 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4232
* test(perf): 在沙箱环境下跳过守护进程基线测试 by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4234
* feat(core): PR-2.5 — 提升后流重定向 + 自然退出注册表结算 (#3831 follow-up) by @wenshao in https://github.com/QwenLM/qwen-code/pull/4102
* fix(cli): 恢复时还原 ACP 提示计数器 by @kkhomej33-netizen in https://github.com/QwenLM/qwen-code/pull/4233
* fix(core): 通过附加主机名规则扩展 DashScope 提供商检测 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/4157
* feat(serve): 广播 typed_event_schema + 锁定 SDK 公开接口 (#4175 PR 4 follow-up) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4226
* feat(serve): 添加客户端心跳 (#4175 Wave 2.5 PR 9) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4235
* fix(core): 在分发时应用工具名称迁移 by @Jerry2003826 in https://github.com/QwenLM/qwen-code/pull/4213
* feat(serve): SSE 重播尺寸调整 + slow_client_warning 背压机制 (#4175 Wave 2.5 PR 10) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4237
* feat(cli): 为 Plan Mode 添加可配置的 plansDirectory by @shenyankm in https://github.com/QwenLM/qwen-code/pull/4062
* feat(cli): 添加结构化内存诊断 JSON by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/3785
* feat(serve): 添加变异门控辅助函数与 --require-auth by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4236
* fix(cli): 记录回合中排队等待的用户提示 by @Jerry2003826 in https://github.com/QwenLM/qwen-code/pull/4215
* feat(serve): 会话元数据及关闭/删除生命周期 (#4175 Wave 2.5 PR 11) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4240
* feat(serve): 添加只读状态路由 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4241
* fix(serve): 对齐已合并的功能与 EventBus 更改的集成测试镜像 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4245
* fix: 添加缓存限制以防止构建/测试期间 OOM by @xmillogx-cmd in https://github.com/QwenLM/qwen-code/pull/4188
* docs: 为 --json-schema 结构化输出添加用户与设计文档 by @wenshao in https://github.com/QwenLM/qwen-code/pull/4051
* fix(serve): 对齐构建与集成测试覆盖率 by @wenshao in https://github.com/QwenLM/qwen-code/pull/4248
* feat(core): 标记不可能实现的目标为失败 by @qqqys in https://github.com/QwenLM/qwen-code/pull/4230
* feat(serve): 预检与环境诊断路由 (#4175 Wave 3 PR 13) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4251
## 新增贡献者
* @ZevGit 在 https://github.com/QwenLM/qwen-code/pull/3997 中完成了首次贡献
* @Col0ring 在 https://github.com/QwenLM/qwen-code/pull/4150 中完成了首次贡献
* @Dinsmoor 在 https://github.com/QwenLM/qwen-code/pull/4106 中完成了首次贡献
* @xmillogx-cmd 在 https://github.com/QwenLM/qwen-code/pull/4188 中完成了首次贡献
**完整更新日志**: https://github.com/QwenLM/qwen-code/compare/v0.15.11...v0.15.11-nightly.20260518.f44ed0941
## What's Changed
* feat(cli): wrap markdown links in OSC 8 so wrapped URLs stay clickable by @BZ-D in https://github.com/QwenLM/qwen-code/pull/4037
* fix(core): normalize cumulative OpenAI stream deltas to suffixes by @chiga0 in https://github.com/QwenLM/qwen-code/pull/3896
* fix(cli): auto-restore prompt and preserve queue on cancel by @wenshao in https://github.com/QwenLM/qwen-code/pull/4023
* docs(auth): add custom API key wizard PRD by @pomelo-nwu in https://github.com/QwenLM/qwen-code/pull/3583
* feat(cli): support batch deletion of sessions in /delete by @qqqys in https://github.com/QwenLM/qwen-code/pull/3733
* feat(cli,sdk): qwen serve daemon (Stage 1) by @wenshao in https://github.com/QwenLM/qwen-code/pull/3889
* fix(core): tag subagent OpenAI JSON logs by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4099
* feat(subagents): use fastModel for Explore subagent by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4086
* fix(dashscope): use URL hostname check instead of regex to avoid ReDoS (CodeQL) by @qqqys in https://github.com/QwenLM/qwen-code/pull/4112
* fix(core): improve runtime fetch options error handling and documentation by @ZevGit in https://github.com/QwenLM/qwen-code/pull/3997
* fix(telemetry): address PR #3847 review follow-ups for trace correlation by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4058
* feat(perf): progressive MCP availability — MCP no longer blocks first input by @chiga0 in https://github.com/QwenLM/qwen-code/pull/3994
* fix(search): make empty-query exit synchronous and normalize Windows Backspace by @B-A-M-N in https://github.com/QwenLM/qwen-code/pull/3981
* chore(release): v0.15.11 by @qwen-code-ci-bot in https://github.com/QwenLM/qwen-code/pull/4100
* fix(anthropic): allow cache_control on tool_result blocks by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4121
* feat(core): strip inline media before chat compaction summary by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/4101
* ci(deps): bump docker/* actions to Node 24 majors (silences GitHub Node 20 deprecation warning) by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4131
* fix(core): merge IDE context into user prompt by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/3980
* fix(cli): apply /language output to running session without restart by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4143
* feat(tools): add generic worktree support — EnterWorktree/ExitWorktree + Agent isolation by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/4073
* feat(cli): add ModelScope as a built-in third-party API provider by @Col0ring in https://github.com/QwenLM/qwen-code/pull/4150
* fix(core): correct context-usage Footer for prompt size and Anthropic caches by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4109
* fix(core): support cross-auth fast side queries by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4117
* test(integration): pin simple-mcp-server to legacy MCP path until #4163 is fixed by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4164
* refactor(serve): 1 daemon = 1 workspace (#3803 §02) by @wenshao in https://github.com/QwenLM/qwen-code/pull/4113
* fix(vscode): preserve thinking state and recover missing edit snapshots by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/4147
* fix(cli): handle MinTTY Ctrl+Backspace as delete-previous-word by @dreamWB in https://github.com/QwenLM/qwen-code/pull/4059
* refactor(serve): extract createInMemoryChannel helper (#4156 A1) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4160
* fix(cli): preserve debug session across sandbox relaunch by @kkhomej33-netizen in https://github.com/QwenLM/qwen-code/pull/4060
* feat(core): add image+video support for Qwen3.6-35B-A3B quant variants by @Dinsmoor in https://github.com/QwenLM/qwen-code/pull/4106
* fix(hooks): inject SessionStart additionalContext into chat context by @DennisYu07 in https://github.com/QwenLM/qwen-code/pull/4115
* fix(i18n): Correct zh-TW translations to match Traditional Chinese conventions by @MikeWang0316tw in https://github.com/QwenLM/qwen-code/pull/4129
* feat(hooks): Add TodoCreated and TodoCompleted hooks for todo lifecycle events by @DennisYu07 in https://github.com/QwenLM/qwen-code/pull/3378
* refactor(cli): revert dynamic slash command LLM translation by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4145
* chore(deps): re-upgrade ink 6 → 7.0.3 (upstream Static remount fix landed) by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4119
* feat(hooks): add prompt hook type with LLM evaluation support by @DennisYu07 in https://github.com/QwenLM/qwen-code/pull/3388
* perf(cli): code-split lowlight to cut startup V8 parse cost by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4070
* fix(core): refresh systemInstruction in setTools() so progressive MCP tools reach the model by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4166
* feat(core,cli): add generic atomicWriteFile, wire into Write/Edit tools, upgrade @types/node by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4096
* fix(vscode-ide-companion): use existing editor group for diff instead of forcing a new one by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/4130
* feat(cli): warn users that rewind is disabled in IDE mode by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4122
* feat(cli): argument hint + --auto completion for /rename by @qqqys in https://github.com/QwenLM/qwen-code/pull/4048
* feat(cli): add baseline /doctor memory diagnostics by @qqqys in https://github.com/QwenLM/qwen-code/pull/4180
* [codex] feat(serve): add capability registry protocol versions by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4191
* feat(cli): add session-scoped /goal command with judge-driven turn continuation by @qqqys in https://github.com/QwenLM/qwen-code/pull/4123
* feat(rewind): add file restoration support to /rewind command by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4064
* feat(skills): add /stuck diagnostic skill for frozen sessions by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4133
* feat(telemetry): unify span creation paths for hierarchical trace tree by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4126
* refactor(core): TaskBase envelope + foreground subagent persistence by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/3970
* feat(cli): readline Ctrl+P/N for history and selection navigation by @dreamWB in https://github.com/QwenLM/qwen-code/pull/4082
* feat(cli): add built-in status line presets with interactive dialog by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/4120
* fix(core): add heap-pressure auto-compaction safety net by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/4186
* feat(serve): per-request sessionScope override on POST /session (#4175 Wave 2 PR 5) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4209
* fix(cli): pass rewind selector test props by @wenshao in https://github.com/QwenLM/qwen-code/pull/4211
* feat(cli): add fork-session resume flag by @qqqys in https://github.com/QwenLM/qwen-code/pull/4159
* feat(telemetry): add interaction span and detailed sensitive attributes by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4097
* test(perf): add daemon baseline harness (#4175 Wave 1 PR 1) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4205
* feat(sdk): add DaemonSessionClient skeleton by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4201
* fix(lsp): expose status and startup diagnostics by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/3649
* fix(serve): align integration test + user doc with merged sessionScope override (#4175 follow-up) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4214
* fix(rewind): restore upstream TOCTOU ordering + heal sticky failed marker by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4216
* Add stop hook blocking cap by @qqqys in https://github.com/QwenLM/qwen-code/pull/4208
* fix(test): clear boundedPromise timers to prevent unhandled rejections in abort-and-lifecycle test by @wenshao in https://github.com/QwenLM/qwen-code/pull/4220
* fix(ui): trim background task results and show newest first (#4094) by @wenshao in https://github.com/QwenLM/qwen-code/pull/4125
* feat(protocol): typed daemon event schema v1 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4217
* [codex] Allow custom output directory for /export by @qqqys in https://github.com/QwenLM/qwen-code/pull/4193
* [codex] Add daemon session load/resume by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4222
* feat(sdk): harden daemon session client by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4225
* fix(core): align shell tool description with configured shell by @kkhomej33-netizen in https://github.com/QwenLM/qwen-code/pull/4170
* fix(cli): include skill base dir in slash commands by @kkhomej33-netizen in https://github.com/QwenLM/qwen-code/pull/4224
* feat(serve): add daemon-stamped client identity by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4231
* feat(serve): add session-scoped permission route by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4232
* test(perf): skip daemon baseline harness under sandbox by @tanzhenxin in https://github.com/QwenLM/qwen-code/pull/4234
* feat(core): PR-2.5 — post-promote stream redirect + natural-exit registry settle (#3831 follow-up) by @wenshao in https://github.com/QwenLM/qwen-code/pull/4102
* fix(cli): restore ACP prompt counter on resume by @kkhomej33-netizen in https://github.com/QwenLM/qwen-code/pull/4233
* fix(core): extend DashScope provider detection with additional hostname rules by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/4157
* feat(serve): advertise typed_event_schema + pin SDK public surface (#4175 PR 4 follow-up) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4226
* feat(serve): add client heartbeat (#4175 Wave 2.5 PR 9) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4235
* fix(core): apply tool name migrations at dispatch by @Jerry2003826 in https://github.com/QwenLM/qwen-code/pull/4213
* feat(serve): SSE replay sizing + slow_client_warning backpressure (#4175 Wave 2.5 PR 10) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4237
* feat(cli): add configurable plansDirectory for Plan Mode by @shenyankm in https://github.com/QwenLM/qwen-code/pull/4062
* feat(cli): add structured memory diagnostics JSON by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/3785
* feat(serve): mutation gating helper and --require-auth by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4236
* fix(cli): record mid-turn queued user prompts by @Jerry2003826 in https://github.com/QwenLM/qwen-code/pull/4215
* feat(serve): session metadata and close/delete lifecycle (#4175 Wave 2.5 PR 11) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4240
* feat(serve): add read-only status routes by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4241
* fix(serve): align integration test mirrors with merged capability + EventBus changes by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4245
* fix: add cache limits to prevent OOM during build/test by @xmillogx-cmd in https://github.com/QwenLM/qwen-code/pull/4188
* docs: user + design docs for --json-schema structured output by @wenshao in https://github.com/QwenLM/qwen-code/pull/4051
* fix(serve): align build and integration test coverage by @wenshao in https://github.com/QwenLM/qwen-code/pull/4248
* feat(core): fail impossible goals by @qqqys in https://github.com/QwenLM/qwen-code/pull/4230
* feat(serve): preflight and env diagnostics routes (#4175 Wave 3 PR 13) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/4251
## New Contributors
* @ZevGit made their first contribution in https://github.com/QwenLM/qwen-code/pull/3997
* @Col0ring made their first contribution in https://github.com/QwenLM/qwen-code/pull/4150
* @Dinsmoor made their first contribution in https://github.com/QwenLM/qwen-code/pull/4106
* @xmillogx-cmd made their first contribution in https://github.com/QwenLM/qwen-code/pull/4188
**Full Changelog**: https://github.com/QwenLM/qwen-code/compare/v0.15.11...v0.15.11-nightly.20260518.f44ed0941