There will be a moment when I’ll have groups. And then there will be a moment when I’ll have to federate these. There seems to be no consensus on what groups actually are and how to represent them. So,
-
Group members. How are those represented? Are they the
followers
collection? Can a group have followers at all? Or should it be a separate, custom collection a-la Mastodon’s pinned toots?- Since it’s a collection of actors anyway, can groups be members of groups? This feels weird to think about. This makes little sense too, because groups aren’t accounts and so don’t have news feeds, do they?
- In a group that is an event, how do I represent the “not sure” members?
- Group posts. If a user posts in a group, where does the post go? Post to group’s inbox, address it to the group members collection, and then it appears in its outbox? So, basically, if you’re to post in a group that is on another instance, you’d send your post to that instance (only), and it would then forward it to all the instances where there are any members?
- Posts on behalf of groups. Are these technically allowed? Like when not a particular user but the group itself posts something? I’m not going to have these myself because they diminish the users that are actual people, but if they are allowed, I do have to support storing and displaying them because dropping something users might be interested in isn’t a good thing to do.
-
Usernames/aliases. Should it be assumed that group and user aliases use different namespaces and so there can be a user and a group with the same alias on the same instance? I will have the same namespace because my user-facing URLs have the form of
https://instance.domain/alias
, so this, again, is the question of what I have to expect from other implementations.