The previous diff has one shortcoming, which is mentioned there:
However, we still have an issue owing to the fact that the useDerivedObject will cache on a per-hook-invocation level, whereas bindCallKeyserverEndpointSelector is caching globally.
This diff resolves that by lifting the bindCallKeyserverEndpointSelector cache to also be on a per-hook level.
We can't make the cache global because the individual hook calls can have their params overriden.
Depends on D10465