@te-river/opencode-team-mode 1.8.9 → 1.9.1

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,269 @@
1
+ /**
2
+ * `sessionInstructions` — 把易变上下文写成宿主的 keyed session instructions.
3
+ *
4
+ * 2.2.0 新增 `ctx.session.instructions.entry.put/list/remove`。官方 changelog 说
5
+ * keyed 指令「added as a small update at the next step」:不破 prompt cache、跨压缩
6
+ * 与回退存活、也不额外起一轮。那正是 `dynamicTail` 想要的三件事,而 `dynamicTail`
7
+ * 在 2.1.x 上做不到(宿主把追加的 `role:"user"` 消息持久化并当真实输入回放,实测
8
+ * 2026-10-22,故默认 off)。所以易变上下文的**首选通道**是这里:
9
+ *
10
+ * 四个生产者(状态卡 / 窗口占用 / 重试指令 / 拆分建议)照旧写进同一个
11
+ * `DynamicSink`;本层把它 drain 成四个 key(`team-state` / `team-window` /
12
+ * `team-retry` / `team-advice`),只在**内容真的变了**的时候 put —— hash 相同
13
+ * 一个字节都不写。
14
+ *
15
+ * 三个失败面都落成数字或回退,而不是静默:
16
+ * - **宿主没有这个缝**(2.1.x):本层不注册,人格把 `sessionInstructions` 的实际
17
+ * 值降级成 `fallback-system`(`absent` 计数),生产者走今天的 system 路径;
18
+ * - **`put` 抛错**:该 key 当轮回退 `event.system.push`(保证不丢),`failed`
19
+ * 计数,且**不记 hash** ⇒ 下一轮重试 put(成功的下一轮会把那条兜底摘掉);
20
+ * - **`remove` 抛错**:`failed` 计数;内容已消失,没有可回退的东西。
21
+ *
22
+ * 幂等与重放:宿主在进程内重放同一个 `session.context` 事件对象(同一处实测,见
23
+ * v2-tail.ts 的注释),而 sink 已经被 drain 过 —— 若不拦住,第二次重放会把「空
24
+ * sink」读成「内容消失」并 remove 掉刚 put 的条目。所以同一个 event 对象只处理
25
+ * 一次(`replayed` 计数)。
26
+ *
27
+ * 边界(写在代码里而不是留给读者猜):hash 表是**进程内**的。宿主持久化的旧条目
28
+ * 在进程重启后仍在,所以每个会话在本进程的**第一个**请求会尽力 `list()` 一次,把
29
+ * 我们自己的 key 记成「hash 未知」——有内容就覆盖,没内容就摘掉。`list` 不可用或
30
+ * 抛错时按 `listFailed` 计数,此时旧条目只能等下一轮内容变化才被覆盖(本层不假装
31
+ * 这条路径是幂等的)。
32
+ */
33
+ import { createHash } from "node:crypto";
34
+ import { resolveConfig } from "../tm/config.js";
35
+ import { DYNAMIC_SECTION_ORDER } from "./v2-tail.js";
36
+ /** 段 → 宿主 key. 顺序与 `DYNAMIC_SECTION_ORDER` 一致(state → window → retry → advice)。 */
37
+ export const INSTRUCTION_KEYS = {
38
+ state: "team-state",
39
+ window: "team-window",
40
+ retry: "team-retry",
41
+ advice: "team-advice",
42
+ };
43
+ /** 我们的 key 集合——`list()` 的清洗只认这四个,别人的 key 一个都不碰。 */
44
+ const OUR_KEYS = new Set(Object.values(INSTRUCTION_KEYS));
45
+ /** 「这个 key 在宿主里有,但本进程不知道它的内容 hash」的哨兵:永不等于真实 hash。 */
46
+ const UNKNOWN_HASH = "unknown";
47
+ /**
48
+ * 从 plugin ctx 里取出这个缝。缺任何一个必需方法都返回 `null` —— 2.1.x 上
49
+ * `ctx.session.instructions` 整个是 undefined,这条路径就是它的证据。
50
+ *
51
+ * 每次调用都在调用点绑定接收者(`.call(entry, …)`),不丢 `this` —— 捕获函数引用
52
+ * 后再裸调用会丢接收者,这正是本仓 `tm_join` 在真机上踩过的那个坑。
53
+ */
54
+ export function sessionInstructionsSeamOf(ctx) {
55
+ const instructions = ctx?.session?.instructions;
56
+ const entry = instructions?.entry;
57
+ if (!entry || typeof entry !== "object")
58
+ return null;
59
+ const candidate = entry;
60
+ if (typeof candidate.put !== "function" || typeof candidate.remove !== "function")
61
+ return null;
62
+ const put = candidate.put;
63
+ const remove = candidate.remove;
64
+ const list = candidate.list;
65
+ return {
66
+ put: (input) => put.call(entry, input),
67
+ remove: (input) => remove.call(entry, input),
68
+ ...(typeof list === "function" ? { list: (input) => list.call(entry, input) } : {}),
69
+ };
70
+ }
71
+ const isOff = (value) => typeof value === "string" && /^(off|0|false|no)$/i.test(value.trim());
72
+ /** `sessionInstructions: "off"` 关闭;注册表默认 on(缝不在时由人格降级成 fallback-system)。 */
73
+ export function resolveSessionInstructionsConfig(config = resolveConfig()) {
74
+ return { enabled: !isOff(config.sessionInstructions) };
75
+ }
76
+ const sha256 = (text) => createHash("sha256").update(text, "utf8").digest("hex");
77
+ const slotOf = (sessionID, key) => `${sessionID}\u0000${key}`;
78
+ /** `list()` 的返回可能是数组,也可能包在 `{data:[...]}` 里(两种都认,只取 key)。 */
79
+ export function knownKeysOf(result) {
80
+ const arr = Array.isArray(result)
81
+ ? result
82
+ : Array.isArray(result?.data)
83
+ ? (result.data)
84
+ : [];
85
+ const out = [];
86
+ for (const item of arr) {
87
+ const key = item?.key;
88
+ if (typeof key === "string" && key)
89
+ out.push(key);
90
+ }
91
+ return out;
92
+ }
93
+ /**
94
+ * 注册 keyed-instructions 层。必须注册在**所有生产者之后**:四个生产者按各自的
95
+ * hook 顺序把内容写进 sink,本层最后一个看到完整的一份。
96
+ *
97
+ * 与 `dynamicTail` 的关系:两者同时开启时本层先 drain,尾部层看到空 sink 一个
98
+ * 字节都不动——方向是「首选的通道先拿」,而不是谁先注册谁赢。
99
+ */
100
+ export async function applyV2SessionInstructions(ctx, input) {
101
+ const report = {
102
+ status: input.enabled === false ? "off" : "fallback-system",
103
+ absent: 0,
104
+ requests: 0,
105
+ put: 0,
106
+ removed: 0,
107
+ skipped: 0,
108
+ failed: 0,
109
+ listFailed: 0,
110
+ replayed: 0,
111
+ noSession: 0,
112
+ foreignSkipped: 0,
113
+ threw: 0,
114
+ };
115
+ const registrations = [];
116
+ if (input.enabled === false)
117
+ return { registrations, report, active: false };
118
+ const session = ctx.session;
119
+ if (!session || typeof session.hook !== "function") {
120
+ report.absent++;
121
+ return { registrations, report, active: false };
122
+ }
123
+ const seam = sessionInstructionsSeamOf(ctx);
124
+ if (!seam) {
125
+ // 2.1.x:没有这条路。人格把实际值报成 fallback-system,生产者留在 system 上。
126
+ report.absent++;
127
+ return { registrations, report, active: false };
128
+ }
129
+ report.status = "on";
130
+ /** `${sid}\0${key}` → 上一次成功 put 的内容 hash(`UNKNOWN_HASH` = 宿主里有、本进程没写)。 */
131
+ const hashes = new Map();
132
+ /** `${sid}\0${key}` → 因为 put 失败而临时推进 system 的那段正文(成功后会摘掉)。 */
133
+ const fallbacks = new Map();
134
+ /** 本进程已经尽力 list 过的会话(每个会话一次)。 */
135
+ const listed = new Set();
136
+ /** 重放判定:同一个事件对象只处理一次(进程级 = 本层实例级,不复制内容)。 */
137
+ const seenEvents = new WeakSet();
138
+ const emit = (row) => {
139
+ try {
140
+ input.onEvent?.(row);
141
+ }
142
+ catch {
143
+ /* 轨迹是附加物,不能成为请求失败的理由 */
144
+ }
145
+ };
146
+ /** 把上一轮 put 失败留下的 system 兜底摘掉:内容既然写进了宿主,就不该在 system 里留副本。 */
147
+ const dropFallback = (slot, system) => {
148
+ const text = fallbacks.get(slot);
149
+ if (text === undefined)
150
+ return;
151
+ fallbacks.delete(slot);
152
+ if (!system)
153
+ return;
154
+ for (let i = system.length - 1; i >= 0; i--) {
155
+ const part = system[i];
156
+ if (part && typeof part.text === "string" && part.text === text)
157
+ system.splice(i, 1);
158
+ }
159
+ };
160
+ registrations.push(await session.hook("context", async (event) => {
161
+ try {
162
+ // #22:不属于我们的会话一个字节都不动。
163
+ if (input.scope && input.scope.count(input.scope.decide(event)) !== "ours") {
164
+ report.foreignSkipped++;
165
+ return;
166
+ }
167
+ const sidRaw = event?.sessionID;
168
+ const sid = typeof sidRaw === "string" && sidRaw.trim() ? sidRaw.trim() : "";
169
+ if (!sid) {
170
+ report.noSession++;
171
+ return;
172
+ }
173
+ // 宿主会在进程内重放同一个事件对象;sink 已空 ⇒ 什么都不做(见文件头)。
174
+ if (event && typeof event === "object") {
175
+ if (seenEvents.has(event)) {
176
+ report.replayed++;
177
+ return;
178
+ }
179
+ seenEvents.add(event);
180
+ }
181
+ report.requests++;
182
+ const system = Array.isArray(event?.system)
183
+ ? (event.system)
184
+ : null;
185
+ // 本进程的第一个请求:尽力问一次宿主「我的四个 key 里哪些已经在?」
186
+ // 不知道 hash 的记成 UNKNOWN_HASH —— 有内容就覆盖,没内容就摘掉。
187
+ if (!listed.has(sid)) {
188
+ listed.add(sid);
189
+ if (seam.list) {
190
+ try {
191
+ for (const key of knownKeysOf(await seam.list({ sessionID: sid }))) {
192
+ if (!OUR_KEYS.has(key))
193
+ continue;
194
+ const slot = slotOf(sid, key);
195
+ if (!hashes.has(slot))
196
+ hashes.set(slot, UNKNOWN_HASH);
197
+ }
198
+ }
199
+ catch {
200
+ report.listFailed++;
201
+ }
202
+ }
203
+ }
204
+ const sections = input.sink.take(sid);
205
+ let putNow = 0;
206
+ let removedNow = 0;
207
+ let skippedNow = 0;
208
+ let failedNow = 0;
209
+ for (const section of DYNAMIC_SECTION_ORDER) {
210
+ const key = INSTRUCTION_KEYS[section];
211
+ const slot = slotOf(sid, key);
212
+ const body = (sections.get(section) ?? "").trim();
213
+ const prev = hashes.get(slot);
214
+ if (!body) {
215
+ // 内容消失:宿主里若还有这一条,摘掉(否则旧卡/旧指令会一直挂着)。
216
+ dropFallback(slot, system);
217
+ if (prev === undefined)
218
+ continue;
219
+ try {
220
+ await seam.remove({ sessionID: sid, key });
221
+ hashes.delete(slot);
222
+ report.removed++;
223
+ removedNow++;
224
+ }
225
+ catch {
226
+ report.failed++;
227
+ failedNow++;
228
+ }
229
+ continue;
230
+ }
231
+ const hash = sha256(body);
232
+ if (prev !== undefined && prev === hash) {
233
+ // 同一条内容:一个字节都不写(这就是省下来的 cache 与 token)。
234
+ dropFallback(slot, system);
235
+ report.skipped++;
236
+ skippedNow++;
237
+ continue;
238
+ }
239
+ try {
240
+ await seam.put({ sessionID: sid, key, value: body });
241
+ hashes.set(slot, hash);
242
+ dropFallback(slot, system);
243
+ report.put++;
244
+ putNow++;
245
+ }
246
+ catch {
247
+ // 保证不丢:这一轮改走 system,且**不记 hash**(下一轮重试 put)。
248
+ report.failed++;
249
+ failedNow++;
250
+ if (system) {
251
+ const already = system.some((p) => p?.text === body);
252
+ if (!already)
253
+ system.push({ type: "text", text: body });
254
+ fallbacks.set(slot, body);
255
+ }
256
+ }
257
+ }
258
+ // 节流:只在真的有变化(或有失败要看)时写一行。
259
+ if (putNow || removedNow || failedNow) {
260
+ emit({ event: "sync", put: putNow, removed: removedNow, skipped: skippedNow, failed: failedNow });
261
+ }
262
+ }
263
+ catch {
264
+ report.threw++;
265
+ }
266
+ }));
267
+ return { registrations, report, active: true };
268
+ }
269
+ //# sourceMappingURL=v2-session-instructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v2-session-instructions.js","sourceRoot":"","sources":["../../src/host/v2-session-instructions.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,11 @@
33
33
  * rewrite the request. The card's render and its byte gate never reference
