I think that can work to an extent, but who decides what code gets pushed to production? You can decentralize responsibility for tasks, but ultimately you need some method of resolving competing pull requests. If someone can take control of that process, they can bully everyone else. This can then result in harassment and discrimination.