@peterwangze/claude-trigger-router 1.9.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.
- package/README.md +103 -459
- package/dist/cli.js +612 -45
- package/dist/cli.js.map +4 -4
- package/docs/release-notes-v1.10.0.md +37 -0
- package/docs/release-notes-v1.11.0.md +36 -0
- package/docs/releasing.md +5 -4
- package/package.json +1 -1
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Release notes v1.10.0
|
|
2
|
+
|
|
3
|
+
`v1.10.0` 定位为“智能路由自适应与多模型协同增强版”。这个版本聚焦 SmartRouter 的用户强感知体验:理解真实任务反馈、看见候选模型画像、用 confidence 和 latency 约束平衡质量/速度,并把最小多模型协作模式与证据展示接入治理链路。
|
|
4
|
+
|
|
5
|
+
## 本次主线
|
|
6
|
+
|
|
7
|
+
- outcome-driven routing feedback:新增 routing advisor,将 governance trace 中的 `taskComparison`、`qualityEvidence`、latency、cascade 和 shadow 信号汇总为候选模型画像,并反哺 SmartRouter prompt、候选排序和缓存 key。
|
|
8
|
+
- 模型能力画像自动刷新:新增 `GET /api/governance/routing-advisor`,返回当前 SmartRouter candidates 的 profile source、样本量、失败率、平均延迟、best/fastest 任务计数、任务 key、score 和证据。
|
|
9
|
+
- confidence + latency budget:新增 `SmartRouter.routing_budget.latency_budget_ms` / `confidence_threshold`,请求 metadata 也可用 `ctr_latency_budget_ms` / `ctr_confidence_threshold` 覆盖;selector 会把预算 hint 传入 SmartRouter,SmartRouter 会基于历史 profile 做 latency guard 或 confidence guard。
|
|
10
|
+
- 多模型协作模式:新增 `SmartRouter.collaboration.mode` / `allowed_modes` / `confidence_threshold`,协作 contract 覆盖 `route_only`、`verify_only`、`compare_then_arbiter`、`cascade_on_evidence`。默认仍是 `route_only`,低置信且允许 `verify_only` 时会自动升级到验证模式。
|
|
11
|
+
- 协作收益可解释入口:route decision summary、governance trace 和 `/ui` Recent route decisions 已展示 `routingMode`、`collaborationMode` 和 `routingEvidence`,维护者能看到本次是否因 latency budget、confidence guard 或历史画像发生策略调整。
|
|
12
|
+
|
|
13
|
+
## 发布边界
|
|
14
|
+
|
|
15
|
+
- 本版本不声明完整自动化多 agent 编排、全量任务拆解执行器或跨请求在线学习系统。
|
|
16
|
+
- `compare_then_arbiter` / `cascade_on_evidence` 本轮作为可配置协作 contract、trace metadata 和可观测策略入口收口,不代表已经完成多模型并发执行编排。
|
|
17
|
+
- Routing advisor 以本地 governance trace 和现有 benchmark/quality evidence 为输入,不引入远端模型遥测或托管控制面。
|
|
18
|
+
- SmartRouter 仍遵守既有模型配置、鉴权、context guard、response governance 和 runtime pipeline 顺序;本轮不改变外部协议兼容边界。
|
|
19
|
+
|
|
20
|
+
## 验证
|
|
21
|
+
|
|
22
|
+
本版本收口前至少需要通过:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npm run release:verify
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
本轮已为新增闭环补充 targeted 看护:
|
|
29
|
+
|
|
30
|
+
- `src/governance/routing-advisor.test.ts`
|
|
31
|
+
- `src/trigger/smart-router.test.ts`
|
|
32
|
+
- `src/trigger/selector.test.ts`
|
|
33
|
+
- `src/trigger/trigger-router.test.ts`
|
|
34
|
+
- `src/server.test.ts`
|
|
35
|
+
- `src/server/management-routes.test.ts`
|
|
36
|
+
- `src/ui/workbench.dom.test.ts`
|
|
37
|
+
- `src/deploy-assets.test.ts`
|
|
@@ -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
|
+
本次 `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.
|
|
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.
|
|
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.
|
|
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