Update 'One Pager: Managed Groups ( A Roadmap towards Hybrid Groups)'

Sarah Jamie Lewis 2022-04-25 22:29:05 +00:00
parent a7c58ab231
commit 5efcf70f3b
1 changed files with 8 additions and 6 deletions

@ -4,6 +4,7 @@ The vision for hybrid groups is to allow groups to determine their own infrastru
As a bridge between pervasive hybrid groups and the current legacy groups setup we propose a roadmap towards "Managed Groups".
## Goal 1: Prototype Bot Group Management
High level: A Bot that is responsible for maintainence of a group. This includes managing a member list (adding, removing members) and pushing out new keys to members when those members change (or at predetermined points). This has the follow benefits over existing legacy groups:
@ -13,20 +14,21 @@ High level: A Bot that is responsible for maintainence of a group. This includes
This does introduce a trust concentration in the bot operator as they do have the power to send different keys to different members, and thus could artificially split the group. This can be counteracted using the existing protections in legacy groups where messages reference the group id which is bound to the current group key and hosting server.
This work can mostly take place outside of Cwtch and only requires a few small integrations to be usable as an initial experiment, namely:
In its most basic form this could just be a bot that sent a new group invite to a set of members periodically. However as a first cut I propose the followng work that can mostly take place outside of Cwtch and only requires a few small integrations to be usable as an initial experiment, namely:
* a new overlay message *group update* to allow clients to automatically process messages from a bot
* a new overlay message *group update* to allow clients to automatically process messages from a bot (gated by an experiment)
* a way to hide bots from the contact list
* additional data recorded in the group invite and in the group database entry that associates a bot with the permissions to update certain attributes (like the key)
## Goal 2: Integrated Group Management
Once Goal 1 has been tested we should have a fairly good idea of the UX necessary to bring an integrated experience to group management. This would involve bringing the bot inside of Cwtch and allowing access to its management functions from within the UI. This UI could include screens to:
Once Goal 1 has been tested we should have a fairly good idea of the UX necessary to bring an integrated experience to group management. This would involve bringing the bot inside of Cwtch and allowing access to its management functions from within the UI. This UI likely needs:
* view, add and remove memebers
* allocate fine-grained permissions to members (read / write)
* move the group to a different server
* new group creation screen that explains and allows addition of a "manager"
* new group management screen to allow viewing, adding and removing memebers
* new group management screen to allocate fine-grained permissions to members (read / write)
* (optional) APIs for moving the group to a different server
This work takes place mostly inside of Cwtch UI building out interfaces for interacting the the flows realized by Goal 1, and integrating the bot code (or reimplementing it in Cwtch itself).