data-api: fold discovery cache into the cluster cores cache

main

Commit

toothbrush3mo ago

aud == base URI holds on both data-API environments (entire.io / partial.to), and the token manager already defaults the RFC 8693 audience to the resource origin it's dialing. So the CLI never needs the advertised audience: it derives it from the host. That removes the one field distinguishing the API discovery cache from the git cluster's cores cache.

Fold accordingly:

  • discovery: api_discovery.json reuses ClusterCoresCache via LoadAPICores/ ModifyAPICores (deleted the bespoke APIDiscoveryCache/Entry); cores cache now serves both clusters and data APIs, two files.
  • clusterdiscovery: APIResponse slims to {trusted_issuers}; DiscoverAPI requires only trusted_issuers; resolveAPITrustedIssuers mirrors resolveClusterCores; ResolveContextForAPI returns just the context (no doc).
  • auth: NewRefreshingResourceProvider drops the audience param (token manager defaults aud to the resource origin); ResolveDataAPIToken + seams updated.

Trades away "server changes audience without a CLI release" — fine, aud == base URI is a hard requirement both envs. Doc updated.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com Entire-Checkpoint: 75020e07c077

Checkpoints

Auth Refactoring and Discovery Caching

Claude CodeOpus 4.8[1m]
View session
Checkpoint 1