File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -51,6 +51,16 @@ live 目录/模型并修传输与限流重试;账号过滤、日志保留/轮
5151发布审计后补:` WINDSURFAPI_TOOL_HYGIENE=0 ` 完整回滚、重复 tool ID/FIFO 配对、孤儿结果不拆 tool 对、Anthropic 错误状态补齐、Gemini split 名与 Dashboard token fallback。默认 wire 不变(270/270),本地/HMC 全量绿;昂贵模型 5 selector × 4 协议 20/20 200。无协议兼容性
5252破坏;实际计费 debit、其余模型图片和 Any2API live 集成仍未验证。
5353
54+ ** 2026-10-21 维护增量(代码候选 ` f2b938d ` ,旧数字为 2026-10-19 快照)** :畸形/超长 tool id 保留
55+ FIFO 队列;预内容 Cascade 失败不再追加成功 ` [DONE] ` ;SSE framer 与网络分片无关,支持 LF/CRLF/CR、
56+ 空字段和注释开头内容,分隔符扫描改为单游标。本机 Node 24 固定批次观测 160k 帧约 28 ms(修复前约
57+ 3.6 s),不作为通用延迟保证。Windows ` npm run gate ` (含 ` test:release ` )** 5,415 pass / 0 fail /
58+ 82 skip** ,Linux release ** 5,497 pass / 0 fail / 0 skip** ,wire ** 270/270** ;受影响 mutation 共
59+ ** 11** 个预期(10 caught + 1 declared survivor)。Linux 首次聚合 gate ** exit 2** 是 detached clone
60+ 缺 ` origin/master ` ,补跑缺失层为 ** 85 specs / 0 drift / 0 untrustworthy** 。Any2API 候选 ` a4b3406 `
61+ 是独立项目:LF 集成树 ` go test ./... ` 为 ** 18 ok + 1 no-test / 0 fail** ,二进制已构建并固定哈希;
62+ 其 live 结果不在本版范围,不作为本版证据。
63+
5464### [ v3.9.40] ( docs/releases/RELEASE_NOTES_3.9.40.md ) · 2026-10-07
5565
5666畸形输入不再打成 500 或变成上游文本:带 per-user scope 的 ` content:[null] ` 、` system:[null] ` 和
Original file line number Diff line number Diff line change 11# v3.9.41
22
3+ > ** 2026-10-21 维护增量** :代码候选 ` f2b938d ` 在本文原有 2026-10-19 证据之上补了工具历史、终态与 SSE 修复;旧数字保留为当日快照,当前门禁数字见文末「2026-10-21 维护增量」。版本号与发布状态未改。
4+
35本版是 v3.9.40 之后的一次大补丁:** 90+ 个提交,57 个 feat/fix** 。没有协议兼容性破坏,没有新增协议路由,默认 wire 字节保持不变(` a51a0f1 ` 对 ` v3.9.40 ` 的 270/270 比较全部相同)。内容集中在五块:工具名/ID/历史的跨方言卫生、SSE 提交门与错误状态、Dashboard 的只读观测面、Devin Connect 的目录/传输/重试修复,以及账号、日志、统计与缓存的可运维性。
46
57** 影响面** :默认开启的工具卫生会改变少数畸形工具名/ID 的线上形状;SSE 提交门默认等待 5 秒,预内容错误现在能以真实 HTTP 状态返回;新增若干默认关闭的日志/ACP 开关和 Dashboard 只读接口。没有改协议字段、没有改默认路由、没有改上游 wire。昂贵模型 live 矩阵只覆盖一个 Pro 账号的一次部署,不等同于对所有账号等级的承诺。
@@ -77,6 +79,18 @@ v3.9.40 只在 Messages 侧修了 64 字符 wire 上限;这一版把同一类
7779- ** Node 20/22** :版本性失败仍在,发布门只声明 Node 24。
7880- ** Any2API 集成** :Codex ` responses ` 直通和 Claude ` anthropic ` 的 live 冒烟尚未跑;` PATCH-G5.diff ` 只是提案,未应用。
7981
82+ ## 2026-10-21 维护增量(代码候选 ` f2b938d ` )
83+
84+ 本段是发布候选上的后续维护;原始 2026-10-19 证据保留为当日快照。以下数字只对应 ` f2b938dfd04f6771d18e4db723e2944fae555057 ` 的代码与测试树;后续仅文档变更不改变该证据。
85+
86+ - ** 工具历史** :畸形/超长 raw tool id 不再覆盖已有 FIFO 队列,后续调用与结果仍按到达顺序绑定;合法 id 与确定性映射不变(` src/tool-ids.js ` 、` test/tool-ids.test.js ` )。
87+ - ** 终态** :预内容 Cascade 失败只发错误帧,不再追加成功 ` [DONE] ` ;已交付部分内容的失败仍走既有 synthetic finish + 单次 ` [DONE] ` 兼容路径(` src/handlers/chat.js ` 、` test/s4-r4.test.js ` 、` test/stream-error.test.js ` )。
88+ - ** SSE 语义** :framer 的 payload 上限与网络分片无关;LF/CRLF/CR 统一;` data ` /` event ` 等字段允许空值;注释开头的内容不会被后续错误替换;忽略行、data、event 分别记账,dispatch 时合计仍受限(` src/sse-framer.js ` 、` test/sse-framer.test.js ` )。
89+ - ** SSE 性能** :分隔符扫描改为单游标 ` /[\r\n]/g ` ,大批量帧从二次降为线性;本机 Node 24 固定批次观测 160k 帧约 28 ms(修复前约 3.6 s),不作为通用延迟保证(` src/sse-framer.js ` )。
90+ - ** 平台门** :Windows ` npm run gate ` (含 ` test:release ` )** 5,415 pass / 0 fail / 82 skip** (442 文件);Linux release ** 5,497 pass / 0 fail / 0 skip** (442 文件);wire ** 270/270** 对 ` v3.9.40 ` 。
91+ - ** Linux 首次聚合 gate** :** exit 2** ,原因是 detached clone 缺少 ` origin/master ` ;这不是零退出。补跑缺失层 ` spec-baseline-check ` 得到 ** 85 specs / 0 drift / 0 untrustworthy** (base ` 6fd35b3 ` )。受影响 mutation 规格共 ** 11** 个预期:** 10 caught + 1 个已声明 survivor** (` s4-r4 ` 5/5;` terminal-event-guard ` 5 caught + 1 declared)。
92+ - ** 相关项目(独立)** :Any2API 候选 ` a4b3406 ` 的 LF 集成树 ` go test ./... ` 为 ** 18 ok + 1 no-test / 0 fail** ;二进制已构建并固定哈希。其 live 结果不在本版范围,不作为本版证据。
93+
8094## 升级注意
8195
8296- ` WINDSURFAPI_TOOL_HYGIENE ` 默认开启;依赖原始畸形工具名/ID 透传的调用方需要显式设 ` 0 ` 。
You can’t perform that action at this time.
0 commit comments