– UNSUPPORTED

tanstack-ai 1.4.0

usage.cached-tokens · anthropic

Back to results · Scenario

Requirements

IdLevelStatusEvidence

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

ProvenanceValue
Sourcehttps://platform.claude.com/docs/en/build-with-claude/prompt-caching#tracking-cache-performance
NotesDocumented 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-tokens

Plain-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

VersionGrade
1.4.0– UNSUPPORTED
1.0.0– UNSUPPORTED
0.71.0– UNSUPPORTED