34
34
  * it; an unreadable window (no usage, no catalog entry, a throwing read)
35
35
  * removes the entry rather than rendering a fabricated 0%.
36
+ * - **The cache row does not need the window.** A `v2-cache` trajectory line is
37
+ * emitted whenever the newest message carries a usage block
38
+ * (`lastCacheUsageOf`) — a hit rate has no denominator to look up. The
39
+ * `[Team 窗口占用]` entry still requires a real `limit.context` and is absent
40
+ * when the catalog does not describe the model.
36
41
  * - **A failed read says so, once per session.** A storage read that throws
37
42
  * injects nothing and writes one `state_skipped` trajectory row; a repeated
38
43
  * failure for the same session does not become a line per request.
@@ -1 +1 @@
1
- {"version":3,"file":"v2-state.d.ts","sourceRoot":"","sources":["../../src/host/v2-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"v2-state.d.ts","sourceRoot":"","sources":["../../src/host/v2-state.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,11 @@
33
33
  * rewrite the request. The card's render and its byte gate never reference
34
34
  * it; an unreadable window (no usage, no catalog entry, a throwing read)
35
35
  * removes the entry rather than rendering a fabricated 0%.
36
+ * - **The cache row does not need the window.** A `v2-cache` trajectory line is
37
+ * emitted whenever the newest message carries a usage block
38
+ * (`lastCacheUsageOf`) — a hit rate has no denominator to look up. The
39
+ * `[Team 窗口占用]` entry still requires a real `limit.context` and is absent
40
+ * when the catalog does not describe the model.
36
41
  * - **A failed read says so, once per session.** A storage read that throws
37
42
  * injects nothing and writes one `state_skipped` trajectory row; a repeated
38
43
  * failure for the same session does not become a line per request.
@@ -46,7 +51,7 @@
46
51
  */
47
52
  import { estimateTokens, shorten } from "../tm/config.js";
48
53
  import { normalizeAgentName } from "../identity.js";
49
- import { cacheStatsOf, createUsagePercent } from "./v2-usage.js";
54
+ import { cacheRateOf, createUsagePercent, lastCacheUsageOf } from "./v2-usage.js";
50
55
  /** 卡片标记:`event.system` 里以它开头的条目就是状态卡(唯一一条)。 */
51
56
  export const STATE_CARD_MARKER = "[Team 状态卡]";
52
57
  /** 窗口占用条目的标记——它是**独立条目**,不参与状态卡的渲染与 hash 门控。 */
@@ -287,12 +292,15 @@ export async function applyV2StateCard(ctx, input) {
287
292
  catch {
288
293
  windowReading = null;
289
294
  }
290
- // ---- 缓存命中:每请求一行轨迹,就发在这一次读数上(不新增第二次 usage 读取)----
291
- // 读不到 usage 就一行都不写:「没读到」落盘后会被当成「0 命中」,那正是这行要防的。
292
- // `step_id` 覆盖 v2.ts 包装里的默认值(它在 `...row` 之前),这一行因此按自己的
293
- // 口径被 tm_stats 汇总,而不是混进 v2-state 的观测行。
294
- if (windowReading) {
295
- const cache = cacheStatsOf(windowReading);
295
+ // ---- 缓存命中:每请求一行轨迹,与窗口读数**解耦** ----
296
+ // 命中率不需要窗口:`limit.context` 只决定「占比」,而 cache.read/write/input
297
+ // 是 provider 对这一轮请求的实测。目录里没有当前模型(私有/本地部署)时窗口是
298
+ // 正常地「不可得」,旧写法把这一行也一起吞了,tm_stats 于是显示「没有 v2-cache
299
+ // 行」——读起来像「从没命中」,其实是「从没读数」。只读消息自带的 usage 块,
300
+ // 没有 usage 块仍是一行都不写(「没读到」不能落盘成「0 命中」)。
301
+ const cache = lastCacheUsageOf(event.messages);
302
+ if (cache) {
303
+ const rate = cacheRateOf(cache);
296
304
  emit({
297
305
  step_id: "v2-cache",
298
306
  event: "cache",
@@ -301,7 +309,7 @@ export async function applyV2StateCard(ctx, input) {
301
309
  read: cache.read,
302
310
  write: cache.write,
303
311
  input: cache.input,
304
- rate: cache.hitRate === null ? null : Number(cache.hitRate.toFixed(2)),
312
+ rate: rate === null ? null : Number(rate.toFixed(2)),
305
313
  });
306
314
  }
307
315
  {
@@ -1 +1 @@
1
- {"version":3,"file":"v2-state.js","sourceRoot":"","sources":["../../src/host/v2-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"v2-state.js","sourceRoot":"","sources":["../../src/host/v2-state.ts"],"names":[],"mappings":"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"}
@@ -215,12 +215,49 @@ export interface V2SessionDomain {
215
215
  delivery?: string;
216
216
  resume?: boolean;
217
217
  }) => Promise<unknown>;
218
+ /**
219
+ * Keyed session instructions — `ctx.session.instructions.entry.put/list/remove`,
220
+ * new on host 2.2.0 (ABSENT on 2.1.x, where `ctx.session.instructions` is
221
+ * `undefined`). The host's own changelog: an entry is "added as a small update at
222
+ * the next step" — it does not break the prompt cache, survives compaction and
223
+ * rewind, and does not start an extra turn. That is exactly the three properties
224
+ * `dynamicTail` could not get on 2.1.x, which is why `sessionInstructions` prefers
225
+ * this seam and falls back to `event.system` when the domain is missing.
226
+ *
227
+ * Declared from the official route inventory
228
+ * (`/api/experimental/session/{sessionID}/instructions/entries`, experimental) and
229
+ * the zero-token probe of 2.2.0; only `put`/`remove` are required for the seam to
230
+ * count as present — `list` is optional because nothing here depends on it.
231
+ */
232
+ readonly instructions?: V2SessionInstructionsDomain;
218
233
  readonly prompt?: (input: Record<string, unknown>) => Promise<unknown>;
219
234
  readonly wait?: (input: {
220
235
  sessionID: string;
221
236
  }) => Promise<unknown>;
222
237
  readonly [key: string]: unknown;
223
238
  }
239
+ export interface V2InstructionEntryInfo {
240
+ readonly sessionID?: string;
241
+ readonly key: string;
242
+ readonly value?: string;
243
+ readonly time?: unknown;
244
+ }
245
+ export interface V2SessionInstructionsDomain {
246
+ readonly entry: {
247
+ readonly put: (input: {
248
+ sessionID: string;
249
+ key: string;
250
+ value: string;
251
+ }) => Promise<unknown>;
252
+ readonly remove: (input: {
253
+ sessionID: string;
254
+ key: string;
255
+ }) => Promise<unknown>;
256
+ readonly list?: (input: {
257
+ sessionID: string;
258
+ }) => Promise<unknown>;
259
+ };
260
+ }
224
261
  /**
225
262
  * `ctx.model.list({})` measured on 2.0.23: `{location, data: […]}` where an item carries
226
263
  * `id, modelID, providerID, name, package, settings, capabilities, variants, time, cost,
@@ -1 +1 @@
1
- {"version":3,"file":"v2-types.d.ts","sourceRoot":"","sources":["../../src/host/v2-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACtC;AAED,yEAAyE;AACzE,MAAM,MAAM,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,SAAS,MAAM,IAAI,EAClD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,KAClD,OAAO,CAAC,cAAc,CAAC,CAAA;AAE5B,iEAAiE;AACjE,MAAM,MAAM,WAAW,CAAC,KAAK,IAAI,CAC/B,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,KAC7B,OAAO,CAAC,cAAc,CAAC,CAAA;AAI5B,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,aAAa,CAAA;AAErD;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAA;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACvD;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,OAAO,EAAE,CAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,aAAa,KACnB,OAAO,CAAC,YAAY,CAAC,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;QAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;QAC5B;;;;;;WAMG;QACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAC5B,CAAA;CACF;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,IAAI,aAAa,CAAC,UAAU,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACnD,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC,UAAU,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,SAAS,CAAA;IAC3D,GAAG,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAA;IAC3B,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI,CAAA;IAC7D,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,SAAS,CAAC,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAAA;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,EAAE,OAAO,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAA;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,CAAA;IAC9C,QAAQ,CAAC,eAAe,EAAE,kBAAkB,CAAA;CAC7C;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,YAAY,CAAC,CAAA;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IACzE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACtC;AAID,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,CAAA;CAC1C;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,KAAK,CAAA;IACrC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,IAAI,aAAa,CAAC,WAAW,CAAC,CAAA;IAClC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAA;IAMxC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI,CAAA;IAC9D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,aAAa,CAAC,CAAA;IAC9C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAA;CAC1D;AAID;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,CAAA;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QAAE,QAAQ,EAAE,sBAAsB,CAAA;KAAE,CAAC,CAAA;IAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACrD,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CACvD;AAID,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,kFAAkF;IAClF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACvE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAA;IAClC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,GAAG;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CAyB7D;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;IACtC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACrG;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACpL,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAClE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACtD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1D,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAChC;AAID,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QAAE,eAAe,EAAE,mBAAmB,CAAA;KAAE,CAAC,CAAA;CACjE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/C,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5D,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/C,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CACtD;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CACxB;AAID,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAClB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;QAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE;YAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KACzE,CAAA;IACD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAA;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAA;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAA;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,aAAa,CAAC,OAAO,CAAC,CAAA;KAAE,CAAA;IACrE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAChC;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;AAElD,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,SAAS,GAAG,IAAI,CAAA;CACjF"}
1
+ {"version":3,"file":"v2-types.d.ts","sourceRoot":"","sources":["../../src/host/v2-types.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,12 @@
10
10
  * against. `cacheStatsOf` turns that same block's cache counters into a hit rate — and
11
11
  * answers NULL, never 0%, when the provider reported no cache at all.
12
12
  *
13
+ * `lastCacheUsageOf` is the WINDOW-LESS reader: the cache counters come from the
14
+ * newest usage block alone, so a session running a model the catalog does not
15
+ * describe still gets a cache reading. A percent needs a denominator; a cache
16
+ * hit rate does not, and tying one to the other meant the meter went dark on
17
+ * exactly the deployments a plugin cannot look up.
18
+ *
13
19
  * Until 1.7.0 these lived in `v2-compaction.ts`, whose layer submitted
14
20
  * `ctx.session.compact({sessionID})` on its own once a session crossed 75% of the
15
21
  * window. That AUTOMATIC compaction was removed in 1.7.1 — a plugin that summarizes a
@@ -105,6 +111,28 @@ export interface CacheStats {
105
111
  * because a cache read and a cache write are both a way an input token was billed.
106
112
  */
107
113
  export declare function cacheStatsOf(reading: UsagePercentReading | null | undefined): CacheStats;
114
+ /**
115
+ * The same ratio, taken from the counters alone — the one formula both a
116
+ * windowed reading (`cacheStatsOf`) and a window-less one use, so the two can
117
+ * never disagree about what "0%" means.
118
+ */
119
+ export declare function cacheRateOf(cache: UsageCacheCounts | null | undefined): number | null;
120
+ /**
121
+ * Cache accounting of the NEWEST usage block in a transcript — the reader that
122
+ * does NOT need a context window.
123
+ *
124
+ * `createUsagePercent` answers null when the model is absent from
125
+ * `ctx.model.list()`, because a percent without a denominator is a guess. The
126
+ * cache counters have no such dependency: `cache.read / write / input` are what
127
+ * the provider reported for that request, whatever the catalog knows. Tying
128
+ * the `v2-cache` trajectory row to the percent meant a session on a model the
129
+ * catalog omits emitted NO row at all, and `tm_stats` then renders "no
130
+ * samples" — which reads like "caching never happens" rather than "we never
131
+ * looked". No usage block at all still answers null (zero rows, never 0%);
132
+ * a block without a `cache` object answers `present: false` so no rate is
133
+ * invented from a missing field.
134
+ */
135
+ export declare function lastCacheUsageOf(messages: unknown): UsageCacheCounts | null;
108
136
  /**
109
137
  * Resolve "how full is this window" from the request plus the catalog — the same
110
138
  * denominator the desktop's usage meter reads (`ctx.model.list()` → `limit.context`),
@@ -1 +1 @@
1
- {"version":3,"file":"v2-usage.d.ts","sourceRoot":"","sources":["../../src/host/v2-usage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AA2B9C;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAG9D;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;CACjB;AAYD,sFAAsF;AACtF,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAUxF;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG;IAC9C,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAChD,KAAK,EAAE,gBAAgB,CAAA;CACxB,GAAG,IAAI,CAQP;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAG7D;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IACzC,KAAK,EAAE,gBAAgB,CAAA;CACxB;AAED,MAAM,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAA;AAE9G,0DAA0D;AAC1D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,+EAA+E;IAC/E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,CAQxF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,SAAS,GAAG,kBAAkB,CAgErE"}
1
+ {"version":3,"file":"v2-usage.d.ts","sourceRoot":"","sources":["../../src/host/v2-usage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AA2B9C;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAG9D;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;CACjB;AAYD,sFAAsF;AACtF,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAUxF;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG;IAC9C,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAChD,KAAK,EAAE,gBAAgB,CAAA;CACxB,GAAG,IAAI,CAQP;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAG7D;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IACzC,KAAK,EAAE,gBAAgB,CAAA;CACxB;AAED,MAAM,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAA;AAE9G,0DAA0D;AAC1D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,+EAA+E;IAC/E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,CAIxF;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAKrF;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAQ3E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,SAAS,GAAG,kBAAkB,CAgErE"}
@@ -10,6 +10,12 @@
10
10
  * against. `cacheStatsOf` turns that same block's cache counters into a hit rate — and
11
11
  * answers NULL, never 0%, when the provider reported no cache at all.
12
12
  *
13
+ * `lastCacheUsageOf` is the WINDOW-LESS reader: the cache counters come from the
14
+ * newest usage block alone, so a session running a model the catalog does not
15
+ * describe still gets a cache reading. A percent needs a denominator; a cache
16
+ * hit rate does not, and tying one to the other meant the meter went dark on
17
+ * exactly the deployments a plugin cannot look up.
18
+ *
13
19
  * Until 1.7.0 these lived in `v2-compaction.ts`, whose layer submitted
14
20
  * `ctx.session.compact({sessionID})` on its own once a session crossed 75% of the
15
21
  * window. That AUTOMATIC compaction was removed in 1.7.1 — a plugin that summarizes a
@@ -124,11 +130,46 @@ export function cacheStatsOf(reading) {
124
130
  const cache = reading?.cache;
125
131
  if (!cache)
126
132
  return { read: 0, write: 0, input: 0, hitRate: null };
133
+ return { read: cache.read, write: cache.write, input: cache.input, hitRate: cacheRateOf(cache) };
134
+ }
135
+ /**
136
+ * The same ratio, taken from the counters alone — the one formula both a
137
+ * windowed reading (`cacheStatsOf`) and a window-less one use, so the two can
138
+ * never disagree about what "0%" means.
139
+ */
140
+ export function cacheRateOf(cache) {
141
+ if (!cache)
142
+ return null;
127
143
  const denominator = cache.read + cache.write + cache.input;
128
- if (!cache.present || denominator <= 0) {
129
- return { read: cache.read, write: cache.write, input: cache.input, hitRate: null };
144
+ if (!cache.present || denominator <= 0)
145
+ return null;
146
+ return cache.read / denominator;
147
+ }
148
+ /**
149
+ * Cache accounting of the NEWEST usage block in a transcript — the reader that
150
+ * does NOT need a context window.
151
+ *
152
+ * `createUsagePercent` answers null when the model is absent from
153
+ * `ctx.model.list()`, because a percent without a denominator is a guess. The
154
+ * cache counters have no such dependency: `cache.read / write / input` are what
155
+ * the provider reported for that request, whatever the catalog knows. Tying
156
+ * the `v2-cache` trajectory row to the percent meant a session on a model the
157
+ * catalog omits emitted NO row at all, and `tm_stats` then renders "no
158
+ * samples" — which reads like "caching never happens" rather than "we never
159
+ * looked". No usage block at all still answers null (zero rows, never 0%);
160
+ * a block without a `cache` object answers `present: false` so no rate is
161
+ * invented from a missing field.
162
+ */
163
+ export function lastCacheUsageOf(messages) {
164
+ if (!Array.isArray(messages))
165
+ return null;
166
+ for (let i = messages.length - 1; i >= 0; i--) {
167
+ const t = usageBlockOf(messages[i]);
168
+ if (!t)
169
+ continue;
170
+ return cacheCountsOf(t);
130
171
  }
131
- return { read: cache.read, write: cache.write, input: cache.input, hitRate: cache.read / denominator };
172
+ return null;
132
173
  }
133
174
  /**
134
175
  * Resolve "how full is this window" from the request plus the catalog — the same