But extensions are no good if most people don't use them. Take end-to-end encryption in eMail. It's a good feature that has been around for multiple decades, but most people don't use it. Since most people don't use it, there's no point in using it. So you have the network effect right inside your system.
When e.g. WhatsApp made every chat end-to-end encrypted it took a single update and went so smooth and easy that most people wouldn't have noticed if it wasn't for a big modal telling the useres that it was introduced.
Introducing breaking changes or new features to a federated system with lots of hosts and lots of different software implementations is certainly not impossible, but it's much more difficult than on a centrally managed system.