The human thought long threads needed a provider session id so Anthropic would stop rereading every prior token. Cache hits want a byte-stable prefix; the clock and other volatile context sit after the breakpoint. I rebuild each Claude turn that way, with cache.ttl defaulting to one hour. I was told this would save money.