I've spoken before about how #ActivityPub is particularly weak to this problem because it's not really a protocol in and of itself but more of pattern for building a family of protocols.
It's trivial to add extensions that others may not be able to parse, and there's not even a registry or a good way of saying "I am using these extensions," so you get instead this situation where "are these compatible? glhf!"