lets see if this ages well; given everyone that I have worked for/with in the last 40 years has nicked named me “Cassandra”, my hunch is it will survive.
Fediverse as it is now is never going to take root as the ubiquitous predominate standard like say TCP/HTTP/FTP/CGi or even NNTP did with Usenet or even Tomcat did with Servlet containers in the Java world.
I even wrote proof of concept of my app using RFC1036 just to prove it was quicker to build it that way; took two days; than the three months I spent jerking around with ActivityPub/Streams specs.
Most of the AP/Streams concepts are there in the latest specs RFC5537 and implemented for a decade now.
I have posted why before; the TL;DR is it is way too complicated, way too many edge cases; because it is way too inheritance based OOPy and kitchen sink in design.
The best you are going to expect to get adoption wise is where you are at now for these reasons. There is no basic implementation that people can build upon, they have to recreate support for the entire spec from scratch.
I am working on a startup that 100% fits into the “Fediverse” idea; but it is 1000% too expensive time and space wise to implement support for it, I went down the road and scrapped all that code, I was not actually working my startup but supporting a spec I realized after a bit too much time, I did not need.
At best, my support for ActivityPub/Streams and Fediverse in general will be to write a proxy/facade implementation that does some basic translation to MAYBE send message, but not consume anything.
I will have my own proprietary api and if there is demand AND time AND money, I MIGHT implement this sliver of support.
Look at kitchen sink heavy APIs that are DOMINATE, and none of them are defacto standards; WordPress is the dominate CMS by a long shot; very few non-WordPress products support their API completely. And when they do it is for supporting TOOLING apps to manage their server, not to actually support WordPress ecosystem stuff. Mainly to support ingesting and exported WordPress sites data, just for conversion to their system. Same for Facebook.
Twitter and Reddit are making the case to not base your business model on any companies APIs, which could be played in favor of the Fediverse, but when you look at implementing what Twitter and Reddit API’s do, in Fediverse SPECS your eyes glaze over; say screw this complexity and just do what Twitter or Reddit or whomever did and try and fix what you feel are mistakes/missteps they made.
The specs need to be broken up into small implementable very specific pieces as reference implementations. Ideally as plugins or extensions to already established OSS code bases.
Then the “kitchen sink” features that 99% of the potential developer base does not need to use can be defined as optional extensions of the mandatory minimal interface. Kind of like WebDAV over HTTP does. I implemented WebDAV in Java and Python clients AND servers in three days by myself back in the mid-2000’s. WebDAV as a standard is not really used in practice but the concepts it introduced still are.
You want adoption without pollution; give developers code that “just works” and they do not have to write, with simple examples for the most common uses cases.