– UNSUPPORTED
tanstack-ai 1.4.0
usage.cached-tokens · anthropic
Requirements
| Id | Level | Status | Evidence |
|---|
Notes
- TanStack AI's chat() always requests a streamed response (stream: false collects the stream), so it never sends the non-streamed request this fixture replays. (https://tanstack.com/ai/latest/docs/api/ai#chat-options)
What the provider sent
- Finish
- stop
- Raw finish
- end_turn
- Text
- A hot pan helps moisture evaporate so mushrooms brown.
- Tool calls
[]
- Usage
{ "alternatives": { "input": { "uncached_input": 0 } }, "cached_input": 1536, "input": 1536, "output": 21, "raw": { "cache_creation_input_tokens": 0, "cache_read_input_tokens": 1536, "input_tokens": 0, "output_tokens": 21 }, "reasoning": null, "total": 1557 }- Stream completed
null
- Error
null
Wire excerpt
status: 200
content-type: application/json
body (json):
{
"id": "msg_01Aq9w938a90dw8q",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "A hot pan helps moisture evaporate so mushrooms brown."
}
],
"model": "claude-sonnet-5-5",
"stop_reason": "end_turn",
"stop_sequence": null,
"stop_details": null,
"usage": {
"input_tokens": 0,
"cache_creation_input_tokens": 0,
"cache_read_input_tokens": 1536,
"output_tokens": 21
}
}What the library reported
- Outcome
- unsupported
- Finish
{ "raw": null, "source": null, "surface": "absent", "value": null }- Text
- Value
null
- Surface
- absent
- Tool calls
[]
- Usage
{ "cached_input": null, "input": null, "output": null, "reasoning": null, "surface": { "cached_input": "absent", "input": "absent", "output": "absent", "reasoning": "absent", "total": "absent" }, "total": null }- Stream
{ "chunks_seen": null, "completed": null, "used": false }- Error
null
- Unsupported reason
- TanStack AI's chat() always requests a streamed response (stream: false collects the stream), so it never sends the non-streamed request this fixture replays. https://tanstack.com/ai/latest/docs/api/ai#chat-options
Full observation JSON
{
"elapsed_ms": 1.269945000000007,
"error": null,
"finish": {
"raw": null,
"source": null,
"surface": "absent",
"value": null
},
"format": "wiretruth.observation/v1",
"library": {
"api": "chat",
"language": "javascript",
"name": "tanstack-ai",
"version": "1.4.0"
},
"notes": [],
"outcome": "unsupported",
"stream": {
"chunks_seen": null,
"completed": null,
"used": false
},
"structured": {
"attempted": false,
"returned_as_success": false,
"value": null
},
"text": {
"surface": "absent",
"value": null
},
"tool_calls": [],
"unsupported_reason": "TanStack AI's chat() always requests a streamed response (stream: false collects the stream), so it never sends the non-streamed request this fixture replays. https://tanstack.com/ai/latest/docs/api/ai#chat-options",
"usage": {
"cached_input": null,
"input": null,
"output": null,
"reasoning": null,
"surface": {
"cached_input": "absent",
"input": "absent",
"output": "absent",
"reasoning": "absent",
"total": "absent"
},
"total": null
}
}Fixture
documented anthropic/usage.cached-tokens
| Provenance | Value |
|---|---|
| Source | https://platform.claude.com/docs/en/build-with-claude/prompt-caching#tracking-cache-performance |
| Notes | Documented shapes, not a recording. Message envelope and stop fields follow handling-stop-reasons; content blocks follow thinking/streaming and handle-tool-calls. Model changed to claude-sonnet-5-5; IDs and scenario text are filled in. Token counts are illustrative, filled in to include thinking within the requested output limit, not measured. Cache field names and accounting are taken verbatim from Tracking cache performance. The original 916-word cooking guide exceeds the documented Sonnet 5.5 minimum of 512 tokens. ASSUMED warm cache covering the repeated request: input_tokens 0, cache_creation_input_tokens 0, cache_read_input_tokens 1536, output_tokens 21. Exact tokenization and this complete response are not documented. No request was sent twice; adaptive thinking is assumed skipped. |
Reproduce
wiretruth serve anthropic/usage.cached-tokensPlain-library snippet from the shim manifest.
createAnthropicChat(model, apiKey, { baseURL: WIRETRUTH_BASE_URL_ANTHROPIC }); its fetch client appends /v1/messages?beta=true.Upstream
No matching upstream report.
History
| Version | Grade |
|---|---|
| 1.4.0 | – UNSUPPORTED |
| 1.0.0 | – UNSUPPORTED |
| 0.71.0 | – UNSUPPORTED |