@eddyskywalker/dsh-chatgpt-subscription 0.48.4 → 0.50.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/CHANGELOG.md +31 -0
- package/README.md +2 -1
- package/lib/client.js +2383 -179
- package/lib/client.js.map +1 -1
- package/lib/index.js +2246 -233
- package/lib/types/client/index.d.ts +2 -0
- package/lib/types/client/index.d.ts.map +1 -1
- package/lib/types/client/kimi-code/KimiCodeSection.d.ts.map +1 -1
- package/lib/types/client/kimi-code/locales.d.ts +14 -2
- package/lib/types/client/kimi-code/locales.d.ts.map +1 -1
- package/lib/types/client/locales-ru/kimi-code.d.ts.map +1 -1
- package/lib/types/client/subagent/SubagentCard.d.ts +35 -0
- package/lib/types/client/subagent/SubagentCard.d.ts.map +1 -0
- package/lib/types/client/subagent/index.d.ts +28 -0
- package/lib/types/client/subagent/index.d.ts.map +1 -0
- package/lib/types/client/subagent/locales.d.ts +172 -0
- package/lib/types/client/subagent/locales.d.ts.map +1 -0
- package/lib/types/client/subagent/styles.d.ts +20 -0
- package/lib/types/client/subagent/styles.d.ts.map +1 -0
- package/lib/types/client/subagent/subagent-card-controller.d.ts +329 -0
- package/lib/types/client/subagent/subagent-card-controller.d.ts.map +1 -0
- package/lib/types/compat.d.ts +1 -1
- package/lib/types/host/cache-warmup/install.d.ts.map +1 -1
- package/lib/types/host/cache-warmup/projection.d.ts.map +1 -1
- package/lib/types/host/common/request-images.d.ts +66 -0
- package/lib/types/host/common/request-images.d.ts.map +1 -1
- package/lib/types/host/kimi-code/adapter.d.ts +15 -0
- package/lib/types/host/kimi-code/adapter.d.ts.map +1 -1
- package/lib/types/host/kimi-code/cache-wait.d.ts +125 -0
- package/lib/types/host/kimi-code/cache-wait.d.ts.map +1 -0
- package/lib/types/host/kimi-code/mapper.d.ts +123 -6
- package/lib/types/host/kimi-code/mapper.d.ts.map +1 -1
- package/lib/types/host/kimi-code/routes.d.ts.map +1 -1
- package/lib/types/host/kimi-code/session-cache-state.d.ts +14 -0
- package/lib/types/host/kimi-code/session-cache-state.d.ts.map +1 -1
- package/lib/types/host/kimi-code/types.d.ts +29 -4
- package/lib/types/host/kimi-code/types.d.ts.map +1 -1
- package/lib/types/host/preferences.d.ts.map +1 -1
- package/lib/types/host/routes.d.ts.map +1 -1
- package/lib/types/host/subagent-model-authorization.d.ts +130 -2
- package/lib/types/host/subagent-model-authorization.d.ts.map +1 -1
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/shared/contracts.d.ts +28 -0
- package/lib/types/shared/contracts.d.ts.map +1 -1
- package/lib/types/shared/kimi-code-contracts.d.ts +10 -1
- package/lib/types/shared/kimi-code-contracts.d.ts.map +1 -1
- package/lib/types/shared/preferences.d.ts +52 -1
- package/lib/types/shared/preferences.d.ts.map +1 -1
- package/package.json +1 -1
- package/presets/dispatch/agent.cordis.yml +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,37 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 0.50.0 - 2026-11-01
|
|
6
|
+
|
|
7
|
+
- **[subagent] 优化子代理卡片的布局、间距与状态呈现**
|
|
8
|
+
- 调整 `SubagentCard` 的结构和样式,使子代理运行状态与结果信息在有限空间内更易读取。
|
|
9
|
+
|
|
10
|
+
- **[kimi-code] 扩展缓存投影、标题请求隔离与冷启动单飞**
|
|
11
|
+
- 扩大可结构化提取的工具结果投影覆盖,支持复合 JSON 信封、spill 全文恢复和带引用的精确补读,减少大结果反复进入上下文。
|
|
12
|
+
- 标题请求不再发送主会话 cache key,也不写入主会话用量、活动时间、漂移归因或 warmup 状态。
|
|
13
|
+
- 新增按 region/model/system/tools 分组的冷启动单飞:leader 到响应头即释放 follower,2xx 才记 warm;跟随请求有界等待,失败立即放行。
|
|
14
|
+
|
|
15
|
+
- **[kimi-code] 修复缓存投影与并发恢复边界**
|
|
16
|
+
- 复合信封中的源码、契约和混合证据恢复逐字保留;spill 解析支持图片省略段和未知字节数。
|
|
17
|
+
- 工具结果包含标题提示词时不再误判为标题请求;标题请求也不会清除主会话的图片 offload 归因。
|
|
18
|
+
- 悬挂 leader 超过等待预算后允许重选,旧 leader 的身份守卫避免误删新槽位。
|
|
19
|
+
|
|
20
|
+
- **[kimi-code] 新增主代理缓存等待策略:工作优先、空闲计时、自然续热、冷恢复兜底**
|
|
21
|
+
- 新增宿主侧 `KimiCacheWaitController`,通过持久会话事件识别主代理回合与子代理目录,仅在主代理 idle 且仍有未完成任务时启动等待;从主代理最后一次成功模型活动计算约 25 分钟缓存窗口,不把工具运行或子代理启动时间误当作续热。
|
|
22
|
+
- 自然阶段报告和完成通知沿用现有宿主消息通道,由正常主代理模型回合完成续热;没有检查点时不催促、不打断子代理,也不要求周期报告。主代理可继续审查结果或推进不重叠的并行模块。
|
|
23
|
+
- 默认不发送主动保活请求。大上下文部署可通过 `DSH_KIMI_CODE_CACHE_WAIT_WARMUP=1` 选择启用每个委托批次最多一次轻量预热;预热消息经 `createUserMessage` 构建,失败不重试,缓存已过期时直接走普通冷恢复。
|
|
24
|
+
- `test/kimi-code-cache-wait.test.ts` 以假时钟覆盖工作/等待转换、活动时间重置、默认冷路径、单次预热、重复目录事件、完成取消、失败降级和 DSH 持久消息边界。
|
|
25
|
+
|
|
26
|
+
## 0.49.0 - 2026-10-31
|
|
27
|
+
|
|
28
|
+
- **[kimi-code] 图片预算对齐原生 `kimi-cli`(20 MiB 高水位 / 10 MiB 低水位)并实现会话级粘性淘汰(Closes #79)**
|
|
29
|
+
- **预算提升与双水位迟滞**:`DEFAULT_MAX_REQUEST_IMAGE_BYTES` 从 2 MB 时代的 `1.5 MB` 提升至对齐原生 `kimi-cli`(`REQUEST_MEDIA_BUDGET_BYTES`)的 `20 MiB`(`20,971,520` bytes),触发淘汰时的恢复低水位设为 `10 MiB`(`10,485,760` bytes);支持 `DSH_KIMI_CODE_MAX_IMAGE_BYTES` 环境变量覆盖(自动以其 50% 作为恢复低水位)。保持 `src/host/common/request-images.ts` 的共享默认常量 `1,500,000` 不变,不影响其他线路。
|
|
30
|
+
- **会话级粘性淘汰(`budgetDropped`)与持久化**:新增图片身份标识 `requestImageKey`(`attachment:<id>` 或 `inline:<sha256>`)与 `offloadRequestImagesWithStickyBudget`。一旦某张旧图因超预算被替换为占位文本,该会话后续请求始终将其替换为占位文本,不再随每张新图进入而反复重算淘汰集合、打断前缀缓存;淘汰集合同步持久化到 `sessionCacheState`(`dsh-chatgpt-subscription-kimi-cache.json`),跨进程重启后依然保持稳定。
|
|
31
|
+
- **前缀漂移归因与设置页展示**:`KimiCodeCacheStatsDto['lastDrift']` 新增 `'image-offload'`(当本轮新淘汰了历史图片且前缀原本为 `'stable'` 时归因为「旧图片超预算淘汰(缓存重建)」);Kimi 设置页「缓存与 K3 调优」卡片新增「请求图片预算」行展示本轮图片体积、预算上限及低水位/已粘性淘汰张数(中/英/俄三语字典同步补齐)。
|
|
32
|
+
|
|
33
|
+
- **[subagent] 支持按主模型分别配置子代理模型白名单与运行时鉴权**
|
|
34
|
+
- 设置页「子代理模型授权」卡片支持为不同主模型绑定各自允许派发的子代理模型列表,并在运行时路由守卫中按当前会话主模型精确解析与校验白名单。
|
|
35
|
+
|
|
5
36
|
## 0.48.4 - 2026-10-31
|
|
6
37
|
|
|
7
38
|
- **[llm-compat] 修复 `role: 'tool'` 消息的 `toolCallId` 读错位置:整轮请求被判 `11148 tool calls and tool results do not match`**
|
package/README.md
CHANGED
|
@@ -149,7 +149,8 @@
|
|
|
149
149
|
- 真正决定命中率的是**内容稳定性**:同一会话内 `system` 或工具列表一旦变化会使整个前缀缓存失效(实测归零)。因此应保持工具集合稳定、把新增内容追加在末尾;
|
|
150
150
|
- 卡片会显示滚动命中率,方便验证效果;
|
|
151
151
|
- **本线路不发送任何缓存时长字段**,缓存写入与存活完全由服务端决定。这不是省略,而是唯一有依据的选择:5m / 1h 两档只写在 **Moonshot 开放平台**文档里,Kimi Code 订阅端点没有任何缓存 TTL 的文档,官方 CLI 2.0.0 的代码路径里也不存在 `prompt_cache_options`(只有 `prompt_cache_key`);[MoonshotAI/kimi-code#3942](https://github.com/MoonshotAI/kimi-code/issues/3942) 专门请求暴露该档位并附带问了一句「如果 coding 端点不认这个字段,请明确写出来」,至今 open、零回应。此前设置页提供的 5m / 1h 选择因此已**撤除**;
|
|
152
|
-
- **缓存过期提示按
|
|
152
|
+
- **缓存过期提示按 25 分钟判定**(`cache-hint.ts` 的 `CACHE_TTL_MS`)。此前该阈值取的是 `5m` 档位的**名字**(5 分钟),在实测能热 25 分钟的端点上,从第 6 分钟起就开始误报、误报窗口长达 19 分钟 —— 恰好违反本模块自己写下的「宁漏报不误报,误报会训练用户忽略提示」。现在取全部副本仍保持命中的最后一个实测年龄,尽早提示而不声称服务端保证该 TTL;
|
|
153
|
+
- **主代理缓存等待策略与子代理工作解耦**:主代理有独立工作或并行模块可推进时正常工作,只有回合结束且仍有未完成的子代理时才进入 `IDLE_WAIT`,并从主代理最后一次成功模型活动起计算等待(而不是从子代理启动起算)。自然报告和完成通知通过正常主代理回合续热;没有现成检查点时不催促、不打断子代理,默认接受之后的一次冷恢复。连续约 20 分钟没有模型活动后,大上下文部署可用 `DSH_KIMI_CODE_CACHE_WAIT_WARMUP=1` 显式允许**每个委托批次最多一次**轻量预热;小上下文、非 Kimi 会话、预热失败和 TTL 已过期都不尝试,避免形成周期性保活。子代理结果始终经宿主消息通道返回,不依赖主代理缓存是否有效;
|
|
153
154
|
- 设置卡的缓存区块把**写入**单独列成一行(总量 + 5 分钟档 + 1 小时档):写入是独立计费项,折进「新处理 tokens」会让命中率说错话;某个分档是 0 时照实显示 0——响应头缺失只表示服务端没回报该档,不等于那里确实没写。注意这两个分档响应头同样只有开放平台文档背书,订阅端点尚无实测样本,恒为 0 时不要读成「确实没写入」;
|
|
154
155
|
- **视频输入可用**(`k3`、`kimi-for-coding`、`k3.1-pro`):
|
|
155
156
|
- DSH 的模态词表只有 `text`/`image`,但它是可合并扩展的接口,本插件用 TypeScript 模块增强把它扩到 `video`(**未改动 DSH 任何代码**),因此视频走 DSH 真实的能力通道,而不是只能显示在提示里;
|