@steve i still think the way forward is less that an activitypub client should hook into mastodon, but rather that mastodon should become the activitypub client. a lot of the ux expectations of mastodon are driven by the abstraction of the all-knowing“instance”, but this doesn’t have to be monolithic. storage and delivery can be outsourced to a generic activitypub server. but that would require people to care about activities instead of statuses.
@steve

Treating ActivityPub messages as plain JSON undermines extensibility because it prevents the use of JSON-LD features like context definitions, leading to potential property name collisions and making it difficult for implementations to reliably interpret or extend messages.

No, treating ActivityPub as JSON doesn't undermine extensibility. ActivityPub is extended by adding new properties to JSON objects, and if you want to avoid collisions you can use URLs or reverse-DNS strings for property names. JSON-LD is not needed for that, it only complicates things for no reason.