That's an interesting point. In further repository handling, we are not actually filtering for unique ids. I believe this step should be done at the end of the method and current handling of remote repos might be buggy as Maven requires ids to be unique.

Here, I imagine that you'd have an intermediate object and you'll want to change the repository with given id for single call - e.g. rewriting central to foo once, to bar second. So allowing specifying same id multiple times make sense to me.