The issue we have is that Mastodon dominates ActivityPub and anything that project decides to do on a whim is being written and hardwired into ActivityPub policy and is driving the specifications. Most of these decisions are short-sighted decisions that only benefit Mastodon, but they affect and limit all future uses of ActivityPub to the lowest common denominator of what works best for Mastodon. So basically they're strangling and killing the protocol before it even has a chance to be a multi-platform communications tool. To be fair, ActivityPub started with a bucket load of problems and none of them have yet been solved in a meaningful way. The specification is weak where it matters and too restrictive where it doesn't matter. If you bring an ActivityPub implementation to the table as we've done, it doesn't matter that you've tried to allow it to federate with the rest of the metaverse and be a communications tool on a level playing field. Your implementation is measured only by how well it federates with Mastodon. The level playing field has already been destroyed. Another few weeks like this and we'll have to abandon ActivityPub for any other use than communicating with Mastodon. That will be its only purpose and it will be unsuited for anything else. I'm well aware of the different federation protocols currently in use. I've implemented Diaspora, OStatus, ActivityPub and invented DFRN (friendica) and zot (red/hubzilla) and for the most part found ways for all of them to co-exist.