fix: stop deducting simulated cache tokens from input_tokens
Some checks failed
Build Docker Image / build (push) Has been cancelled

Kiro backend does not support Anthropic prompt cache protocol.
The local cache tracker simulates cache hits/creation for Claude Code
compatibility, but subtracting those values from input_tokens caused
the reported input_tokens to drop to single digits.

input_tokens now reflects the real value; cache_creation_input_tokens
and cache_read_input_tokens are still reported for protocol compliance.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-12 11:14:51 +08:00
parent c87517c0bf
commit e8ab5b11e7
3 changed files with 4 additions and 8 deletions

View File

@@ -512,13 +512,9 @@ func computePromptCacheTTLBreakdown(profile *promptCacheProfile, matchedTokens i
return cache5m, cache1h
}
func billedClaudeInputTokens(inputTokens int, usage promptCacheUsage) int {
return maxInt(inputTokens-usage.CacheCreationInputTokens-usage.CacheReadInputTokens, 0)
}
func buildClaudeUsageMap(inputTokens, outputTokens int, usage promptCacheUsage, includeCache bool) map[string]interface{} {
result := map[string]interface{}{
"input_tokens": billedClaudeInputTokens(inputTokens, usage),
"input_tokens": inputTokens,
"output_tokens": outputTokens,
}
if !includeCache {