There is also a larger problem here. Your thinking revolves around isolated, single responsitories. But the open source world has repositories referring to one another.
Example: https://github.com/simplex-chat/simplex-chat/blob/stable/cabal.project #L34
The whole chain of repositories must be decentralized and highly available. This is the problem I have to solve.