Skip to content

Commit d428bc7

Browse files
committed
fix: Include cache tokens in burn rate and projection calculations
1 parent 98f2d5a commit d428bc7

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

‎src/_session-blocks.ts‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { uniq } from 'es-toolkit';
22
import { DEFAULT_RECENT_DAYS } from './_consts.ts';
3+
import { getTotalTokens } from './_token-utils.ts';
34

45
/**
56
* Default session duration in hours (Claude's billing block duration)
@@ -255,7 +256,7 @@ export function calculateBurnRate(block: SessionBlock): BurnRate | null {
255256
return null;
256257
}
257258

258-
const totalTokens = block.tokenCounts.inputTokens + block.tokenCounts.outputTokens;
259+
const totalTokens = getTotalTokens(block.tokenCounts);
259260
const tokensPerMinute = totalTokens / durationMinutes;
260261
const costPerHour = (block.costUSD / durationMinutes) * 60;
261262

@@ -284,7 +285,7 @@ export function projectBlockUsage(block: SessionBlock): ProjectedUsage | null {
284285
const remainingTime = block.endTime.getTime() - now.getTime();
285286
const remainingMinutes = Math.max(0, remainingTime / (1000 * 60));
286287

287-
const currentTokens = block.tokenCounts.inputTokens + block.tokenCounts.outputTokens;
288+
const currentTokens = getTotalTokens(block.tokenCounts);
288289
const projectedAdditionalTokens = burnRate.tokensPerMinute * remainingMinutes;
289290
const totalTokens = currentTokens + projectedAdditionalTokens;
290291

0 commit comments

Comments
 (0)