Here's an activitypub client to server interaction that's under specified.
I want to sort the people I follow into good friends and best friends. Okay, there's Add Remove vocab for that. I Add Alice to best friends with my client, and then later my client can fetch that collection, and get... Alice. Where are Alice's posts? How does the client get my best friends' posts?
And collections are untyped. I might have another collection, read later, which is for posts. What would it mean to add Alice here? When I click add to collection, how does the client know whether to show me collections of people or collection of posts?
This is a basic feature in every monolithic client/server.