@peterwangze/claude-trigger-router 1.2.0 → 1.4.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 +62 -8
- package/config/trigger.routing.yaml +67 -0
- package/config/trigger.smart-router.yaml +213 -0
- package/dist/cli.js +900 -24
- package/dist/cli.js.map +3 -3
- package/docs/configuration-guide.md +4 -0
- package/docs/release-notes-v1.2.0.md +6 -3
- package/docs/release-notes-v1.3.0.md +39 -0
- package/docs/release-notes-v1.4.0.md +40 -0
- package/docs/releasing.md +3 -2
- package/package.json +1 -1
|
@@ -213,6 +213,8 @@ SmartRouter:
|
|
|
213
213
|
description: "复杂推理"
|
|
214
214
|
```
|
|
215
215
|
|
|
216
|
+
如果想直接从常用规则起步,可以复制 `config/trigger.smart-router.yaml`。模板已经覆盖 `coding`、`review`、`architecture`、`long_context`、`fast_reply` 五类高频任务,并把每条规则引用的模型都写在 `Models[]` 中,便于 `ctr doctor` 和 `/ui` 做一致校验。
|
|
217
|
+
|
|
216
218
|
默认情况下,`SmartRouter` 会启用语义增强和 sticky 稳定性修正,但不会自动启用 `sticky.alignment` 上下文摘要注入。Claude Code 会在每次请求里携带已有会话上下文;只有在你明确需要跨模型切换交接摘要,并接受额外一次 summarizer 调用带来的首包等待时,才建议显式开启:
|
|
217
219
|
|
|
218
220
|
```yaml
|
|
@@ -410,6 +412,8 @@ Models:
|
|
|
410
412
|
|
|
411
413
|
- 主入口:`README.md`
|
|
412
414
|
- 最小示例:`config/trigger.example.yaml`
|
|
415
|
+
- 基础路由五槽位示例:`config/trigger.routing.yaml`
|
|
416
|
+
- SmartRouter 常用规则示例:`config/trigger.smart-router.yaml`
|
|
413
417
|
- 完整高级示例:`config/trigger.advanced.yaml`
|
|
414
418
|
- 旧配置迁移:`docs/models-migration-guide.md`
|
|
415
419
|
- 发布验证:`docs/releasing.md`
|
|
@@ -7,16 +7,19 @@
|
|
|
7
7
|
- `ctr eval --tasks`:导出固定任务、prompt、期望输出、rubric、质量维度和 result template,方便维护者建立稳定的多模型 A/B 输入。
|
|
8
8
|
- `ctr eval --input results.json`:对已有多模型输出做 deterministic rubric 评分,输出 pass rate、quality、speed、latency、best run、维度均分和失败 findings。
|
|
9
9
|
- `ctr eval --run --models "sonnet;haiku"`:通过 CTR `/v1/messages` 自动执行固定任务集,支持 `--base-url`、`--api-key`、`--timeout-ms`、`--concurrency`、`--max-tokens` 和 JSON 输出。
|
|
10
|
+
- `ctr eval --run --models "sonnet;haiku" --judge-model sonnet`:自动执行后继续调用一个 LLM 裁判模型,回填 `judgeScore`、`judgeFindings` 和 `calibrationNotes`;`ctr eval --input results.json --judge-model sonnet` 也可对已有结果补裁判分。
|
|
10
11
|
- 严格质量维度评分:固定任务与自定义任务都可以用 `qualityDimensions` 解释语义覆盖、完整性、交付格式、安全卫生等差异;任一必需维度低于阈值会让该结果失败。
|
|
12
|
+
- 人工/裁判校准入口:`ctr eval` 输入可以附带 `humanScore`、`judgeScore`、`calibrationNotes` 和 `judgeFindings`,也可以用 `--judge-model` 自动生成裁判分;报告会输出 calibration summary 和高分歧样本,裁判失败会以 `judge_error` 进入 findings 但不会误计入 calibration score。
|
|
11
13
|
- 治理收益观测增强:routing outcome、task comparison、quality evidence、context window guard、switch/alignment/cascade 等指标可通过 metrics、health、CSV 和 UI 进入维护者调优路径。
|
|
14
|
+
- UI benchmark summary:维护者工作台会把 task comparison、quality evidence 和 `ctr eval --run` 下一步动作合并成 benchmark 摘要。
|
|
12
15
|
- 发布链路继续使用 `release:verify` / `release:stage` / GitHub trusted publishing,并要求 tag 与 `package.json.version` 一致。
|
|
13
16
|
|
|
14
17
|
## 发布边界
|
|
15
18
|
|
|
16
|
-
本版本不把 CTR
|
|
19
|
+
本版本不把 CTR 宣称为完整云端平台或完整自动裁判系统。`--judge-model` 已提供可重复的裁判执行入口,但它仍应和人工复核一起作为校准信号使用。以下能力已经进入实施计划,但不作为 `v1.2.0` 的发布承诺:
|
|
17
20
|
|
|
18
|
-
-
|
|
19
|
-
-
|
|
21
|
+
- 人工校准 UI 表单
|
|
22
|
+
- 更完整的 benchmark 历史看板
|
|
20
23
|
- 公网 server/cloud 一键部署默认推荐
|
|
21
24
|
- 托管场景密钥轮换操作手册
|
|
22
25
|
- 服务发现、节点/集群编排
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# v1.3.0 Release Notes
|
|
2
|
+
|
|
3
|
+
`v1.3.0` 定位为“基础路由常用体验版”。这个版本把 CTR 的最高频用户路径从“已经能配置多模型”推进到“新用户能配置、能诊断、能在 UI 看懂、也有 packaged smoke 防回退”。
|
|
4
|
+
|
|
5
|
+
## 本次发布主线
|
|
6
|
+
|
|
7
|
+
- 基础路由五槽位说明:README 围绕 `Router.default`、`Router.think`、`Router.longContext`、`Router.background`、`Router.webSearch` 补齐触发条件、推荐模型类型和常见误区。
|
|
8
|
+
- 可复制基础路由模板:新增 `config/trigger.routing.yaml`,用于快速建立 default / thinking / long context / background / web search 的分流配置。
|
|
9
|
+
- `ctr doctor` 路由槽位体检:检查默认模型是否存在、各槽位是否能解析到 `Models[].id`、thinking 能力是否匹配,以及上下文窗口元数据是否缺失。
|
|
10
|
+
- `/ui` 使用者工作台路由解释:展示当前五槽位引用、上游 provider/model、能力提示和潜在 warning,帮助用户确认当前配置是否按预期生效。
|
|
11
|
+
- Context window guide:在 `/ui` 中展示 default 与 longContext 容量、最大上下文候选、缺失元数据计数,并支持把推荐模型设为 `Router.longContext`。
|
|
12
|
+
- packaged basic routing smoke:打包后 acceptance 覆盖 fresh setup、`ctr status`、`ctr code` 环境、五槽位解析,以及真实 `/v1/messages` 请求触发 longContext fallback。
|
|
13
|
+
|
|
14
|
+
## 发布边界
|
|
15
|
+
|
|
16
|
+
本版本不把 CTR 宣称为完整 SmartRouter 产品化版本,也不承诺完整云端托管平台。以下事项已经进入后续计划,但不作为 `v1.3.0` 的发布承诺:
|
|
17
|
+
|
|
18
|
+
- SmartRouter 规则模板、候选模型配置向导、路由决策解释和慢路由/错路由调优建议。
|
|
19
|
+
- benchmark 历史看板和人工校准 UI 表单。
|
|
20
|
+
- 公网 server/cloud 一键部署默认推荐、托管级密钥轮换手册和集群编排。
|
|
21
|
+
- 模型池主动健康探测、成本/速率元数据和更多调度策略。
|
|
22
|
+
|
|
23
|
+
对用户的建议口径是:`v1.3.0` 已经适合把本地 Claude Code 的基础分流路径作为日常主路径使用;如果要启用 SmartRouter 候选模型或远程服务端,应继续按照 README 的边界说明使用,并等待后续版本把模板、解释和运维入口进一步收口。
|
|
24
|
+
|
|
25
|
+
## 发布前必跑
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
npm run release:verify
|
|
29
|
+
npm run release:stage
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
正式发布前确认:
|
|
33
|
+
|
|
34
|
+
- `package.json` 与 `package-lock.json` 版本均为 `1.3.0`
|
|
35
|
+
- `ctr version` 输出 `Version: 1.3.0`
|
|
36
|
+
- `v1.3.0` tag 与包版本一致
|
|
37
|
+
- npm registry 中不存在 `@peterwangze/claude-trigger-router@1.3.0`
|
|
38
|
+
- npm trusted publisher 指向 `peterwangze/claude-trigger-router` 的 `publish.yml`
|
|
39
|
+
- GitHub publish workflow 使用 Node 24 / npm 11.5.1+
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# v1.4.0 Release Notes
|
|
2
|
+
|
|
3
|
+
`v1.4.0` 定位为“SmartRouter 常用体验版”。这个版本把 CTR 的智能路由从“有能力但需要理解内部机制”推进到“能复制模板、能配置候选、能看懂为什么选模、能发现切换割裂,并能按配置路径调优”。
|
|
4
|
+
|
|
5
|
+
## 本次发布主线
|
|
6
|
+
|
|
7
|
+
- SmartRouter 规则模板:新增 `config/trigger.smart-router.yaml`,覆盖 coding、review、architecture、long_context、fast_reply 等高频任务。
|
|
8
|
+
- SmartRouter 配置解释:`/api/models/compiled` 和草稿 preview 返回归一化 explanation,`/ui` 展示规则顺序、候选模型、router_model、semantic/sticky 开关和 fallback。
|
|
9
|
+
- 候选模型向导:`/ui` Candidate guide 检查 fast / balanced / deep / long-context 候选覆盖,并支持把建议模型加入 `SmartRouter.candidates` 草稿。
|
|
10
|
+
- 路由决策可解释性:governance trace 记录 route source、rule、confidence、选中模型和 fallback reason,`/ui` 展示最近请求的可读 route decision。
|
|
11
|
+
- 切换体感治理:switch continuity summary 把 initial/final model、sticky、alignment、cascade 和 route source 合成为 stable / aligned / watch / critical 状态。
|
|
12
|
+
- 配置路径级调优建议:health routing tuning 将 context window、switch without alignment、switch cascade risk 和 slow route group 转成 `configSuggestions`,指向 `Router.longContext`、`SmartRouter.sticky.alignment`、`SmartRouter.rules`、`SmartRouter.candidates` 等可操作建议。
|
|
13
|
+
|
|
14
|
+
## 发布边界
|
|
15
|
+
|
|
16
|
+
本版本聚焦本地 SmartRouter 常用体验,不把 CTR 宣称为完整 benchmark 运营平台或完整 server/cloud 托管平台。以下事项进入后续版本,但不作为 `v1.4.0` 发布承诺:
|
|
17
|
+
|
|
18
|
+
- benchmark 历史看板。
|
|
19
|
+
- 人工校准 UI 表单。
|
|
20
|
+
- 固定任务集按核心路由场景重排。
|
|
21
|
+
- `ctr eval` 与真实 trace 的统一收益解释口径。
|
|
22
|
+
- 服务端安全默认策略、密钥轮换手册、主动 pool health、成本/速率元数据和更多调度策略。
|
|
23
|
+
|
|
24
|
+
对用户的建议口径是:`v1.4.0` 已经适合把 SmartRouter 用作日常多模型组合入口;如果要证明长期质量/速度收益,仍应结合 `ctr eval`、真实 trace 和后续 v1.5.0 的运营化能力。
|
|
25
|
+
|
|
26
|
+
## 发布前必跑
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
npm run release:verify
|
|
30
|
+
npm run release:stage
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
正式发布前确认:
|
|
34
|
+
|
|
35
|
+
- `package.json` 与 `package-lock.json` 版本均为 `1.4.0`
|
|
36
|
+
- `ctr version` 输出 `Version: 1.4.0`
|
|
37
|
+
- `v1.4.0` tag 与包版本一致
|
|
38
|
+
- npm registry 中不存在 `@peterwangze/claude-trigger-router@1.4.0`
|
|
39
|
+
- npm trusted publisher 指向 `peterwangze/claude-trigger-router` 的 `publish.yml`
|
|
40
|
+
- GitHub publish workflow 使用 Node 24 / npm 11.5.1+
|
package/docs/releasing.md
CHANGED
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
推荐主流程:
|
|
24
24
|
|
|
25
25
|
1. 更新版本号
|
|
26
|
-
- `
|
|
27
|
-
- 本次 `v1.
|
|
26
|
+
- `vX.Y.0` 这类 minor release 还需要同步更新版本依赖用例、README 发布定位和对应 release notes。
|
|
27
|
+
- 本次 `v1.4.0` 的发布边界以 `docs/release-notes-v1.4.0.md` 为准:主打 SmartRouter 常用体验,不宣称完整 benchmark 运营平台或完整云端平台。
|
|
28
28
|
2. 本地先执行发布包验证:
|
|
29
29
|
|
|
30
30
|
```bash
|
|
@@ -63,6 +63,7 @@ npm run release:verify
|
|
|
63
63
|
- 目标端口被非本服务占用时的安全提示与“无额外文件修改”边界
|
|
64
64
|
- 残留 / 失效 PID 文件的安全清理
|
|
65
65
|
- `release:stage` 生成的 `.release-stage\ctr-release-home.cmd` wrapper 是否真的指向隔离 `.release-home`
|
|
66
|
+
- SmartRouter v1.4.0 发布承诺的模板、配置解释、候选向导、路由决策摘要、切换体感摘要和配置路径级调优建议
|
|
66
67
|
|
|
67
68
|
只有这一步通过后,才继续正式发布,避免“发布后才发现包内容、CLI 启动或 setup 主流程有问题”。
|
|
68
69
|
|
package/package.json
CHANGED