e815689023
Always return the in-flight promise when a refresh is running so callers don’t receive an expired cached value. Preserve the original timestamp until refresh succeeds and only update it on successful recompute to avoid masking failed refreshes.