Skip to content

v2.4.2 — 第二道内容指纹:Web GUI 那句,以及 assistant 历史

Choose a tag to compare

@XDTrees XDTrees released this 21 Oct 11:47
· 20 commits to main since this release

v2.4.2 — 第二道内容指纹:Web GUI 那句,以及 assistant 历史

2.4.1 之后仍有用户撞上 400 / 11128 Illegal API invocation from an unapproved channel。这一版补上第二道内容指纹,并把改写范围扩到 assistant 历史。

这次修复来自社区 PR,谢谢 @jmglsi —— PR #62 自己把成因、边界和最小改法都查清写明了,还带了覆盖「被扫角色」的测试;维护者这边独立用真实网关复核后合并发布。同时也谢谢 @GIGIGIGIbaby 的两个修复(PR #49、PR #50)。

同一条提示词里还有第二道指纹

2.4.1 只改写了 You are an AI agent powered by DeepSeek Harness 那一句。改掉之后请求仍然 400 / 11128,因为网关还在看提示词的另一段——介绍 Web GUI 的那一对句子:

You are interacting with the user through the DeepSeek Harness Web GUI
whose URL the runtime context names. When the user refers to "this page",
"this GUI", or "this app" without naming another target, they mean this GUI.

这两句要合起来才算:单独发任一句都 200,两句凑齐就 400,在这对句子里做任何小改动都放行。所以这是第二道内容指纹,不是请求长度限制,也不是别的头。

修法是把产品名后的 Web GUI 改称 web interface——保住原意的最小改动。

被扫的是 system 和 assistant,user/tool 不扫

同一句话放进 assistant 消息同样 400,改写后 200;放进 user 或 tool 则从来不管。这一条很要紧:只要历史里有一条助手回复带着这段文字,此后这个会话的每一次请求都会失败。所以改写范围从「只改 system」扩到 system + assistant。

实测(真实国内网关)

请求体 修复前 修复后
主 agent 提示词(含 Web GUI 那对句子) 400 / 11128 200
同一对句子放在 assistant 历史里 400 / 11128 200
两句合一的提示词(两道指纹同时在) 400 / 11128 200
埋进数百字长提示词中间 400 / 11128 200
只有无关填充的长提示词(基线) 200 200

复核时还确认了一件事:DSH 当前版本真正发出的那几句(The runtime context names the DeepSeek Harness implementation checkout…、… the DeepSeek Harness Web GUI at <url>.、Current DeepSeek Harness Web GUI URL: …)原样发送就是 200,含产品名但不是模板命中的句式。也就是说命中的是句式,不是「出现产品名」——这也是为什么没有采用「把 DeepSeek Harness 全局换成 DSH」那种更宽的改法:它会连 D:\DeepSeek Harness\resources\app\dsh\ 这类要求模型逐字使用的路径一起改掉,却换不来任何额外放行。

同时并入的两个社区修复

  • PR #49(@GIGIGIGIbaby):模型连通性探测的 content 改用内容块数组。宿主按 content.some(...) 校验每条出站消息,裸字符串没有 .some,探测在进程内就炸了,卡片上显示成 content.some is not a function——一个形状错误伪装成模型坏了。
  • PR #50(@GIGIGIGIbaby):禁用按钮划过时会「消失」。.dsm-btn:disabled:hover 里的 background:transparent 优先级 (0,3,0) 压过 .dsm-btn-primary 的填充 (0,1,0);主按钮文字是深色、为浅底设计的,底一变透明文字就看不见了。现在这条规则只保留 transform。

升级

pnpm add dsh-xdpool@latest

装完重启 DSH 即可。完整改动见 CHANGELOG。