@newrelic/preflight 1.15.2 → 1.15.4
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/dist/dashboard/workflow-store.d.ts +5 -3
- package/dist/dashboard/workflow-store.d.ts.map +1 -1
- package/dist/dashboard/workflow-store.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +57 -3
- package/dist/index.js.map +1 -1
- package/dist/metrics/cost-tracker-seed.d.ts +4 -0
- package/dist/metrics/cost-tracker-seed.d.ts.map +1 -0
- package/dist/metrics/cost-tracker-seed.js +35 -0
- package/dist/metrics/cost-tracker-seed.js.map +1 -0
- package/dist/metrics/cost-tracker.d.ts +62 -12
- package/dist/metrics/cost-tracker.d.ts.map +1 -1
- package/dist/metrics/cost-tracker.js +73 -12
- package/dist/metrics/cost-tracker.js.map +1 -1
- package/dist/metrics/model-usage-tracker.d.ts +17 -0
- package/dist/metrics/model-usage-tracker.d.ts.map +1 -1
- package/dist/metrics/model-usage-tracker.js +29 -0
- package/dist/metrics/model-usage-tracker.js.map +1 -1
- package/dist/shared/pricing-data.d.ts.map +1 -1
- package/dist/shared/pricing-data.js +307 -48
- package/dist/shared/pricing-data.js.map +1 -1
- package/dist/storage/session-store.d.ts +9 -0
- package/dist/storage/session-store.d.ts.map +1 -1
- package/dist/storage/session-store.js +15 -0
- package/dist/storage/session-store.js.map +1 -1
- package/package.json +12 -12
|
@@ -66,6 +66,35 @@ export interface CostMetrics {
|
|
|
66
66
|
*/
|
|
67
67
|
readonly costByWorkflowRunId: Record<string, Record<string, number>>;
|
|
68
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Cumulative totals to seed into a freshly-constructed tracker, derived from
|
|
71
|
+
* a previous process's last checkpoint for the SAME session — see
|
|
72
|
+
* `seedFromPersisted()` for why this exists.
|
|
73
|
+
*/
|
|
74
|
+
export interface CostTrackerSeed {
|
|
75
|
+
readonly totalCostUsd: number;
|
|
76
|
+
readonly subagentCostUsd: number;
|
|
77
|
+
readonly parentCostUsd: number;
|
|
78
|
+
readonly totalInputTokens: number;
|
|
79
|
+
readonly totalOutputTokens: number;
|
|
80
|
+
readonly totalThinkingTokens: number;
|
|
81
|
+
readonly totalCacheReadTokens: number;
|
|
82
|
+
readonly totalCacheCreationTokens: number;
|
|
83
|
+
readonly totalCacheSavingsUsd: number;
|
|
84
|
+
readonly costByModel: Readonly<Record<string, number>>;
|
|
85
|
+
/** Local-day key (see `localDateKey`) `dayCostUsd`/`daySubagentCostUsd` book against. */
|
|
86
|
+
readonly dayKey: string;
|
|
87
|
+
/** Portion of `totalCostUsd`/`subagentCostUsd` attributable to `dayKey` (see `todayPortionOfSessionCost`). */
|
|
88
|
+
readonly dayCostUsd: number;
|
|
89
|
+
readonly daySubagentCostUsd: number;
|
|
90
|
+
/**
|
|
91
|
+
* Per-workflow-run cost, split by local-day, from the persisted checkpoint
|
|
92
|
+
* — see `seedFromPersisted()`'s doc comment for why this is seeded (unlike
|
|
93
|
+
* `reset()`, which still clears this map for the unrelated "wrong session
|
|
94
|
+
* id" correction case).
|
|
95
|
+
*/
|
|
96
|
+
readonly costByWorkflowRunId: Readonly<Record<string, Readonly<Record<string, number>>>>;
|
|
97
|
+
}
|
|
69
98
|
export interface SubagentMetrics {
|
|
70
99
|
readonly subagentUsd: number;
|
|
71
100
|
readonly parentUsd: number;
|
|
@@ -96,9 +125,9 @@ export declare class CostTracker implements Resettable {
|
|
|
96
125
|
/**
|
|
97
126
|
* Per-workflow-run cost attribution split by local-day so a run that crosses
|
|
98
127
|
* midnight contributes to each day's bucket independently. Two-level map:
|
|
99
|
-
* `costByWorkflowRunId.get(runId).get(dayKey) → usd`. Restart-resets to
|
|
100
|
-
*
|
|
101
|
-
*
|
|
128
|
+
* `costByWorkflowRunId.get(runId).get(dayKey) → usd`. Restart-resets to
|
|
129
|
+
* empty UNLESS `seedFromPersisted()` restores it from a persisted
|
|
130
|
+
* checkpoint for this same session (see that method's doc comment).
|
|
102
131
|
*/
|
|
103
132
|
private costByWorkflowRunId;
|
|
104
133
|
/** Per-day mutation counter so dashboards can invalidate cached day cards. */
|
|
@@ -136,6 +165,29 @@ export declare class CostTracker implements Resettable {
|
|
|
136
165
|
*/
|
|
137
166
|
recordEstimatedTokens(inputChars: number, outputChars: number, model: string): CostBreakdown;
|
|
138
167
|
private accumulateTokens;
|
|
168
|
+
/**
|
|
169
|
+
* Seeds cumulative totals from a previous process's last checkpoint for
|
|
170
|
+
* this same session. Adds to current state rather than overwriting, so
|
|
171
|
+
* callers must invoke this at most once per (re)adopted session id, before
|
|
172
|
+
* any real activity for that id has been recorded here — see the call
|
|
173
|
+
* sites in `index.ts` for the once-per-id guard.
|
|
174
|
+
*
|
|
175
|
+
* Restart data-loss fix: `ParentTranscriptWatcher`'s transcript-read cursor
|
|
176
|
+
* is durably persisted across process restarts so a resumed session never
|
|
177
|
+
* re-reads old transcript lines — but this tracker's totals are pure
|
|
178
|
+
* in-memory state with no equivalent persistence. Without this seed, every
|
|
179
|
+
* dollar/token attributed to lines a now-dead prior process already
|
|
180
|
+
* consumed is silently and permanently lost the moment a session gets
|
|
181
|
+
* paused and resumed (sleep, closing a terminal, `claude --resume`,
|
|
182
|
+
* a crash) — the longer/more-interrupted the session, the worse the loss.
|
|
183
|
+
*
|
|
184
|
+
* `costByWorkflowRunId` IS seeded (additively, per run+day) — this used to
|
|
185
|
+
* be the one dimension left to reset on restart, but `WorkflowStore`'s
|
|
186
|
+
* `cost_unknown` flag (see its doc comment in `src/dashboard/workflow-store.ts`)
|
|
187
|
+
* depends on `hasCostForWorkflowRun()` staying accurate across a restart
|
|
188
|
+
* too, so it gets the same treatment as everything else here.
|
|
189
|
+
*/
|
|
190
|
+
seedFromPersisted(seed: CostTrackerSeed): void;
|
|
139
191
|
private computeCacheHitRate;
|
|
140
192
|
/**
|
|
141
193
|
* Cost spent during a specific local-time day, attributed at the moment
|
|
@@ -170,17 +222,15 @@ export declare class CostTracker implements Resettable {
|
|
|
170
222
|
* Whether THIS process's live CostTracker has ever observed a token event
|
|
171
223
|
* for `runId` at all, distinct from `getCostForWorkflowRun()` returning 0.
|
|
172
224
|
* That 0 is ambiguous: it means either "confirmed $0 spend" or "this
|
|
173
|
-
* process never personally observed this run's cost"
|
|
174
|
-
*
|
|
175
|
-
*
|
|
225
|
+
* process never personally observed this run's cost" — e.g. in a
|
|
226
|
+
* `--local` standalone dashboard reading rollups from disk for a run a
|
|
227
|
+
* different, concurrently-running `--stdio` process is the one actually
|
|
228
|
+
* paying for. (A sequential process restart for the SAME session no
|
|
229
|
+
* longer hits this ambiguity — `seedFromPersisted()` rehydrates
|
|
230
|
+
* `costByWorkflowRunId` from the session's own last checkpoint.)
|
|
176
231
|
* `WorkflowStore` uses this to distinguish the two so the "Workflow
|
|
177
232
|
* spend" KPI can flag a total as partial instead of silently treating
|
|
178
|
-
* "unknown" as "zero".
|
|
179
|
-
*
|
|
180
|
-
* This is a read-only accessor over existing state — it does not change
|
|
181
|
-
* what `costByWorkflowRunId` tracks or how. A full fix would persist
|
|
182
|
-
* per-run cost somewhere `WorkflowStore` can read across process
|
|
183
|
-
* restarts/instances; that's out of scope here.
|
|
233
|
+
* "unknown" as "zero".
|
|
184
234
|
*/
|
|
185
235
|
hasCostForWorkflowRun(runId: string): boolean;
|
|
186
236
|
/** Iterable view of every (runId, dayKey, usd) tuple — for dashboard joins. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-tracker.d.ts","sourceRoot":"","sources":["../../src/metrics/cost-tracker.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cost-tracker.d.ts","sourceRoot":"","sources":["../../src/metrics/cost-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,9 +38,9 @@ export class CostTracker {
|
|
|
38
38
|
/**
|
|
39
39
|
* Per-workflow-run cost attribution split by local-day so a run that crosses
|
|
40
40
|
* midnight contributes to each day's bucket independently. Two-level map:
|
|
41
|
-
* `costByWorkflowRunId.get(runId).get(dayKey) → usd`. Restart-resets to
|
|
42
|
-
*
|
|
43
|
-
*
|
|
41
|
+
* `costByWorkflowRunId.get(runId).get(dayKey) → usd`. Restart-resets to
|
|
42
|
+
* empty UNLESS `seedFromPersisted()` restores it from a persisted
|
|
43
|
+
* checkpoint for this same session (see that method's doc comment).
|
|
44
44
|
*/
|
|
45
45
|
costByWorkflowRunId = new Map();
|
|
46
46
|
/** Per-day mutation counter so dashboards can invalidate cached day cards. */
|
|
@@ -167,6 +167,69 @@ export class CostTracker {
|
|
|
167
167
|
}
|
|
168
168
|
return breakdown;
|
|
169
169
|
}
|
|
170
|
+
/**
|
|
171
|
+
* Seeds cumulative totals from a previous process's last checkpoint for
|
|
172
|
+
* this same session. Adds to current state rather than overwriting, so
|
|
173
|
+
* callers must invoke this at most once per (re)adopted session id, before
|
|
174
|
+
* any real activity for that id has been recorded here — see the call
|
|
175
|
+
* sites in `index.ts` for the once-per-id guard.
|
|
176
|
+
*
|
|
177
|
+
* Restart data-loss fix: `ParentTranscriptWatcher`'s transcript-read cursor
|
|
178
|
+
* is durably persisted across process restarts so a resumed session never
|
|
179
|
+
* re-reads old transcript lines — but this tracker's totals are pure
|
|
180
|
+
* in-memory state with no equivalent persistence. Without this seed, every
|
|
181
|
+
* dollar/token attributed to lines a now-dead prior process already
|
|
182
|
+
* consumed is silently and permanently lost the moment a session gets
|
|
183
|
+
* paused and resumed (sleep, closing a terminal, `claude --resume`,
|
|
184
|
+
* a crash) — the longer/more-interrupted the session, the worse the loss.
|
|
185
|
+
*
|
|
186
|
+
* `costByWorkflowRunId` IS seeded (additively, per run+day) — this used to
|
|
187
|
+
* be the one dimension left to reset on restart, but `WorkflowStore`'s
|
|
188
|
+
* `cost_unknown` flag (see its doc comment in `src/dashboard/workflow-store.ts`)
|
|
189
|
+
* depends on `hasCostForWorkflowRun()` staying accurate across a restart
|
|
190
|
+
* too, so it gets the same treatment as everything else here.
|
|
191
|
+
*/
|
|
192
|
+
seedFromPersisted(seed) {
|
|
193
|
+
const hasAnyTotal = seed.totalCostUsd !== 0 ||
|
|
194
|
+
seed.totalInputTokens !== 0 ||
|
|
195
|
+
seed.totalOutputTokens !== 0 ||
|
|
196
|
+
seed.totalThinkingTokens !== 0 ||
|
|
197
|
+
seed.totalCacheReadTokens !== 0 ||
|
|
198
|
+
seed.totalCacheCreationTokens !== 0;
|
|
199
|
+
if (!hasAnyTotal)
|
|
200
|
+
return;
|
|
201
|
+
this.totalCostUsd += seed.totalCostUsd;
|
|
202
|
+
this.subagentCostUsd += seed.subagentCostUsd;
|
|
203
|
+
this.parentCostUsd += seed.parentCostUsd;
|
|
204
|
+
this.totalInputTokens += seed.totalInputTokens;
|
|
205
|
+
this.totalOutputTokens += seed.totalOutputTokens;
|
|
206
|
+
this.totalThinkingTokens += seed.totalThinkingTokens;
|
|
207
|
+
this.totalCacheReadTokens += seed.totalCacheReadTokens;
|
|
208
|
+
this.totalCacheCreationTokens += seed.totalCacheCreationTokens;
|
|
209
|
+
this.totalCacheSavingsUsd += seed.totalCacheSavingsUsd;
|
|
210
|
+
this.reportCount += 1;
|
|
211
|
+
for (const [model, usd] of Object.entries(seed.costByModel)) {
|
|
212
|
+
this.costByModel.set(model, (this.costByModel.get(model) ?? 0) + usd);
|
|
213
|
+
}
|
|
214
|
+
if (seed.dayCostUsd !== 0) {
|
|
215
|
+
this.costByDayUsd.set(seed.dayKey, (this.costByDayUsd.get(seed.dayKey) ?? 0) + seed.dayCostUsd);
|
|
216
|
+
this.lastMutationMsByDay.set(seed.dayKey, Date.now());
|
|
217
|
+
const existingFirst = this.firstActivityMsByDay.get(seed.dayKey);
|
|
218
|
+
if (existingFirst === undefined) {
|
|
219
|
+
this.firstActivityMsByDay.set(seed.dayKey, Date.now());
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
if (seed.daySubagentCostUsd !== 0) {
|
|
223
|
+
this.subagentCostByDayUsd.set(seed.dayKey, (this.subagentCostByDayUsd.get(seed.dayKey) ?? 0) + seed.daySubagentCostUsd);
|
|
224
|
+
}
|
|
225
|
+
for (const [runId, days] of Object.entries(seed.costByWorkflowRunId)) {
|
|
226
|
+
const runMap = this.costByWorkflowRunId.get(runId) ?? new Map();
|
|
227
|
+
for (const [dayKey, usd] of Object.entries(days)) {
|
|
228
|
+
runMap.set(dayKey, (runMap.get(dayKey) ?? 0) + usd);
|
|
229
|
+
}
|
|
230
|
+
this.costByWorkflowRunId.set(runId, runMap);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
170
233
|
computeCacheHitRate() {
|
|
171
234
|
const denominator = this.totalInputTokens + this.totalCacheReadTokens + this.totalCacheCreationTokens;
|
|
172
235
|
if (denominator === 0)
|
|
@@ -224,17 +287,15 @@ export class CostTracker {
|
|
|
224
287
|
* Whether THIS process's live CostTracker has ever observed a token event
|
|
225
288
|
* for `runId` at all, distinct from `getCostForWorkflowRun()` returning 0.
|
|
226
289
|
* That 0 is ambiguous: it means either "confirmed $0 spend" or "this
|
|
227
|
-
* process never personally observed this run's cost"
|
|
228
|
-
*
|
|
229
|
-
*
|
|
290
|
+
* process never personally observed this run's cost" — e.g. in a
|
|
291
|
+
* `--local` standalone dashboard reading rollups from disk for a run a
|
|
292
|
+
* different, concurrently-running `--stdio` process is the one actually
|
|
293
|
+
* paying for. (A sequential process restart for the SAME session no
|
|
294
|
+
* longer hits this ambiguity — `seedFromPersisted()` rehydrates
|
|
295
|
+
* `costByWorkflowRunId` from the session's own last checkpoint.)
|
|
230
296
|
* `WorkflowStore` uses this to distinguish the two so the "Workflow
|
|
231
297
|
* spend" KPI can flag a total as partial instead of silently treating
|
|
232
|
-
* "unknown" as "zero".
|
|
233
|
-
*
|
|
234
|
-
* This is a read-only accessor over existing state — it does not change
|
|
235
|
-
* what `costByWorkflowRunId` tracks or how. A full fix would persist
|
|
236
|
-
* per-run cost somewhere `WorkflowStore` can read across process
|
|
237
|
-
* restarts/instances; that's out of scope here.
|
|
298
|
+
* "unknown" as "zero".
|
|
238
299
|
*/
|
|
239
300
|
hasCostForWorkflowRun(runId) {
|
|
240
301
|
return this.costByWorkflowRunId.has(runId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-tracker.js","sourceRoot":"","sources":["../../src/metrics/cost-tracker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cost-tracker.js","sourceRoot":"","sources":["../../src/metrics/cost-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,23 @@ import type { Resettable } from './tracker-contracts.js';
|
|
|
25
25
|
export declare class ModelUsageTracker implements Resettable {
|
|
26
26
|
private byModel;
|
|
27
27
|
recordUsage(model: string, inputTokens: number, outputTokens: number, costUsd: number): void;
|
|
28
|
+
/**
|
|
29
|
+
* Seeds cumulative per-model counters from a previous process's last
|
|
30
|
+
* checkpoint for this same session — mirrors
|
|
31
|
+
* `CostTracker.seedFromPersisted()`, which this tracker has the identical
|
|
32
|
+
* in-memory-only, resets-on-restart problem alongside (see that method's
|
|
33
|
+
* doc comment for why): a process restart mid-session (sleep, closing a
|
|
34
|
+
* terminal, `claude --resume`, a crash) otherwise silently discards every
|
|
35
|
+
* request/token/dollar a now-dead prior process already attributed to a
|
|
36
|
+
* model, even after CostTracker's own totals are correctly restored —
|
|
37
|
+
* leaving this tracker's per-model breakdown inconsistent with (short of)
|
|
38
|
+
* the session total.
|
|
39
|
+
*
|
|
40
|
+
* Adds to current per-model state rather than overwriting, so callers must
|
|
41
|
+
* invoke this at most once per (re)adopted session id, before any real
|
|
42
|
+
* activity for that id has reached this tracker.
|
|
43
|
+
*/
|
|
44
|
+
seedFromPersisted(breakdown: Readonly<Record<string, ModelBreakdownEntry>>): void;
|
|
28
45
|
getRawBreakdown(): Readonly<Record<string, ModelBreakdownEntry>>;
|
|
29
46
|
getMetrics(): ModelUsageMetrics;
|
|
30
47
|
combineBreakdowns(breakdowns: ReadonlyArray<Readonly<Record<string, ModelBreakdownEntry>>>): ModelUsageMetrics;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-usage-tracker.d.ts","sourceRoot":"","sources":["../../src/metrics/model-usage-tracker.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,UAAW,SAAQ,mBAAmB;IACrD,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AASD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAgEzD,qBAAa,iBAAkB,YAAW,UAAU;IAClD,OAAO,CAAC,OAAO,CAAwC;IAEvD,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"model-usage-tracker.d.ts","sourceRoot":"","sources":["../../src/metrics/model-usage-tracker.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,UAAW,SAAQ,mBAAmB;IACrD,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AASD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAgEzD,qBAAa,iBAAkB,YAAW,UAAU;IAClD,OAAO,CAAC,OAAO,CAAwC;IAEvD,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAY5F;;;;;;;;;;;;;;;OAeG;IACH,iBAAiB,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,GAAG,IAAI;IAkBjF,eAAe,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAQhE,UAAU,IAAI,iBAAiB;IAS/B,iBAAiB,CACf,UAAU,EAAE,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,GACvE,iBAAiB;IAoBpB,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;CAGhC"}
|
|
@@ -60,6 +60,35 @@ export class ModelUsageTracker {
|
|
|
60
60
|
stats.totalOutputTokens += outputTokens;
|
|
61
61
|
stats.totalCostUsd += costUsd;
|
|
62
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Seeds cumulative per-model counters from a previous process's last
|
|
65
|
+
* checkpoint for this same session — mirrors
|
|
66
|
+
* `CostTracker.seedFromPersisted()`, which this tracker has the identical
|
|
67
|
+
* in-memory-only, resets-on-restart problem alongside (see that method's
|
|
68
|
+
* doc comment for why): a process restart mid-session (sleep, closing a
|
|
69
|
+
* terminal, `claude --resume`, a crash) otherwise silently discards every
|
|
70
|
+
* request/token/dollar a now-dead prior process already attributed to a
|
|
71
|
+
* model, even after CostTracker's own totals are correctly restored —
|
|
72
|
+
* leaving this tracker's per-model breakdown inconsistent with (short of)
|
|
73
|
+
* the session total.
|
|
74
|
+
*
|
|
75
|
+
* Adds to current per-model state rather than overwriting, so callers must
|
|
76
|
+
* invoke this at most once per (re)adopted session id, before any real
|
|
77
|
+
* activity for that id has reached this tracker.
|
|
78
|
+
*/
|
|
79
|
+
seedFromPersisted(breakdown) {
|
|
80
|
+
for (const [model, entry] of Object.entries(breakdown)) {
|
|
81
|
+
let stats = this.byModel.get(model);
|
|
82
|
+
if (!stats) {
|
|
83
|
+
stats = { requestCount: 0, totalInputTokens: 0, totalOutputTokens: 0, totalCostUsd: 0 };
|
|
84
|
+
this.byModel.set(model, stats);
|
|
85
|
+
}
|
|
86
|
+
stats.requestCount += entry.requestCount;
|
|
87
|
+
stats.totalInputTokens += entry.totalInputTokens;
|
|
88
|
+
stats.totalOutputTokens += entry.totalOutputTokens;
|
|
89
|
+
stats.totalCostUsd += entry.totalCostUsd;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
63
92
|
// Raw per-model counters only — no derived ratios. This is the shape
|
|
64
93
|
// persisted onto FullSessionSummary.modelBreakdown (session-store.ts) so a
|
|
65
94
|
// session file never stores a stale derived ratio; ratios are always
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-usage-tracker.js","sourceRoot":"","sources":["../../src/metrics/model-usage-tracker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model-usage-tracker.js","sourceRoot":"","sources":["../../src/metrics/model-usage-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pricing-data.d.ts","sourceRoot":"","sources":["../../src/shared/pricing-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAejD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"pricing-data.d.ts","sourceRoot":"","sources":["../../src/shared/pricing-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAejD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA6BhD,CAAC;AAmBF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAutB9D,CAAC"}
|