Agent relationships
This is to discuss how to implement the additional agent relationships we will need to manage group (meaning Group or Organization) activities which will in many cases need to be scoped differently than the gossip network pattern. For example, member, trading partner, in addition to the existing follow relationship.
I picture that groups will want to configure the available relationship roles for itself. And from experience, groups will want to be able to create their own roles; but that there are a handful of basic role behaviors we can identify. For example, groups we have known call member "affiliate" or "participant". Or define different member roles like "grower", "harvester", "drying site" for an herbal network. I think that some groups will want to be open for anyone to follow (existing already in ActivityPub), and some will not. So, in addition to looking for agents (actors) to follow, it might be that one could search for a group agent (actor), be presented with the options for relationships for that group agent, and be able to create or request a specific role with that group agent. Group agents could be configured to automatically accept, or moderate these requests. (I think most or all of this works now for following. The existing joining of pub instances works differently.)
It might be that basic role behaviors can be defined for scoping, visibility, privacy. Following could work as it does today, making visible all who are being followed. But groups might want to be more private, and have visibility only to members.
Also, threads might be attached to economic objects, so discussion can take place related to even smaller scopes. For example the people working on a single process might want to discuss that work among themselves. I picture that any kind of object could have enabled discussion specific to it.
Note: this is not a proposal yet, more for discussion. Examples will be useful to nail the requirements. I can provide Sensorica and FairCoop examples, and perhaps some others we have experience with. It would be good to understand what MoodleNet needs in terms of additional relationship roles. If MoodleNet won't be agent-centric for its members, it will be good to see how that might fit in too.