Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dual Sending - Pre-requisites #1074

Closed
4 tasks done
cameronvoell opened this issue Sep 19, 2024 · 0 comments · Fixed by #1076
Closed
4 tasks done

Dual Sending - Pre-requisites #1074

cameronvoell opened this issue Sep 19, 2024 · 0 comments · Fixed by #1076
Assignees
Labels
enhancement New feature or request

Comments

@cameronvoell
Copy link
Contributor

cameronvoell commented Sep 19, 2024

Summary

As part of migrating 1 to 1 messages from V2 to V3, we aim to achieve a period in time where all up to date xmtp clients that are participating in 1 to 1 messaging are simultaneously managing a V2 Conversation and a V3 "DM Group" (See Dual Sending Issue).

Before we ship a version of XMTP SDK that is dual sending 1 to 1 messages in V2 Conversations and V3 "DM Groups" we need to hit the following 4 pre-requisites:

  1. All Clients agree on how to verify if an invite to a DM group is valid => Validate dm group metadata + permissions from welcome #1075
    1. Group (Immutable) Metadata should have ConversationType of Dm
    2. Group (Immutable) Metadata should contain a DmMembers struct with one of its inbox ids as the sender of the invite, and the other should be the user verifying the invite (the recipient).
    3. Group Mutable Metadata should have an empty Admin and Super Admin List (neither user has special privilege in a DM)
    4. Group Permissions should match the default dm permission PolicySet
  2. All Clients agree on how to verify if a commit in a DM group is valid => Adds functions for creating a DM group #901
    1. All commit validation works the exact same as regular Group permission validation (follows the default DM Permission Set) with a single exception - you can always add the recipient inbox id to a DM Group.
  3. Clients default to not listing DM Groups => DM updates - default to not displaying dm groups #1046
  4. Clients default to not streaming DM Groups (when streaming conversations) => DM updates - default to not displaying dm groups #1046
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant