The advice to have a CLA seems mostly valuable if you want to cash in on the work of an open source community while refusing to honour the intent of their contributions, based on this story.
It's simple but easy to overlook when buried in all the other open-source pleasantries, CLAs exist explicitly for the purpose of changing the ownership of an open source project.
Aside from the few token counter examples (most of which presuppose the FSF or poison pill clauses), there is almost no possible way to exercise that power in a way that benefits the project's contributors or users.
Not really. If your changes aren't controversial, you don't really need to get permission. Arguably some developer could demand their contributions are reverted, or sue, or whatever, but for all practical purposes no one will care enough.
Having an agreement isn't a no-cost option, it adds another barrier to contribution to a project.
You change from license A to license B to your project without asking permission of those that contributed under license A. Some party uses the code under B and violates B, but not A. Their attorney argues that you didn't have permission to re-license from all contributors, so the switch wasn't possible.
You try to contact all developers that committed under A. Sadly, one of them died a year ago. To add a problem, that person lived in a legislation where you cannot give away authorship.
Suddenly, you are in a legal mess. You can choose to follow through or drop the case.
Aside from the few token counter examples (most of which presuppose the FSF or poison pill clauses), there is almost no possible way to exercise that power in a way that benefits the project's contributors or users.