Client Cache & Optimistic UI
Query keys, freshness, staleness and revalidation; updating the interface before the server has agreed, and reconciling honestly when it does not.
A key, an entry, a freshness state and a revalidation rule — the cache your application owns, which is not the browser's HTTP cache and does not obey its headers.
The key is the identity of the data. Deduplication, hits, cross-contamination and the blast radius of every invalidation are all decided by what you put in it.
Render what you have, fetch what is current, write it in — and take responsibility for the fact that the page changed under the person reading it.
Updating the interface before the server has agreed: a claim the client makes on the authority's behalf, acceptable exactly when the rollback is honest.
The server rarely just says yes or no. It says something slightly different — and reverting your prediction is usually the wrong answer to that.
"cat" then "car": A leaves first, B returns first, A returns last and overwrites the newer result with the older one. The fix is a rule about which response is allowed to win.