<!-- Release notes generated using configuration in .github/release.yml at 93cd0190882b3e17ff5f48584119fe10a7456d90 -->
## 更新内容
* fix(ci): 在 qwen-triage 的容器任务中添加默认 bash shell by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7838
* fix(web-shell): 在 composer 中保留粘贴的文本 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7824
* feat(web-shell): 添加监控任务详情 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7817
* fix(ci): 为容器任务添加 git safe.directory 配置 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7843
* fix(ci): 为容器任务添加 --init 参数以回收僵尸进程 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7848
* fix(core): 在结算后台 shell 前等待输出流刷新 by @ComplexSimply in https://github.com/QwenLM/qwen-code/pull/7833
* fix(scripts): 重试模型调用并展示降级版的发布说明 by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/7535
* feat(web-shell): 将语音范围限定在 composer 工作区 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7754
* feat(hooks): 添加已提交提示词的来源追踪 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7762
* fix(ci): 防止 worktree 清理操作导致 verify 任务失败 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7857
* perf(acp): 在会话创建后预加载 providers by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7767
* test(channels): 在 CI 中运行飞书、微信和 qqbot 测试套件 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7853
* feat(autofix): 对确定性拒绝重试一次 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7796
* fix(release): 发布所有 channel 包,而不仅仅是 channel-base by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7845
* feat(web-shell): 添加 Channel 管理页面 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7793
* feat(acp): 添加会话级运行时 MCP by @qqqys in https://github.com/QwenLM/qwen-code/pull/7847
* feat(core): 持久化并回放 Goal v3 状态 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7815
* feat(core): 添加全分辨率图片缩放工具 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7809
* fix(scripts): 强化重试分类逻辑并保留超时错误上下文 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7854
* feat(web-shell): 添加 composer 底部渲染器 by @dreamWB in https://github.com/QwenLM/qwen-code/pull/7856
* fix(core): 对永久性配额耗尽的 429 错误快速失败,而非静默重试 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7842
* fix(web-shell): 隔离历史记录与会话草稿 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7810
* fix(triage): 在归咎于 PR 之前,先对瞬态 npm ci 失败进行重试 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7884
* fix(webui): 在转录分页锚点回退到 history_truncated 标记的 recordId by @wenshao in https://github.com/QwenLM/qwen-code/pull/7829
* feat: 将会话写入者租约限制为可选加入 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7894
* fix(review): 将剩余时间预算分配给 review 重试 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7852
* fix(integration): 为已提交提示词来源测试配置 Docker 沙箱网络 (#7879) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7881
* fix(cli): 报告真实的 $0.00 成本而非 N/A by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7784
* fix(core): 拒绝 socks5h 和 socks4a 代理 URL by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7786
* fix(core): 修正 checkContentLoop 中的字符类 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7788
* fix(web-shell): 使仅带索引的 /copy 命令生效 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7789
* fix(core): 拒绝 -i 不在末尾的合并 sed 标志 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7790
* fix(core): 将 Grep 模式通过 -e 传递,以避免前导连字符被误认为选项 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7863
* feat(ci): 通过在现有 issue 上评论来去重 E2E 失败问题 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7792
* fix(core): 像其他 getErrorMessage 路径一样限制裸 Error 的消息长度 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7865
* fix(cli): 使 wrapToVisualLines 像其兄弟函数一样计算零宽字符 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7873
* fix(core): 将分隔符和省略号计入预览预算 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7874
* fix(cli): 在重新打开分割围栏时不计算不完整的末尾行 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7875
* fix(cli): 使 /copy <message> <index> 命令选择代码块 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7883
* feat(triage): 添加 revert-pattern 高风险路径检测 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7414
* feat(web-shell): 添加原生工作区文件夹选择器 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7849
* feat(web-shell): 添加 Channel 配置流程 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7893
* fix(test): 恢复首次输出基准测试的测量有效性并修正其制品 schema by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7820
* fix(daemon): 强化 Todo Stop Guard 的延续逻辑 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7821
* fix(core): 从公共 git 目录读取 stash reflog by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7774
* fix(core): 在 toOpenAPI30 中保留 Draft 4 布尔值互斥边界 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7782
* fix(core): 将 maxDepth 应用于扁平格式内存导入 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7851
* fix(core): 渲染思考部分的推理内容而非布尔标志 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7866
* fix(core): 为纯文本模型桥接工具结果图片 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/7484
* fix(cli): 修补 ink 以在间接子树移除时清除 staticNode by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7816
* fix(core): 在 API 调用期间自动重试临时网络错误 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7898
* fix(cli): 隐藏来自之前轮次的过期粘性待办事项 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7900
* fix(serve): 在关闭时释放托管会话写入器锁 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7812
* perf(core): 在稳定的系统前缀上添加早期 Anthropic 缓存断点 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/7912
* fix(cli): 为 git 分支名称显示添加轮询回退机制 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7830
* fix(cli): 从 @mention 工具卡片中移除冗余的“Read file”前缀 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7902
* feat(core): 添加 ARMS 会话用户 ID by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7921
* fix(safe-mode): 保留调用方提供的顶级 MCP 服务器 by @VitaliBabkin in https://github.com/QwenLM/qwen-code/pull/7827
* fix(ci): 保持 main 分支上合并后的 E2E 信号存活 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7795
* fix(core): 当输出流无法刷新时跳过刷新等待 by @ComplexSimply in https://github.com/QwenLM/qwen-code/pull/7905
* fix(core): 在 splitCommands 中追踪命令替换内的引号 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7870
* fix(core): 将各服务器及各工具的 always-allow 结果计为批准 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7869
* fix(web-shell): 开始新聊天时向主机报告预期工作区 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7910
* fix(cli): 默认使用虚拟化终端历史记录 by @ZevGit in https://github.com/QwenLM/qwen-code/pull/5738
* fix(ci): 在清理过程中恢复工作区所有权以防止 EACCES 错误 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7931
* perf(ci): 将 E2E 测试套件运行时间从约 40 分钟缩短至约 24 分钟 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7798
* feat(channels): 在守护进程会话中暴露循环工具 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7891
* fix(review): 当未重新线程化 --effort 时恢复已解决的 effort by @wenshao in https://github.com/QwenLM/qwen-code/pull/7855
* feat(web-shell): 支持语音保持模式 by @callmeYe in https://github.com/QwenLM/qwen-code/pull/7839
* feat(web-shell): 管理 Channel 配对请求 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7909
* feat(channels): 按原因分发 GitHub 通知 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7826
* feat(web-shell): 添加 git 分支选择器、提交对话框和创建 PR 流程 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7731
* feat(triage): 在 CI 路径上展示沙盒通道 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7917
* fix(scripts): 精简发布说明模型提示词并记录请求耗时 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7941
* feat(web-shell): 为旁支问题建议 BTW by @carffuca in https://github.com/QwenLM/qwen-code/pull/7935
* fix(release): 在发布版本升级期间将 channel-base 依赖固定为精确版本 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7953
* feat(triage): 使验证报告支持中文可读 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7918
* fix(triage): 使构建过程守卫具备可诊断性和僵尸进程感知能力 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7858
* fix(ci): 为每个作业提供独立的代理包装目录 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7951
* feat(autofix): 在五轮修改后延迟建议 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7913
* feat(core): 将 Goal v3 连接到回合引擎 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7895
* feat(core): 限制图像读取以实现可靠缩放 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7911
* fix(integration): 根据环境变量超时时间动态调整交互式先读后写等待时间 (#7942) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7943
* test(integration): 修复 asyncGenerator canUseTool 内容断言的不稳定问题 (#7937) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7939
* fix(ci): 在检出前清理过期的 .qwen/ 目录以防止权限拒绝 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7977
* feat(triage): 将“未验证”语句设为机械式 2b-bis 触发器 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7965
* fix(ci): 恢复验证工作区权限 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7992
* feat(external-context): 添加已提交提示词的自动召回功能 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7877
* fix(ci): 更新 ECS 运行器使用的 Qwen 二进制文件 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8000
* feat(web-shell): 使用 markdown-chart 渲染流式图表 by @zhangxy-zju in https://github.com/QwenLM/qwen-code/pull/7916
* feat: 增强 ripgrep 的健壮性 by @water-in-stone in https://github.com/QwenLM/qwen-code/pull/7888
* fix(core): 标记从未扩展过项目预算的文件夹 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7868
* fix(feishu): 确保代码块分块保持在消息大小限制内 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7850
* fix(web-shell): 在会话 URL 中保留 token 和基础路径 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7926
* ci: 添加独立的 DSW SWE-bench 发布流水线 by @DennisYu07 in https://github.com/QwenLM/qwen-code/pull/7656
* fix(web-shell): 优化频道配对请求 by @qqqys in https://github.com/QwenLM/qwen-code/pull/7997
* fix(cli): 修正全屏模式下硬件光标偏移一位的问题 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7998
* fix(cli): 防止 Windows 上 SGR 鼠标事件被误吞为粘贴操作 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7988
* feat(channels): 添加钉钉交互卡片 by @BenGuanRan in https://github.com/QwenLM/qwen-code/pull/6930
* feat(web-shell): 完善高级表格控件 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7999
* fix(serve): 允许对大型文本文件进行有界读取 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7947
* fix(web-shell): 在卡片中优先使用制品类型元数据 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7973
* fix(web-shell): 降低 Composer 输入延迟 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8015
* fix(webui): 稳定会话历史分页 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8001
* fix(release): 当上一版本与目标分叉时跳过 notes-start-tag (#7969) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7970
* fix(sdk): 将守护进程浏览器包预算提升至 177KB by @wenshao in https://github.com/QwenLM/qwen-code/pull/8024
* fix(cli): 将 Kitty Super (Command) 修饰键映射为 meta by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7996
* fix(daemon): 区分正在排队的频道工作器诊断信息 by @destire-mio in https://github.com/QwenLM/qwen-code/pull/7932
* feat(triage): 在验证评论中前置定性结论,折叠中文内容 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7974
* fix(review): 在 build-test 安装和构建前预检可用磁盘空间 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7986
* test(integration): 将不稳定的 E2E 测试迁移至 fake-openai-server by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7934
* feat(triage): 在清理工作区后于 ECS 上运行外部 /verify by @wenshao in https://github.com/QwenLM/qwen-code/pull/7985
* fix(cli): 保留 Ctrl+Shift+C 用于终端复制,而非退出/清屏 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8011
* fix(core): 自动记录制品文件写入 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7914
* fix(cli): MCP 提示补全不再阻塞可选参数的 Enter 键 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7995
* feat(hooks): 添加 security.allowPrivateNetworkHooks 以允许可信作用域绕过 SSRF 范围检查 by @xurik in https://github.com/QwenLM/qwen-code/pull/7968
* feat(web-shell): 添加带溢出处理的分割窗格头部操作插槽 by @samuelhsin in https://github.com/QwenLM/qwen-code/pull/7808
* feat(channels): 添加 GitLab 轮询频道适配器 by @OrbitZore in https://github.com/QwenLM/qwen-code/pull/7862
* fix(channels): 在守护进程会话中禁用原生 cron by @qqqys in https://github.com/QwenLM/qwen-code/pull/8034
* feat(channels): 添加配对审批管理 API by @qqqys in https://github.com/QwenLM/qwen-code/pull/8045
* feat(github-channel): 过滤通知原因 by @xianjianlf2 in https://github.com/QwenLM/qwen-code/pull/8031
* fix(channels): 拒绝不可用的 GitHub 自允许列表 by @zjunothing in https://github.com/QwenLM/qwen-code/pull/8055
* fix(core): 从 send_message 工具模式中移除顶层 oneOf by @netbrah in https://github.com/QwenLM/qwen-code/pull/7989
* fix(cli): 防止调整大小重绘引发滚动风暴 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8009
* feat(review): 将针对非平凡差异的“零问题通过”判定为低信号 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7987
* fix(core): 恢复时重新绑定 fork 能力 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/7927
* feat(core): 在上下文窗口阈值内预加载延迟工具 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/7922
* fix(channels): 使 GitHub 最终响应发布仅执行一次 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8033
* fix(ci): 在 PR 审查作业的 checkout 前恢复工作区所有权 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8062
* fix(release): 将预览版基准版本提升至已发布的稳定版之上 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7978
* test(web-shell): 扩大已恢复历史分页回归测试覆盖范围 by @PratikWayase in https://github.com/QwenLM/qwen-code/pull/7907
* fix(serve): 添加认证会话写入器交接 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7976
* test(integration): 测量即时提示分发阶段 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7994
* fix(core): 允许在仅思考阶段重试传输流 by @ComplexSimply in https://github.com/QwenLM/qwen-code/pull/7938
* fix(github-channel): 验证并文档化 reasonFilter by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8035
* fix(core): 防止输出截断时因中日韩字符导致的 char/4 计数不足 by @zambalee in https://github.com/QwenLM/qwen-code/pull/7963
* fix(core): 在工具调用轮次间保持活跃的 Todo 上下文 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7919
* feat(review): 添加 `review run` —— 支持机器可读结论的无头审查 by @wenshao in https://github.com/QwenLM/qwen-code/pull/7983
* fix(cli): 在工作区入口标记 QWEN_CODE_CLI 并发布 QWEN_CODE_MODEL by @wenshao in https://github.com/QwenLM/qwen-code/pull/7993
* feat(verify-pr): 新增维护者验证轮次中的七种技巧 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8010
* feat(triage): 将 /verify 智能体预算从 25m 提升至 120m by @wenshao in https://github.com/QwenLM/qwen-code/pull/8014
* fix(autofix): 累计超时熔断机制、精简重试提示、优化交接话术 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8044
* feat(autofix): 每第十轮推送后发布接管里程碑摘要 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8046
* fix(autofix): 由命令自身发布接管交互确认 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8043
* test(e2e): 在偶发子智能体用例中强制委派 (#8070) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8073
* fix(web-shell): 稳定增强型表格控件 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8041
* feat(github-channel): 新增临时工作反应状态 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8061
* fix(integration): 使交互式先读后写测试确定性化 (#8060) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8064
* feat(autofix): 降低空闲候选项的扫描检查频率 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8049
* fix(web-shell): 显示待处理消息的服务器队列状态 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8065
* fix(web-shell): 优化制品预览 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8078
* feat(triage): 使 /verify 证据截图功能真正可用 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8016
* fix(ci): 在分配运行器前拦截附件守卫 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8095
* fix(web-shell): 翻译旧版 /skills 调用 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8103
* fix(verify-pr): 在范围选择中预算证据捕获 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8104
* fix(web-shell): 显示提示词发送失败及重试操作 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8106
* fix(web-shell): 使问题提交支持重试 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8096
* fix(web-shell): 保留已批准的工具备用结果 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8099
* fix(autofix): 在 PR 上回复轮次上限拒绝通知,而非仅记录在日志中 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8067
* fix(autofix): 通过合并移动后的 HEAD 并重试来挽救竞态失败的推送 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8042
* feat(autofix): 在仅关键模式(Critical-only)下按来源设置反馈预算 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8071
* feat(core): 标记 UserPromptSubmit 钩子上下文并记录显示溯源 by @zjgzx1988 in https://github.com/QwenLM/qwen-code/pull/7956
* fix(core): 在会话关闭期间中止工作流 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8107
* fix(test): 解决 setModel E2E 测试中结果消息的轮次完成问题 (#8072) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8075
* feat(serve): 按字节游标对大型文本文件进行分页 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8002
* fix(test): 为多模型 E2E 轮次增加更多 CI 超时缓冲时间 (#8108) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8111
* fix(serve): 防止重复扫描工作区技能 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8080
* feat(review): 在测试效能中引入语句级变异探针 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8020
* feat(web-shell): 新增上下文任务面板 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7929
* feat(agent): 新增 fork 工具执行白名单 by @destire-mio in https://github.com/QwenLM/qwen-code/pull/8066
* fix(serve): 隔离守护进程会话维护写入器 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7975
* fix(serve): 通过工作区会话服务路由侧任务回滚以恢复构建 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8144
* fix(web-shell): 隔离 worktree 会话执行 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8068
* feat(web-shell): 管理配对审批 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8081
* fix(test): 允许权限模式 E2E 响应较慢 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8149
* fix(test): 使自动编辑权限 E2E 测试确定性化 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8154
* feat(web-shell): 增强编辑器与空会话动画 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8098
* fix(web-shell): 限制会话详情显示范围并新增复制操作 by @dreamWB in https://github.com/QwenLM/qwen-code/pull/8127
* feat(hooks): 在生命周期钩子负载中包含会话来源 by @xurik in https://github.com/QwenLM/qwen-code/pull/8155
* feat(review): 审查工作流 PR 时检查缓存身份 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8205
* fix(cli): 允许无需 bearer token 的临时工作区 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8204
* feat(channels): 按工作区隔离守护进程适配器状态 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8178
* fix(test): 将 setPermissionMode E2E 超时路由至 TEST_TIMEOUT 处理 (#8133) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8135
* refactor(web-shell): 简化插件页面操作按钮标签 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8174
* feat(verify-pr): 发布一键捕获辅助工具 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8114
* fix(github-channel): 重试明确无法写入的投递 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8087
* fix(core): 兼容对话记录时间戳偏移 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7886
* feat(anthropic): 支持扩展的 1 小时 cache_control TTL by @netbrah in https://github.com/QwenLM/qwen-code/pull/8048
* fix(cli): 为 @ 补全标签切换添加 Ctrl+Tab 替代方案 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8074
* fix(cli): 通过添加 uncaughtException 处理器和错误可见性来防止 VP 模式静默崩溃 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8088
* fix(core): 当标记无法容纳时,确保 compactString 不超过限制 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7872
* feat(ci): 当 CLI 入口被提升(hoisted)到代码块中时,使启动包检查失败 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8203
* fix(web-shell): 将内置代理类型名称本地化为 zh-CN by @wenshao in https://github.com/QwenLM/qwen-code/pull/8209
* fix(release): 保持说明锚定并限制发布正文长度 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8199
* fix(core): 移除助手轮次的预填充内容,并修复 4.6+ 模型上 thinking.display 的问题 by @netbrah in https://github.com/QwenLM/qwen-code/pull/8040
* fix(anthropic): 在混合内容用户消息中将 tool_result 块移至首位 by @netbrah in https://github.com/QwenLM/qwen-code/pull/8165
* fix(anthropic): 清理 tool_use.id / tool_result.tool_use_id by @netbrah in https://github.com/QwenLM/qwen-code/pull/8164
* feat(gitlab-channel): 代理工作时添加瞬态 👀 奖励表情 by @OrbitZore in https://github.com/QwenLM/qwen-code/pull/8119
* feat(core): 规范化工具调用终端遥测数据 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8176
* fix(web-shell): 为长模型名称自适应调整下拉菜单宽度 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8220
* refactor(core): 提取工作流运行所有权逻辑 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8140
* fix(integration-tests): 稳定异步 SDK MCP 工具处理程序的 E2E 测试 (#8222) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8223
* fix(test): 隔离 worktree 符号链接测试的临时同级目录 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8228
* fix(cli): 从四舍五入后的数值而非原始字节数中选择内存单位 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7871
* fix(core): 防止子代理向用户发起询问 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8219
* feat(hooks): 添加 SessionDelete 事件 by @xurik in https://github.com/QwenLM/qwen-code/pull/8059
* fix(core): 在 splitCompoundCommand 中将裸 & 视为命令边界 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7864
* feat(serve): 在 POST /session 中支持调用方提供的 sessionId by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7836
* feat(cli): 在流式传输期间运行安全的斜杠命令 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8130
* fix(cli): 在 macOS 上为剪贴板图片粘贴添加 Option+V 快捷键 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8120
* feat(core): 添加主机工具调用守卫 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8032
* feat(core): 添加 GenAI 首块时间追踪 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8150
* fix(ui): 在对话框过渡期间抑制过时的鼠标事件 by @kagura-agent in https://github.com/QwenLM/qwen-code/pull/8089
* docs: 基于外部判断服务的 PreToolUse HTTP 钩子工作示例 by @babyblueviper1 in https://github.com/QwenLM/qwen-code/pull/8202
* test(integration): 将 acp-cron 迁移至 fake-openai-server (#8076) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8082
* fix(ci): 避免验证捕获颜色冲突 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8236
* fix(serve): 按选定工作区隔离托管内存 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8056
* fix(web-shell): 保持粘贴文本可见 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8230
* fix(autofix): 保护审查线程解析 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8231
* test(e2e): 在不稳定的子代理用例中继承套件超时设置 (#8244) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8246
* fix(autofix): 将建议处理扩展至十轮 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8247
* feat(triage): 在 Pull Request 上执行 /triage 时同步启动 verify 流水线 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8249
* feat(daemon): 将默认最大会话数从 20 提升至 32 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8235
* fix(core): 从纯文本内容中恢复 XML 风格工具调用 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8037
* test(e2e): 跳过两个模型不稳定的 SDK E2E 用例 (#8256) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8259
* feat(web-shell): 添加工件下载功能 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8234
* feat(memory): 在分叉 Dream 期间保护已固定文件 by @destire-mio in https://github.com/QwenLM/qwen-code/pull/7714
* fix(external-context): 加固 MCP 依赖 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8206
* fix(anthropic): 去重共享同一 tool_use_id 的重复 tool_result 块 by @netbrah in https://github.com/QwenLM/qwen-code/pull/8163
* fix(web-shell): 静默后台任务轮询失败 by @han-dreamer in https://github.com/QwenLM/qwen-code/pull/7923
* fix(channel): 唤醒后恢复 ACP 桥接 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8211
* refactor(core): 传递描述符而非派生文本读取辅助函数 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7967
* fix(cli): 在早期输入捕获中过滤 SGR 鼠标转义序列 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8268
* feat(core): 添加项目级 fork 配置文件 by @destire-mio in https://github.com/QwenLM/qwen-code/pull/8148
* feat(skills): 添加已禁用技能等级 by @zhangxy-zju in https://github.com/QwenLM/qwen-code/pull/8057
* fix(cli): 稳定思考块高度,用内联 Ctrl+O 切换替换转录覆盖层 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8077
* feat(autofix): 将本地和 CI 流程统一为一个技能 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8121
* fix(cli): 完善跨入口点的图片路由 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7206
* fix(integration): 在 acp-cron 测试中使用 QWEN_CODE_TEST_CRON_FAST (#8237) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8243
* fix(anthropic): 当 tool_use 成为孤儿时,级联剥离陈旧的同级思考节点 by @netbrah in https://github.com/QwenLM/qwen-code/pull/8166
* fix(web-shell): 在窄消息中压缩高级表格 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8264
* fix(web-shell): 恢复后稳定移动端编辑器 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8263
* fix: 使测试套件在 Windows 上可移植 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8050
* fix(triage): 将 verify 报告渲染为清理后的 markdown,而非转义的 pre 转储 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8147
* feat(workflows): 提升工作流代理审批 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8240
* refactor(cli): 移除 ACP 私有服务依赖 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8141
* fix(web-shell): 按会话隔离自动摘要 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8262
* feat(verify): 扫描同级形状、校准回放、测量建议修复 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8242
* fix(triage): 用双语说明重跑摘要的测量内容 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8273
* fix(ci): 增强自托管运行器工作区所有权恢复 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8115
* feat(skills): 添加自动技能策展人 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/7846
* feat(review): 测试计划声明检查、基础树 A/B 测试框架、逐块探针 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8215
* fix(web-shell): 去重具有相同显示标签的权限选项 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8250
* feat(verify): 检查接收端,并将空结果与未测量结果分离 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8295
* fix(vscode): 在通知生成器中遍历已解析的不同版本 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8272
* feat(cli): 添加代理视图主管运行时 by @ZijianZhang989 in https://github.com/QwenLM/qwen-code/pull/7799
* fix(qqbot): 在群消息提示中暴露完整的发送者 openid by @Eric-GoodBoy-Tech in https://github.com/QwenLM/qwen-code/pull/8233
* fix(autofix): 声明主代理预算并使用步骤的剩余空间 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8257
* feat(review): 在归属信息中包含 CLI 版本 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8294
* test(sdk-typescript): 使 abort-signal canUseTool 端到端测试确定性化 (#8297) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8300
* feat(web-shell): 支持可变默认的中途消息 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8229
* feat: 可视化普通会话计划执行 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7580
* feat(cli): 添加 /model --compaction 以支持可配置的聊天压缩模型 by @Aleks-0 in https://github.com/QwenLM/qwen-code/pull/7818
* feat(cli): 在交互式 TUI 中采用 Goal v3 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8005
* feat(workflows): 支持可选后台运行 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8303
* feat(review): 测量失败归属、轮次账本、更丰富的变异体、文档一致性 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8218
* perf(core): 在文件搜索爬虫中对祖先目录忽略查找进行缓存 by @dexhunter in https://github.com/QwenLM/qwen-code/pull/8253
* feat(cli): 添加 TUI 图像显示工具 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8217
* test(web-shell): 将区域设置传递给审批渲染器 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8314
* fix(cli): 添加 ui.mouseTracking 设置以恢复右键和 URL 点击 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8198
* Fix: 修复从符号链接目录加载扩展时 ACP 启动失败的问题 by @Wchoi189 in https://github.com/QwenLM/qwen-code/pull/8309
* docs(web-shell): 按功能区域组织设计文档 by @water-in-stone in https://github.com/QwenLM/qwen-code/pull/8304
* fix(webui): 使长工具输出可折叠 by @destire-mio in https://github.com/QwenLM/qwen-code/pull/8251
* feat(review): 渲染裁决、工作流步骤提取、三种验证透镜 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8225
* docs: 记录技能学习与热重载 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8298
* feat(review): 从 Claude /review 借鉴召回机制、修复循环及基于大小的预算 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8315
* feat(review): 在提交的审查正文中携带轮次账本 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8255
* feat(review): 提炼的规范机制 —— 有效差异守卫、阳性对照、七种透镜 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8261
* test(sdk-typescript): 使编排端到端测试确定性化 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8312
* docs: 完善 TUI 键盘快捷键参考文档 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8327
* fix(core): 解决超长对话轮次导致的历史记录分页阻塞问题 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8335
* fix(ci): 在 triage 动作前确保安装 qwen CLI,避免重复安装 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8337
* fix(review): 修复自身测试失败的变异测试用例无法被正确淘汰的问题 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8345
* fix(core): 从分叉的子代理历史中隐藏同级指令 by @harjothkhara in https://github.com/QwenLM/qwen-code/pull/8344
* feat(cli): /summary 命令支持自定义导出路径 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8116
* ci: 将合并操作限制为通过确定性无 AK 端到端测试 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8313
* fix(todo): 在非活跃计划外保留兼容性 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8334
* docs: 更新架构概览 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8325
* feat(review): 向验证器传授“证伪而非验证”的非对称逻辑 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8346
* test(sdk-typescript): 使权限控制端到端测试具备确定性 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8302
* ci: 在稳定发布时自动更新 ECS 运行器并加固更新任务 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8343
* fix(sdk-java): 在 E2E 清理阶段接受 ERROR 终端状态以修复不稳定的竞态条件 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8354
* feat(review): 驱动模块 — 就绪状态轮询、完成证明、清理保障 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8349
* fix(core): 在聊天压缩期间复用提示词缓存 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8339
* fix(cli): 允许粘贴敏感扩展设置 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8342
* feat(serve): 解析并报告守护进程的内存预算 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8245
* test(extension): 防止手写投影与存储时钟发生竞态 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8362
* docs: 补充压缩机制与图像模型选择的文档 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8348
* fix(github-channel): 恢复被中断的入站任务 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8306
* feat(review): Mock 提供程序 — 协议即固定装置,答案由你掌控 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8355
* test(review): 将驱动模块的限流流测试用例绑定至其不变量,而非 bash 5.2 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8366
* feat(desktop): 将 Web Shell 打包为可发布的桌面应用 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8132
* fix(core): 重试泄露的 JSON 工具协议输出 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8301
* feat(serve): 使子会话并发上限可配置 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8341
* fix(ci): 向 GitHub 查询 PR 的实际变更,而非基础分支的增量 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8372
* fix(ci): 在更新器变更后触发 ECS 运行器重新同步 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8373
* feat(ci): 添加仓库规范技能与每周巡检工作流 by @ZijianZhang989 in https://github.com/QwenLM/qwen-code/pull/7908
* docs(review): 告知代理驱动模块和 Mock 提供程序的存在,以及修复测试如何获得其位置 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8369
* feat(ci): 为 PR 审查任务添加基于代码量的默认超时设置 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8377
* fix(review): 在提示行和保存报告中遵循输出语言 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8370
* feat(channels): 为 GitHub 和 GitLab 添加 Web Shell 管理支持 by @OrbitZore in https://github.com/QwenLM/qwen-code/pull/8310
* fix(cli): 为审查运行子进程重新标记 QWEN_CODE_CLI by @wenshao in https://github.com/QwenLM/qwen-code/pull/8378
* fix(core): 恢复被 Socket 层关闭截断的长流 by @LHMQ878 in https://github.com/QwenLM/qwen-code/pull/7896
* test(integration): 按来源而非系统时钟选择 acp-cron 通知 (#8333) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8336
* fix(external-context): 释放 Auto Recall 代理调度器 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8352
* feat(review): 将证据图片发布至用户指定的资源仓库 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8351
* fix(review): 读取共存测试未通过的原因,而非直接断言 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8374
* fix(review): 若基础分支已失败,则保持 Critical 级别 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8380
* feat(cli): 在 /review 命令中添加 Java/JVM 性能路径规则 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8379
* feat(ci): 扩展 packages/core 的代码所有者池 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8347
* feat(web-shell): 将会话工作流置于实验性设置开关后 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8391
* feat(cli): 在非交互模式下采用 Goal v3 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8324
* fix(review): 降低 Maven 生成测试源码的优先级 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8405
* feat(memory): 配置后台代理的轮次限制 by @tomatotomata in https://github.com/QwenLM/qwen-code/pull/8171
* feat(desktop): 引导 Electron 用户迁移至 Tauri 更新 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8392
* fix(web-shell): 防止表格对话框关闭时发生滚动跳变 by @carffuca in https://github.com/QwenLM/qwen-code/pull/8407
* ci: 移除损坏的旧版定时 PR 分类工作流 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8434
* feat(telemetry): 跟踪工具执行结果 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8180
* fix(core): 明确 write_file 的预先读取指导 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8428
* fix(desktop): 从 LocalAppData 读取 Windows 冒烟测试日志 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8381
* fix(core): 避免重放不安全的 MCP 工具调用 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8387
* fix(core): 在证据目录耗尽后停止 Goal 重试 by @qqqys in https://github.com/QwenLM/qwen-code/pull/8430
* fix(review): 将已偏离但已交付的启动项排除在修复循环之外 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8466
* feat(review): 添加结构化的 Web Shell 审查结果 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8402
* ci: 减少 SDK Java 运行器的排队 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8441
* fix(core): 使 MCP 重连超时测试与安全的重放策略保持一致 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8478
* feat(core): 支持 Qwen 3.8 推理力度 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8472
* fix(ci): 使审查工作流测试与外部化的超时变量保持一致 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8486
* feat(browser-ext): 添加 Alpha 就绪诊断 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/6739
* docs: 记录无头 Goal 工作流 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8503
* feat(core): 引导将 PR、Issue 和评论 URL 记录为工件 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8453
* ci: 将受信任作者的分叉 PR 和无检出作业路由到 ECS 池 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8502
* fix(web-shell): 保持待处理的后台代理处于活动状态 by @carffuca in https://github.com/QwenLM/qwen-code/pull/8413
* fix(desktop): 轮换 Tauri 更新程序签名密钥 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8511
* fix(web-shell): 在 Firefox 中为消息内容添加显式的 ::selection 样式 by @C0d3N1nja97342 in https://github.com/QwenLM/qwen-code/pull/8417
* refactor(core): 将审查技能事件叙述移至 DESIGN.md by @wenshao in https://github.com/QwenLM/qwen-code/pull/8499
* fix(core): 加固 Qwen 3.8 推理力度接口定义 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8488
* perf(review): 在一次响应中发出独立的设置调用 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8487
* fix(review): 在仍有时间报告时停止反向审计循环 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8468
* fix(autofix): 将分页获取规范化为每个文件一个扁平数组 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8438
* feat(web-shell): 将计划审批绑定到其 Todo 修订版 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8393
* fix(core): 按类型解决 DashScope thinking-knob 冲突(#8488 第二轮) by @wenshao in https://github.com/QwenLM/qwen-code/pull/8536
* fix(cli): 停止审查 test-efficacy 测试依赖环境 tmpdir vitest by @wenshao in https://github.com/QwenLM/qwen-code/pull/8537
* feat(serve): 添加必需的外部工具守卫提供程序 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8125
* fix(desktop): 在 Tauri 构建前为 ripgrep 和 node 二进制文件签名 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8518
* fix(core): 复用提示词缓存以进行多模态压缩 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8419
* fix(cli): 在页脚中保留 Qwen Review 启动版本 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8431
* fix(serve): 检测整个文件的 lineEnding,而非返回的切片 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8383
* perf(core): 将工具结果清理至低水位线以保留提示词缓存 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8464
* feat(review): 基于磁盘上已有记录的成本账本 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8471
* fix(review): 按内容而非名称接受证据图片——通过魔术字节嗅探 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8459
* test(ci): 使 resolve-workflow 超时预期与外部化变量保持一致(#8460 后续) by @wenshao in https://github.com/QwenLM/qwen-code/pull/8485
* fix(ci): 取消后清理审查工作树 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8474
* fix(webui): 在实时日志截断后恢复完整轮次 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8414
* fix: 向 proper-lockfile 调用添加 onCompromised 处理程序以防止守护进程崩溃 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8442
* perf(autofix): 每次扫描仅构建一次审查 CLI 包,并分发至各阶段 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8548
* perf(review): 在反向审计中弃用 dry chunks 和管道验证 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8498
* chore(cua-driver): 同步上游 v0.17.0 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/8564
* feat(web-shell): 添加原生 Live Voice 功能 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/7859
* fix(release): 复用已配置的 Apple 签名密钥 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/8574
## 新贡献者
* @VitaliBabkin 在 https://github.com/QwenLM/qwen-code/pull/7827 中首次贡献
* @xianjianlf2 在 https://github.com/QwenLM/qwen-code/pull/8031 中首次贡献
* @zambalee 在 https://github.com/QwenLM/qwen-code/pull/7963 中首次贡献
* @babyblueviper1 在 https://github.com/QwenLM/qwen-code/pull/8202 中首次贡献
* @Wchoi189 在 https://github.com/QwenLM/qwen-code/pull/8309 中首次贡献
* @LHMQ878 在 https://github.com/QwenLM/qwen-code/pull/7896 中首次贡献
* @tomatotomata 在 https://github.com/QwenLM/qwen-code/pull/8171 中首次贡献
**完整更新日志**: https://github.com/QwenLM/qwen-code/compare/dsw-manual-poc-20260727-1...desktop-v0.1.0
<!-- Release notes generated using configuration in .github/release.yml at 93cd0190882b3e17ff5f48584119fe10a7456d90 -->
## What's Changed
* fix(ci): add default bash shell to container jobs in qwen-triage by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7838
* fix(web-shell): preserve pasted text in composer by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7824
* feat(web-shell): add monitor task details by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7817
* fix(ci): add git safe.directory for container jobs by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7843
* fix(ci): add --init to container jobs to reap zombie processes by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7848
* fix(core): wait for output stream flush before settling background shells by @ComplexSimply in https://github.com/QwenLM/qwen-code/pull/7833
* fix(scripts): retry model calls and surface degraded release notes by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/7535
* feat(web-shell): Scope voice to composer workspace by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7754
* feat(hooks): Add submitted prompt provenance by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7762
* fix(ci): prevent worktree cleanup from failing the verify job by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7857
* perf(acp): Preload providers after session creation by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7767
* test(channels): run the feishu, weixin and qqbot suites in CI by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7853
* feat(autofix): retry deterministic rejection once by @qqqys in https://github.com/QwenLM/qwen-code/pull/7796
* fix(release): publish all channel packages, not just channel-base by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7845
* feat(web-shell): add Channel management page by @qqqys in https://github.com/QwenLM/qwen-code/pull/7793
* feat(acp): add session-scoped runtime MCP by @qqqys in https://github.com/QwenLM/qwen-code/pull/7847
* feat(core): persist and replay Goal v3 state by @qqqys in https://github.com/QwenLM/qwen-code/pull/7815
* feat(core): add full-resolution image zoom tool by @qqqys in https://github.com/QwenLM/qwen-code/pull/7809
* fix(scripts): harden retry classification and preserve deadline error context by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7854
* feat(web-shell): add composer footer renderer by @dreamWB in https://github.com/QwenLM/qwen-code/pull/7856
* fix(core): fast-fail permanent quota-exhaustion 429s instead of silent retry by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7842
* fix(web-shell): isolate history and session drafts by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7810
* fix(triage): retry a transient npm ci before blaming the PR for it by @wenshao in https://github.com/QwenLM/qwen-code/pull/7884
* fix(webui): fall back to history_truncated marker recordId for transcript pagination anchor by @wenshao in https://github.com/QwenLM/qwen-code/pull/7829
* feat: Gate session writer lease behind opt-in by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7894
* fix(review): give the review retry the remaining time budget by @wenshao in https://github.com/QwenLM/qwen-code/pull/7852
* fix(integration): configure Docker sandbox networking for submitted-prompt provenance test (#7879) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7881
* fix(cli): report a genuine $0.00 cost instead of N/A by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7784
* fix(core): reject socks5h and socks4a proxy URLs by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7786
* fix(core): correct the character classes in checkContentLoop by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7788
* fix(web-shell): make /copy with a bare index work by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7789
* fix(core): decline combined sed flags where -i is not last by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7790
* fix(core): pass the Grep pattern behind -e so a leading dash is not an option by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7863
* feat(ci): Deduplicate E2E failure issues by commenting on existing issue by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7792
* fix(core): cap a bare Error's message like every other getErrorMessage path by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7865
* fix(cli): make wrapToVisualLines count zero-width characters like its sibling by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7873
* fix(core): charge the separator and ellipsis to the preview budget by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7874
* fix(cli): do not count a partial trailing line when re-opening a split fence by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7875
* fix(cli): make /copy <message> <index> select the code block by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7883
* feat(triage): add revert-pattern high-risk path detection by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7414
* feat(web-shell): add native workspace folder picker by @qqqys in https://github.com/QwenLM/qwen-code/pull/7849
* feat(web-shell): add Channel configuration flows by @qqqys in https://github.com/QwenLM/qwen-code/pull/7893
* fix(test): Restore first-output benchmark measurement validity and correct its artifact schema by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7820
* fix(daemon): harden Todo Stop Guard continuations by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7821
* fix(core): read the stash reflog from the common git dir by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7774
* fix(core): keep Draft 4 boolean exclusive bounds in toOpenAPI30 by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7782
* fix(core): apply maxDepth to flat-format memory imports by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7851
* fix(core): render a thought part's reasoning instead of the boolean flag by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7866
* fix(core): bridge tool-result images for text-only models by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/7484
* fix(cli): patch ink to clear staticNode on indirect subtree removal by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7816
* fix(core): auto-retry transient network errors during API calls by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7898
* fix(cli): hide stale sticky todos from previous turns by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7900
* fix(serve): Release managed session writer locks on shutdown by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7812
* perf(core): add early Anthropic cache breakpoint on the stable system prefix by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/7912
* fix(cli): add polling fallback for git branch name display by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7830
* fix(cli): remove redundant 'Read file' prefix from @mention tool card by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7902
* feat(core): Add ARMS session user ID by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7921
* fix(safe-mode): preserve caller-supplied top-tier MCP servers by @VitaliBabkin in https://github.com/QwenLM/qwen-code/pull/7827
* fix(ci): keep the post-merge E2E signal on main alive by @wenshao in https://github.com/QwenLM/qwen-code/pull/7795
* fix(core): short-circuit the flush wait when the output stream cannot flush by @ComplexSimply in https://github.com/QwenLM/qwen-code/pull/7905
* fix(core): track quotes inside a command substitution in splitCommands by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7870
* fix(core): count the per-server and per-tool always-allow outcomes as approvals by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7869
* fix(web-shell): report intended workspace to host when starting a new chat by @wenshao in https://github.com/QwenLM/qwen-code/pull/7910
* fix(cli): default to virtualized terminal history by @ZevGit in https://github.com/QwenLM/qwen-code/pull/5738
* fix(ci): restore workspace ownership in cleanup to prevent EACCES by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7931
* perf(ci): cut the E2E suite from ~40min to ~24min by @wenshao in https://github.com/QwenLM/qwen-code/pull/7798
* feat(channels): expose loop tools in daemon sessions by @qqqys in https://github.com/QwenLM/qwen-code/pull/7891
* fix(review): recover the resolved effort when --effort is not re-threaded by @wenshao in https://github.com/QwenLM/qwen-code/pull/7855
* feat(web-shell): honor voice hold mode by @callmeYe in https://github.com/QwenLM/qwen-code/pull/7839
* feat(web-shell): manage Channel pairing requests by @qqqys in https://github.com/QwenLM/qwen-code/pull/7909
* feat(channels): dispatch GitHub notifications by reason by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7826
* feat(web-shell): add git branch picker, commit dialog, and create PR flow by @wenshao in https://github.com/QwenLM/qwen-code/pull/7731
* feat(triage): surface the sandboxed lanes on the CI path by @wenshao in https://github.com/QwenLM/qwen-code/pull/7917
* fix(scripts): slim release-note model prompts and log request timing by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7941
* feat(web-shell): suggest BTW for side questions by @carffuca in https://github.com/QwenLM/qwen-code/pull/7935
* fix(release): pin channel-base dep to exact version during release bump by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7953
* feat(triage): make the verify report readable in Chinese by @wenshao in https://github.com/QwenLM/qwen-code/pull/7918
* fix(triage): make the build-process guard diagnosable and zombie-aware by @wenshao in https://github.com/QwenLM/qwen-code/pull/7858
* fix(ci): give each job its own proxy wrapper directory by @wenshao in https://github.com/QwenLM/qwen-code/pull/7951
* feat(autofix): defer suggestions after five change rounds by @qqqys in https://github.com/QwenLM/qwen-code/pull/7913
* feat(core): connect Goal v3 to the turn engine by @qqqys in https://github.com/QwenLM/qwen-code/pull/7895
* feat(core): bound image reads for reliable zoom by @qqqys in https://github.com/QwenLM/qwen-code/pull/7911
* fix(integration): scale interactive read-then-write waits with env timeout (#7942) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7943
* test(integration): deflake asyncGenerator canUseTool content assertion (#7937) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7939
* fix(ci): clean stale .qwen/ before checkout to prevent Permission denied by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7977
* feat(triage): make the not-verified sentence a mechanical 2b-bis trigger by @wenshao in https://github.com/QwenLM/qwen-code/pull/7965
* fix(ci): restore verify workspace permissions by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7992
* feat(external-context): Add submitted-prompt auto recall by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7877
* fix(ci): update the Qwen binary used by ECS runners by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8000
* feat(web-shell): render streaming charts with markdown-chart by @zhangxy-zju in https://github.com/QwenLM/qwen-code/pull/7916
* feat: robust ripgrep by @water-in-stone in https://github.com/QwenLM/qwen-code/pull/7888
* fix(core): mark folders the item budget never expanded by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7868
* fix(feishu): keep code-fence chunks within the message size limit by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7850
* fix(web-shell): preserve token and base path in session URLs by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7926
* ci: add isolated DSW SWE-bench release pipeline by @DennisYu07 in https://github.com/QwenLM/qwen-code/pull/7656
* fix(web-shell): polish Channel pairing requests by @qqqys in https://github.com/QwenLM/qwen-code/pull/7997
* fix(cli): correct hardware cursor off-by-one in fullscreen mode by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7998
* fix(cli): prevent SGR mouse events from being swallowed as paste on Windows by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7988
* feat(channels): add DingTalk interactive cards by @BenGuanRan in https://github.com/QwenLM/qwen-code/pull/6930
* feat(web-shell): refine advanced table controls by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7999
* fix(serve): allow bounded reads of large text files by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7947
* fix(web-shell): prefer artifact type metadata in cards by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7973
* fix(web-shell): reduce composer input latency by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8015
* fix(webui): stabilize session history pagination by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8001
* fix(release): skip notes-start-tag when previous release diverges from target (#7969) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7970
* fix(sdk): raise daemon browser bundle budget to 177KB by @wenshao in https://github.com/QwenLM/qwen-code/pull/8024
* fix(cli): map Kitty Super (Command) modifier to meta by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7996
* fix(daemon): distinguish draining channel worker diagnostics by @destire-mio in https://github.com/QwenLM/qwen-code/pull/7932
* feat(triage): lead the verify comment with a qualitative verdict, fold the Chinese by @wenshao in https://github.com/QwenLM/qwen-code/pull/7974
* fix(review): preflight free disk before build-test installs and builds by @wenshao in https://github.com/QwenLM/qwen-code/pull/7986
* test(integration): migrate flaky E2E tests to fake-openai-server by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7934
* feat(triage): run external /verify on ECS behind a workspace wipe by @wenshao in https://github.com/QwenLM/qwen-code/pull/7985
* fix(cli): reserve Ctrl+Shift+C for terminal copy, not quit/clear by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8011
* fix(core): auto-record artifact file writes by @chiga0 in https://github.com/QwenLM/qwen-code/pull/7914
* fix(cli): MCP prompt completion no longer blocks Enter for optional params by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7995
* feat(hooks): add security.allowPrivateNetworkHooks to bypass SSRF range checks for trusted scopes by @xurik in https://github.com/QwenLM/qwen-code/pull/7968
* feat(web-shell): add split pane header action slot with overflow by @samuelhsin in https://github.com/QwenLM/qwen-code/pull/7808
* feat(channels): add GitLab polling channel adapter by @OrbitZore in https://github.com/QwenLM/qwen-code/pull/7862
* fix(channels): disable native cron in daemon sessions by @qqqys in https://github.com/QwenLM/qwen-code/pull/8034
* feat(channels): add pairing approval management API by @qqqys in https://github.com/QwenLM/qwen-code/pull/8045
* feat(github-channel): filter notification reasons by @xianjianlf2 in https://github.com/QwenLM/qwen-code/pull/8031
* fix(channels): reject unusable GitHub self-allowlists by @zjunothing in https://github.com/QwenLM/qwen-code/pull/8055
* fix(core): drop top-level oneOf from send_message tool schema by @netbrah in https://github.com/QwenLM/qwen-code/pull/7989
* fix(cli): stop resize repaint from causing scroll storm by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8009
* feat(review): disclose a zero-finding Approve on a non-trivial diff as low signal by @wenshao in https://github.com/QwenLM/qwen-code/pull/7987
* fix(core): rebind fork capabilities on resume by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/7927
* feat(core): preload deferred tools within a context-window threshold by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/7922
* fix(channels): make GitHub final response publication single-shot by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8033
* fix(ci): restore workspace ownership before checkout in PR review job by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8062
* fix(release): bump preview base past published stable by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7978
* test(web-shell): expand restored-history pagination regression coverage by @PratikWayase in https://github.com/QwenLM/qwen-code/pull/7907
* fix(serve): Add certified session writer handoff by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7976
* test(integration): Measure immediate prompt dispatch stages by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7994
* fix(core): allow transport stream retry during the thinking-only phase by @ComplexSimply in https://github.com/QwenLM/qwen-code/pull/7938
* fix(github-channel): validate and document reasonFilter by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8035
* fix(core): guard against CJK-driven char/4 under-count in output clamp by @zambalee in https://github.com/QwenLM/qwen-code/pull/7963
* fix(core): preserve active Todo context across tool turns by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7919
* feat(review): add `review run` — headless review with a machine-readable verdict by @wenshao in https://github.com/QwenLM/qwen-code/pull/7983
* fix(cli): stamp QWEN_CODE_CLI at the workspace entry and publish QWEN_CODE_MODEL by @wenshao in https://github.com/QwenLM/qwen-code/pull/7993
* feat(verify-pr): add seven techniques from maintainer verification rounds by @wenshao in https://github.com/QwenLM/qwen-code/pull/8010
* feat(triage): raise the /verify agent budget from 25m to 120m by @wenshao in https://github.com/QwenLM/qwen-code/pull/8014
* fix(autofix): cumulative timeout breaker, narrowed retry prompt, truthful handoff wording by @wenshao in https://github.com/QwenLM/qwen-code/pull/8044
* feat(autofix): post a takeover milestone digest every tenth pushed round by @wenshao in https://github.com/QwenLM/qwen-code/pull/8046
* fix(autofix): post the takeover engage ack from the command itself by @wenshao in https://github.com/QwenLM/qwen-code/pull/8043
* test(e2e): force delegation in flaky subagent case (#8070) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8073
* fix(web-shell): stabilize enhanced table controls by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8041
* feat(github-channel): add transient working reaction by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8061
* fix(integration): make interactive read-then-write test deterministic (#8060) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8064
* feat(autofix): back off scan inspection of idle candidates by @wenshao in https://github.com/QwenLM/qwen-code/pull/8049
* fix(web-shell): show server queue status for pending messages by @wenshao in https://github.com/QwenLM/qwen-code/pull/8065
* fix(web-shell): improve artifact previews by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8078
* feat(triage): make /verify evidence screenshots actually possible by @wenshao in https://github.com/QwenLM/qwen-code/pull/8016
* fix(ci): gate the attachment guard before it allocates a runner by @wenshao in https://github.com/QwenLM/qwen-code/pull/8095
* fix(web-shell): translate legacy /skills invocations by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8103
* fix(verify-pr): budget evidence capture in scope selection by @wenshao in https://github.com/QwenLM/qwen-code/pull/8104
* fix(web-shell): show prompt send failure and retry action by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8106
* fix(web-shell): make question submission retryable by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8096
* fix(web-shell): preserve approved tool results by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8099
* fix(autofix): answer round-cap refusals on the PR instead of only in logs by @wenshao in https://github.com/QwenLM/qwen-code/pull/8067
* fix(autofix): salvage race-lost pushes by merging the moved head and retrying by @wenshao in https://github.com/QwenLM/qwen-code/pull/8042
* feat(autofix): per-source feedback budget in Critical-only mode by @wenshao in https://github.com/QwenLM/qwen-code/pull/8071
* feat(core): tag UserPromptSubmit hook context and record display provenance by @zjgzx1988 in https://github.com/QwenLM/qwen-code/pull/7956
* fix(core): abort workflows during session shutdown by @qqqys in https://github.com/QwenLM/qwen-code/pull/8107
* fix(test): resolve turn completion on result messages in setModel E2E test (#8072) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8075
* feat(serve): page large text files by byte cursor by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8002
* fix(test): give multi-model E2E turns more CI timeout headroom (#8108) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8111
* fix(serve): Prevent repeated workspace skill rescans by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8080
* feat(review): statement-level mutation probes in test-efficacy by @wenshao in https://github.com/QwenLM/qwen-code/pull/8020
* feat(web-shell): add contextual task panels by @ytahdn in https://github.com/QwenLM/qwen-code/pull/7929
* feat(agent): add fork tool execution allowlist by @destire-mio in https://github.com/QwenLM/qwen-code/pull/8066
* fix(serve): Isolate daemon session maintenance writers by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7975
* fix(serve): restore build by routing side-task rollback through the workspace session service by @wenshao in https://github.com/QwenLM/qwen-code/pull/8144
* fix(web-shell): isolate worktree session execution by @wenshao in https://github.com/QwenLM/qwen-code/pull/8068
* feat(web-shell): manage pairing approvals by @qqqys in https://github.com/QwenLM/qwen-code/pull/8081
* fix(test): allow slow permission mode E2E responses by @wenshao in https://github.com/QwenLM/qwen-code/pull/8149
* fix(test): make auto-edit permission E2E deterministic by @wenshao in https://github.com/QwenLM/qwen-code/pull/8154
* feat(web-shell): enhance composer and empty-session animations by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8098
* fix(web-shell): constrain session details and add copy action by @dreamWB in https://github.com/QwenLM/qwen-code/pull/8127
* feat(hooks): include session source in lifecycle hook payloads by @xurik in https://github.com/QwenLM/qwen-code/pull/8155
* feat(review): check cache identity when reviewing workflow PRs by @wenshao in https://github.com/QwenLM/qwen-code/pull/8205
* fix(cli): allow scratch workspace without bearer token by @wenshao in https://github.com/QwenLM/qwen-code/pull/8204
* feat(channels): isolate daemon adapter state by workspace by @qqqys in https://github.com/QwenLM/qwen-code/pull/8178
* fix(test): route setPermissionMode E2E timeouts through TEST_TIMEOUT (#8133) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8135
* refactor(web-shell): simplify plugin page action button labels by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8174
* feat(verify-pr): ship a one-command capture helper by @wenshao in https://github.com/QwenLM/qwen-code/pull/8114
* fix(github-channel): retry definite no-write deliveries by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8087
* fix(core): Tolerate transcript timestamp drift by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7886
* feat(anthropic): support extended 1h cache_control TTL by @netbrah in https://github.com/QwenLM/qwen-code/pull/8048
* fix(cli): add Ctrl+Tab alternative for @ completion tab switching by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8074
* fix(cli): prevent silent VP-mode crash by adding uncaughtException handler and error visibility by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8088
* fix(core): keep compactString within its limit when the marker does not fit by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7872
* feat(ci): fail the startup bundle check when the CLI entry is hoisted into a chunk by @wenshao in https://github.com/QwenLM/qwen-code/pull/8203
* fix(web-shell): localize built-in agent type names in zh-CN by @wenshao in https://github.com/QwenLM/qwen-code/pull/8209
* fix(release): keep notes anchored and cap the release body by @wenshao in https://github.com/QwenLM/qwen-code/pull/8199
* fix(core): strip assistant-turn prefill and fix thinking.display on 4.6+ models by @netbrah in https://github.com/QwenLM/qwen-code/pull/8040
* fix(anthropic): move tool_result blocks first in mixed-content user messages by @netbrah in https://github.com/QwenLM/qwen-code/pull/8165
* fix(anthropic): sanitize tool_use.id / tool_result.tool_use_id by @netbrah in https://github.com/QwenLM/qwen-code/pull/8164
* feat(gitlab-channel): add transient 👀 award emoji while agent is working by @OrbitZore in https://github.com/QwenLM/qwen-code/pull/8119
* feat(core): Normalize tool-call terminal telemetry by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8176
* fix(web-shell): adaptive dropdown width for long model names by @wenshao in https://github.com/QwenLM/qwen-code/pull/8220
* refactor(core): extract workflow run ownership by @qqqys in https://github.com/QwenLM/qwen-code/pull/8140
* fix(integration-tests): stabilize async SDK MCP tool handler E2E (#8222) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8223
* fix(test): isolate the worktree symlink test's temporary sibling directory by @wenshao in https://github.com/QwenLM/qwen-code/pull/8228
* fix(cli): pick the memory unit from the rounded figure, not the raw bytes by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7871
* fix(core): prevent subagents from asking users by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8219
* feat(hooks): add SessionDelete event by @xurik in https://github.com/QwenLM/qwen-code/pull/8059
* fix(core): treat a bare & as a command boundary in splitCompoundCommand by @chinesepowered in https://github.com/QwenLM/qwen-code/pull/7864
* feat(serve): support caller-supplied sessionId in POST /session by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/7836
* feat(cli): run safe slash commands during streaming by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8130
* fix(cli): add Option+V for clipboard image paste on macOS by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8120
* feat(core): add a host tool invocation guard by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8032
* feat(core): add GenAI time-to-first-chunk tracing by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8150
* fix(ui): suppress stale mouse events during dialog transitions by @kagura-agent in https://github.com/QwenLM/qwen-code/pull/8089
* docs: worked example for a PreToolUse HTTP hook backed by an external judgment service by @babyblueviper1 in https://github.com/QwenLM/qwen-code/pull/8202
* test(integration): migrate acp-cron to fake-openai-server (#8076) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8082
* fix(ci): avoid verify capture color conflict by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8236
* fix(serve): isolate managed memory by selected workspace by @qqqys in https://github.com/QwenLM/qwen-code/pull/8056
* fix(web-shell): keep pasted text visible by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8230
* fix(autofix): guard review thread resolution by @wenshao in https://github.com/QwenLM/qwen-code/pull/8231
* test(e2e): inherit suite timeout in flaky subagent cases (#8244) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8246
* fix(autofix): Extend suggestion handling to ten rounds by @wenshao in https://github.com/QwenLM/qwen-code/pull/8247
* feat(triage): start the verify lane alongside /triage on a pull request by @wenshao in https://github.com/QwenLM/qwen-code/pull/8249
* feat(daemon): raise default max sessions from 20 to 32 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8235
* fix(core): recover XML-style tool calls from plain text content by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8037
* test(e2e): skip two model-flaky SDK E2E cases (#8256) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8259
* feat(web-shell): add artifact downloads by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8234
* feat(memory): protect pinned files during forked Dream by @destire-mio in https://github.com/QwenLM/qwen-code/pull/7714
* fix(external-context): harden MCP dependencies by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8206
* fix(anthropic): dedup duplicate tool_result blocks sharing a tool_use_id by @netbrah in https://github.com/QwenLM/qwen-code/pull/8163
* fix(web-shell): quiet background task polling failures by @han-dreamer in https://github.com/QwenLM/qwen-code/pull/7923
* fix(channel): recover ACP bridge after wake by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8211
* refactor(core): thread the descriptor instead of forking text-read helpers by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/7967
* fix(cli): filter SGR mouse escape sequences in early input capture by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8268
* feat(core): add project-level fork profiles by @destire-mio in https://github.com/QwenLM/qwen-code/pull/8148
* feat(skills): add disabled skill levels by @zhangxy-zju in https://github.com/QwenLM/qwen-code/pull/8057
* fix(cli): stabilize thinking block height, replace transcript overlay with inline Ctrl+O toggle by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8077
* feat(autofix): unify local and CI flows in one skill by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8121
* fix(cli): complete image routing across entry points by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7206
* fix(integration): use QWEN_CODE_TEST_CRON_FAST in acp-cron test (#8237) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8243
* fix(anthropic): cascade-strip stale thinking siblings when their tool_use is orphaned by @netbrah in https://github.com/QwenLM/qwen-code/pull/8166
* fix(web-shell): compact advanced tables in narrow messages by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8264
* fix(web-shell): stabilize mobile composer after resume by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8263
* fix: make the test suite portable on Windows by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8050
* fix(triage): render the verify report as sanitized markdown, not an escaped pre dump by @wenshao in https://github.com/QwenLM/qwen-code/pull/8147
* feat(workflows): bubble workflow agent approvals by @qqqys in https://github.com/QwenLM/qwen-code/pull/8240
* refactor(cli): remove ACP private serve dependencies by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8141
* fix(web-shell): isolate automatic recap by session by @wenshao in https://github.com/QwenLM/qwen-code/pull/8262
* feat(verify): sweep sibling shapes, calibrate replays, measure suggested fixes by @wenshao in https://github.com/QwenLM/qwen-code/pull/8242
* fix(triage): say what the re-run summary measured, in both languages by @wenshao in https://github.com/QwenLM/qwen-code/pull/8273
* fix(ci): harden self-hosted runner workspace ownership recovery by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8115
* feat(skills): add auto-skill curator by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/7846
* feat(review): Test Plan claim check, base-tree A/B harness, per-hunk probes by @wenshao in https://github.com/QwenLM/qwen-code/pull/8215
* fix(web-shell): deduplicate permission options with same display label by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8250
* feat(verify): check the accepting end, and separate empty from unmeasured by @wenshao in https://github.com/QwenLM/qwen-code/pull/8295
* fix(vscode): traverse distinct resolved versions in notices generator by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8272
* feat(cli): Add agent view supervisor runtime by @ZijianZhang989 in https://github.com/QwenLM/qwen-code/pull/7799
* fix(qqbot): expose full sender openid in group message prompt by @Eric-GoodBoy-Tech in https://github.com/QwenLM/qwen-code/pull/8233
* fix(autofix): state the primary agent budget and use the step's headroom by @wenshao in https://github.com/QwenLM/qwen-code/pull/8257
* feat(review): Include CLI version in attribution by @wenshao in https://github.com/QwenLM/qwen-code/pull/8294
* test(sdk-typescript): make abort-signal canUseTool E2E deterministic (#8297) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8300
* feat(web-shell): support mutable default mid-turn messages by @ytahdn in https://github.com/QwenLM/qwen-code/pull/8229
* feat: visualize ordinary-session plan execution by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/7580
* feat(cli): add /model --compaction for configurable chat compression model by @Aleks-0 in https://github.com/QwenLM/qwen-code/pull/7818
* feat(cli): adopt Goal v3 in interactive TUI by @qqqys in https://github.com/QwenLM/qwen-code/pull/8005
* feat(workflows): support opt-in background runs by @qqqys in https://github.com/QwenLM/qwen-code/pull/8303
* feat(review): measured failure attribution, round ledger, richer mutants, doc parity by @wenshao in https://github.com/QwenLM/qwen-code/pull/8218
* perf(core): memoise ancestor-directory ignore lookups in the file-search crawler by @dexhunter in https://github.com/QwenLM/qwen-code/pull/8253
* feat(cli): add TUI image display tool by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8217
* test(web-shell): pass locale to approval renderer by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8314
* fix(cli): add ui.mouseTracking setting to restore right-click and URL clicks by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8198
* Fix ACP startup failure when extension is loaded from a symlinked directory by @Wchoi189 in https://github.com/QwenLM/qwen-code/pull/8309
* docs(web-shell): organize design documents by feature area by @water-in-stone in https://github.com/QwenLM/qwen-code/pull/8304
* fix(webui): make long tool output collapsible by @destire-mio in https://github.com/QwenLM/qwen-code/pull/8251
* feat(review): render adjudication, workflow step extraction, three verification lenses by @wenshao in https://github.com/QwenLM/qwen-code/pull/8225
* docs: document skill learning and live reload by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8298
* feat(review): borrow recall, a fix loop, and a size-derived budget from Claude /review by @wenshao in https://github.com/QwenLM/qwen-code/pull/8315
* feat(review): carry the round ledger in the posted review body by @wenshao in https://github.com/QwenLM/qwen-code/pull/8255
* feat(review): mined disciplines — effective-diff guard, positive control, seven lenses by @wenshao in https://github.com/QwenLM/qwen-code/pull/8261
* test(sdk-typescript): make orchestration E2E deterministic by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8312
* docs: complete TUI keyboard shortcut reference by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8327
* fix(core): unblock history pagination on oversized transcript turns by @wenshao in https://github.com/QwenLM/qwen-code/pull/8335
* fix(ci): ensure qwen CLI before triage action to avoid redundant install by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8337
* fix(review): a mutant whose own test was red is not a survivor either by @wenshao in https://github.com/QwenLM/qwen-code/pull/8345
* fix(core): redact sibling directives from forked subagent history by @harjothkhara in https://github.com/QwenLM/qwen-code/pull/8344
* feat(cli): /summary supports custom export path by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8116
* ci: gate merges on deterministic no-AK E2E by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8313
* fix(todo): preserve compatibility outside active plans by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8334
* docs: refresh architecture overview by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8325
* feat(review): teach the verifier the falsify-not-verify asymmetry by @wenshao in https://github.com/QwenLM/qwen-code/pull/8346
* test(sdk-typescript): make permission control E2E deterministic by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8302
* ci: auto-update ECS runners on stable publish and harden update job by @wenshao in https://github.com/QwenLM/qwen-code/pull/8343
* fix(sdk-java): accept ERROR terminal in teardown E2E to fix flaky race by @wenshao in https://github.com/QwenLM/qwen-code/pull/8354
* feat(review): drive — readiness polled, completion proven, cleanup guaranteed by @wenshao in https://github.com/QwenLM/qwen-code/pull/8349
* fix(core): reuse prompt cache during chat compression by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8339
* fix(cli): allow pasting sensitive extension settings by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8342
* feat(serve): resolve and report the daemon memory budget by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8245
* test(extension): stop a hand-written projection from racing the store's clock by @wenshao in https://github.com/QwenLM/qwen-code/pull/8362
* docs: document compaction and image model selection by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8348
* fix(github-channel): recover interrupted inbound tasks by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8306
* feat(review): mock-provider — the protocol is a fixture, the answer is yours by @wenshao in https://github.com/QwenLM/qwen-code/pull/8355
* test(review): pin drive's capped-stream case to its invariant, not to bash 5.2 by @wenshao in https://github.com/QwenLM/qwen-code/pull/8366
* feat(desktop): package Web Shell as a release-ready desktop app by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8132
* fix(core): retry leaked JSON tool protocol output by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8301
* feat(serve): make sub-session concurrency caps configurable by @wenshao in https://github.com/QwenLM/qwen-code/pull/8341
* fix(ci): ask GitHub what the PR changed, not what the base gained by @wenshao in https://github.com/QwenLM/qwen-code/pull/8372
* fix(ci): trigger ECS runner reconciliation after updater changes by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8373
* feat(ci): add repo-hygiene skill and weekly patrol workflow by @ZijianZhang989 in https://github.com/QwenLM/qwen-code/pull/7908
* docs(review): tell the agents drive and mock-provider exist, and how a fix's test earns its place by @wenshao in https://github.com/QwenLM/qwen-code/pull/8369
* feat(ci): size-aware default timeout for the PR review job by @wenshao in https://github.com/QwenLM/qwen-code/pull/8377
* fix(review): follow output language in Tip lines and saved reports by @wenshao in https://github.com/QwenLM/qwen-code/pull/8370
* feat(channels): add Web Shell management support for GitHub and GitLab by @OrbitZore in https://github.com/QwenLM/qwen-code/pull/8310
* fix(cli): re-stamp QWEN_CODE_CLI for the review run child by @wenshao in https://github.com/QwenLM/qwen-code/pull/8378
* fix(core): resume long streams cut by a socket-level close by @LHMQ878 in https://github.com/QwenLM/qwen-code/pull/7896
* test(integration): select acp-cron notification by source, not wall-clock (#8333) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/8336
* fix(external-context): Dispose of Auto Recall proxy dispatcher by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8352
* feat(review): publish evidence images to a user-designated assets repo by @wenshao in https://github.com/QwenLM/qwen-code/pull/8351
* fix(review): read why the collocated test was not green, do not assert it by @wenshao in https://github.com/QwenLM/qwen-code/pull/8374
* fix(review): hold a Critical the base tree already fails by @wenshao in https://github.com/QwenLM/qwen-code/pull/8380
* feat(cli): add a Java/JVM performance path rule to /review by @wenshao in https://github.com/QwenLM/qwen-code/pull/8379
* feat(ci): expand code owner pool for packages/core by @wenshao in https://github.com/QwenLM/qwen-code/pull/8347
* feat(web-shell): gate Session Workflow behind an experimental setting by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8391
* feat(cli): adopt Goal v3 in non-interactive mode by @qqqys in https://github.com/QwenLM/qwen-code/pull/8324
* fix(review): deprioritize Maven generated test sources by @wenshao in https://github.com/QwenLM/qwen-code/pull/8405
* feat(memory): configure background agent turn limits by @tomatotomata in https://github.com/QwenLM/qwen-code/pull/8171
* feat(desktop): bridge Electron users to Tauri updates by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8392
* fix(web-shell): prevent table dialog close scroll jump by @carffuca in https://github.com/QwenLM/qwen-code/pull/8407
* ci: remove broken legacy scheduled PR triage workflow by @wenshao in https://github.com/QwenLM/qwen-code/pull/8434
* feat(telemetry): Track tool execution outcomes by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8180
* fix(core): Clarify write_file prior-read guidance by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8428
* fix(desktop): read Windows smoke log from LocalAppData by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8381
* fix(core): Avoid replaying unsafe MCP tool calls by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8387
* fix(core): stop Goal retries after evidence catalog exhaustion by @qqqys in https://github.com/QwenLM/qwen-code/pull/8430
* fix(review): keep drifted-but-delivered launches out of the repair loop by @wenshao in https://github.com/QwenLM/qwen-code/pull/8466
* feat(review): Add structured Web Shell review results by @wenshao in https://github.com/QwenLM/qwen-code/pull/8402
* ci: reduce SDK Java runner queueing by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8441
* fix(core): align MCP reconnect timeout test with safe replay policy by @wenshao in https://github.com/QwenLM/qwen-code/pull/8478
* feat(core): support Qwen 3.8 reasoning effort by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8472
* fix(ci): align review workflow tests with externalized timeout variables by @wenshao in https://github.com/QwenLM/qwen-code/pull/8486
* feat(browser-ext): add alpha readiness diagnostics by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/6739
* docs: document headless Goal workflows by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8503
* feat(core): guide recording of PR, issue, and comment URLs as artifacts by @wenshao in https://github.com/QwenLM/qwen-code/pull/8453
* ci: route trusted-author fork PRs and no-checkout jobs to the ECS pool by @wenshao in https://github.com/QwenLM/qwen-code/pull/8502
* fix(web-shell): keep pending background agents active by @carffuca in https://github.com/QwenLM/qwen-code/pull/8413
* fix(desktop): rotate Tauri updater signing key by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8511
* fix(web-shell): add explicit ::selection for message content in Firefox by @C0d3N1nja97342 in https://github.com/QwenLM/qwen-code/pull/8417
* refactor(core): move review skill incident narratives to DESIGN.md by @wenshao in https://github.com/QwenLM/qwen-code/pull/8499
* fix(core): harden Qwen 3.8 reasoning effort wire shape by @wenshao in https://github.com/QwenLM/qwen-code/pull/8488
* perf(review): issue independent setup calls in one response by @wenshao in https://github.com/QwenLM/qwen-code/pull/8487
* fix(review): stop the reverse-audit loop while there is still time to report by @wenshao in https://github.com/QwenLM/qwen-code/pull/8468
* fix(autofix): normalize paginated fetches to one flat array per file by @wenshao in https://github.com/QwenLM/qwen-code/pull/8438
* feat(web-shell): bind plan approval to its Todo revision by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8393
* fix(core): resolve DashScope thinking-knob conflicts by family (#8488 round 2) by @wenshao in https://github.com/QwenLM/qwen-code/pull/8536
* fix(cli): stop review test-efficacy tests depending on ambient tmpdir vitest by @wenshao in https://github.com/QwenLM/qwen-code/pull/8537
* feat(serve): add a required external tool guard provider by @chiga0 in https://github.com/QwenLM/qwen-code/pull/8125
* fix(desktop): codesign ripgrep and node binaries before tauri build by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8518
* fix(core): reuse prompt cache for multimodal compression by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/8419
* fix(cli): preserve Qwen Review startup version in footers by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8431
* fix(serve): detect lineEnding across the file, not the returned slice by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8383
* perf(core): clear tool results to a low watermark to preserve prompt cache by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8464
* feat(review): a cost ledger from the records already on disk by @wenshao in https://github.com/QwenLM/qwen-code/pull/8471
* fix(review): admit evidence images by content, not by name — magic-byte sniffing by @wenshao in https://github.com/QwenLM/qwen-code/pull/8459
* test(ci): align resolve-workflow timeout expectations with externalized variables (#8460 follow-up) by @wenshao in https://github.com/QwenLM/qwen-code/pull/8485
* fix(ci): clean review worktrees after cancellation by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/8474
* fix(webui): recover complete turns after live journal truncation by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/8414
* fix: add onCompromised handlers to proper-lockfile calls to prevent daemon crash by @wenshao in https://github.com/QwenLM/qwen-code/pull/8442
* perf(autofix): build the review CLI bundle once per scan and fan it out to legs by @wenshao in https://github.com/QwenLM/qwen-code/pull/8548
* perf(review): retire dry chunks and pipeline verification in the reverse audit by @wenshao in https://github.com/QwenLM/qwen-code/pull/8498
* chore(cua-driver): sync upstream v0.17.0 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/8564
* feat(web-shell): add native Live Voice by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/7859
* fix(release): reuse configured Apple signing secrets by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/8574
## New Contributors
* @VitaliBabkin made their first contribution in https://github.com/QwenLM/qwen-code/pull/7827
* @xianjianlf2 made their first contribution in https://github.com/QwenLM/qwen-code/pull/8031
* @zambalee made their first contribution in https://github.com/QwenLM/qwen-code/pull/7963
* @babyblueviper1 made their first contribution in https://github.com/QwenLM/qwen-code/pull/8202
* @Wchoi189 made their first contribution in https://github.com/QwenLM/qwen-code/pull/8309
* @LHMQ878 made their first contribution in https://github.com/QwenLM/qwen-code/pull/7896
* @tomatotomata made their first contribution in https://github.com/QwenLM/qwen-code/pull/8171
**Full Changelog**: https://github.com/QwenLM/qwen-code/compare/dsw-manual-poc-20260727-1...desktop-v0.1.0