Description
OptimisticCache returns cached values until TTL expiry and then blocks on a fresh fetch. Under stale-while-revalidate, the stale value is returned immediately while a background refresh is triggered, eliminating latency spikes at TTL boundaries.
Acceptance Criteria
Context
- Target file:
src/cache/OptimisticCache.ts
- Background revalidation should not run more than once concurrently per cache key
Description
OptimisticCachereturns cached values until TTL expiry and then blocks on a fresh fetch. Under stale-while-revalidate, the stale value is returned immediately while a background refresh is triggered, eliminating latency spikes at TTL boundaries.Acceptance Criteria
OptimisticCacheOptionsgainsstaleWhileRevalidateMs(default 0, meaning disabled)staleWhileRevalidateMsof its TTL, it is returned immediately and a background revalidation is startedrevalidateErroreventContext
src/cache/OptimisticCache.ts