跳转到内容

检测到无限空白 bug:Copilot 误丢包含缩进代码的 tool call

Quick fix

评论称提交 33eafbad5198d9fe64ff507ac673430ec334b4aa 已修复误判;请核对所用版本是否包含该提交,原帖未注明修复版本。

报错原文
检测到无限空白 bug

报告指出,cc-switch 的 Copilot 流式处理逻辑在 src-tauri/src/proxy/providers/streaming.rs 中检测 tool call 的 arguments delta,空白阈值为 20。触发后 state.aborted 被设为 true 且不再恢复,整个 tool call 会被静默丢弃,仅留下警告日志。深层代码缩进、跨 delta 的连续空白、JSON 格式化空白和 Markdown 表格对齐均被列为可能误判的场景。报告还称换行与行首缩进可逐行累积,但其展示的代码会在遇到非空白字符时清零,因此不能据此认定普通多行代码必然累积触发。

  1. 核对所用版本是否包含提交 33eafbad5198d9fe64ff507ac673430ec334b4aa。评论明确称该提交已修复,但原帖未提供对应发行版本、具体补丁或复测结果。

  2. 验证时,让 Copilot 路由的会话执行 write_file,写入深层缩进代码,例如 8 层缩进的 YAML 或嵌套 Python 函数,观察工具调用是否仍被静默中止,以及日志是否出现“检测到无限空白 bug”。

  3. 将提高阈值至 200 或 500、使用空白占比窗口、移除检测及增加可配置丢弃策略视为原帖提出的方案;原帖未说明修复提交采用了哪一种,也未证实存在可直接使用的配置开关。

Tool未知
Version未知
Platforms未知

(暂无 FAQ)

这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。