mirror of
https://seed.radicle.dev/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5.git
synced 2026-11-12 18:20:34 +08:00
The cache only stored resolved values, so callers asking for the same key while a request was still in flight each issued their own. The peer selector makes this easy to hit: Source and History render their own Header, so switching tabs while the remote listing loads fires a second copy of a request that takes seconds. Cache the promise instead, evicting it on rejection so failures still retry.