I agree this should be centralised and taking the number of shards into account would help have a better heuristic! (would be even better if we could have the number of shards that is queried in order to not over-request in case the user relies on routing to not query all shards)