@peterwangze/claude-trigger-router 1.10.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,36 @@
1
+ # Release notes v1.11.0
2
+
3
+ `v1.11.0` 定位为“基础路由流式稳定性与 socket 错误修复版”。这个版本不扩展新的路由能力,专门回看 `v1.5.0` 之后的入口、runtime pipeline、流式治理、远程客户端和 SmartRouter 协作改动,优先修复用户反馈的两个 P0/P1 可用性问题。
4
+
5
+ ## 修复重点
6
+
7
+ 1. 基础路由流式输出恢复即时透传。
8
+ - 问题:`v1.8.0` 引入流式 response governance 后,`governStreamingResponse` 会先完整收集上游 SSE,再一次性输出。长回复或普通 Claude Code 会话中,客户端长时间收不到增量 token,容易表现为输出中断。
9
+ - 修复:默认 `stream_guard` 未开启时改为边转发原始 chunk、边旁路收集文本和 usage 用于 trace / output guardrail;只有显式开启 `Governance.cascade.stream_guard` 时才保留 buffer-and-retry。
10
+
11
+ 2. API error 不再被转换成 socket-level hook error。
12
+ - 问题:运行时 `onSend` 看到 `{ error: ... }` payload 时会把它作为 Fastify hook error 传出,客户端可能看到 `The socket connection was closed unexpectedly`,而不是稳定的结构化 API 错误。
13
+ - 修复:保留上游结构化错误 payload 返回;model pool fallback 尝试失败后也返回 payload,不再把普通 API error 当成传输层异常。
14
+
15
+ 3. SSE parser 修复跨 chunk 状态丢失。
16
+ - 问题:`SSEParserTransform` 的当前事件对象只存在于单次 parse 调用里;当上游把 `event:`、`data:`、空行拆成多个网络 chunk 时,事件状态可能丢失。
17
+ - 修复:parser 现在跨 chunk 保留当前事件,并能 flush 没有尾随空行的最终事件,降低 agent/tool stream 和 stream guard 场景的偶发中断风险。
18
+
19
+ ## 看护
20
+
21
+ - `src/governance/stream-response-governance.test.ts` 新增“上游未关闭前就能读到首个 chunk”的回归测试。
22
+ - `src/utils/SSEParser.transform.test.ts` 新增 SSE 跨 chunk 和无尾随空行 flush 测试。
23
+ - `src/index-startup.test.ts` 新增上游 API error payload 不触发 socket-level hook error 的测试。
24
+
25
+ ## 发布边界
26
+
27
+ 本版本是稳定性修复版,不新增 SmartRouter 协作模式、不改变 v1.10.0 的 routing advisor / budget / collaboration contract,也不改变远程客户端推荐配置。发布前需要重点验证:
28
+
29
+ ```bash
30
+ npm run build
31
+ npm test -- --run
32
+ npm test -- --run --coverage
33
+ npm run test:e2e:cli:entry
34
+ ```
35
+
36
+ 若要做正式发布,仍以 `npm run release:verify` 作为最终门禁。
package/docs/releasing.md CHANGED
@@ -7,7 +7,7 @@
7
7
  - `Release Check`:在 PR、`master` push 和手动触发时执行发布前检查
8
8
  - `Publish Package`:在版本 tag、GitHub Release 或手动触发时执行正式发布
9
9
 
10
- 本次 `v1.10.0` minor release 的优先级是智能路由自适应与多模型协同增强。发布检查需要同时保护既有 `setup / start / status / code / doctor / ui` 入口主路径,以及 outcome-driven routing feedback、模型能力画像、confidence/latency budget、多模型协作模式、SmartRouter trace metadata `/ui` 协作证据入口。
10
+ 本次 `v1.11.0` minor release 的优先级是基础路由流式稳定性与 socket 错误修复。发布检查需要优先保护既有 `setup / start / status / code / doctor / ui` 入口主路径,以及 `/v1/messages` 流式即时透传、SSE chunk 解析、结构化 API error 返回和 v1.10.0 SmartRouter 协作能力不回退。
11
11
 
12
12
  ## 一次性准备
13
13
 
@@ -26,16 +26,17 @@
26
26
 
27
27
  1. 更新版本号
28
28
  - `vX.Y.0` 这类 minor release 还需要同步更新版本依赖用例、README 发布定位和对应 release notes。
29
- - 本次 `v1.10.0` 的发布边界以 `docs/release-notes-v1.10.0.md` 为准:主打 SmartRouter 自适应反馈和最小多模型协作 contract,不宣称完整自动化多 agent 编排、全量任务拆解执行器、跨请求在线学习系统或完整云端模型调度平台。
29
+ - 本次 `v1.11.0` 的发布边界以 `docs/release-notes-v1.11.0.md` 为准:主打基础路由流式稳定性、socket 错误修复和 SSE parser 可靠性,不新增 SmartRouter 协作模式或远程客户端配置心智。
30
30
  2. 本地先执行发布包验证:
31
31
 
32
32
  ```bash
33
33
  npm run release:verify
34
34
  ```
35
35
 
36
- v1.10.0 期间建议在正式 `release:verify` 前额外跑一次智能路由协作专项:
36
+ v1.11.0 期间建议在正式 `release:verify` 前额外跑一次流式稳定专项:
37
37
 
38
38
  ```bash
39
+ npm test -- --run src/governance/stream-response-governance.test.ts src/utils/SSEParser.transform.test.ts src/index-startup.test.ts
39
40
  npm test -- --run --coverage
40
41
  npm run test:ui
41
42
  npm run test:e2e:cli:entry
@@ -80,7 +81,7 @@ npm run test:e2e:acceptance
80
81
  - 目标端口被非本服务占用时的安全提示与“无额外文件修改”边界
81
82
  - 残留 / 失效 PID 文件的安全清理
82
83
  - `release:stage` 生成的 `.release-stage\ctr-release-home.cmd` wrapper 是否真的指向隔离 `.release-home`
83
- - v1.10.0 智能路由自适应与多模型协同发布承诺的 routing advisor、SmartRouter budget/collaboration guard、server routing-advisor API、trace metadata、`/ui` route decision evidence 和文档资产检查
84
+ - v1.11.0 基础路由流式稳定性发布承诺的 stream governance 即时透传、SSE parser chunk、结构化 API error 返回,以及 v1.10.0 routing advisor / SmartRouter collaboration 不回退检查
84
85
 
85
86
  只有这一步通过后,才继续正式发布,避免“发布后才发现包内容、CLI 启动或 setup 主流程有问题”。
86
87
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peterwangze/claude-trigger-router",
3
- "version": "1.10.0",
3
+ "version": "1.11.0",
4
4
  "description": "Intelligent trigger-based router for Claude Code with automatic task type detection and model routing",
5
5
  "bin": {
6
6
  "ctr": "dist/cli.js"