Fix wrong conversation showing after QR scan#520
Conversation
Skip inviteTag-based conversation matching when the tag is empty. When a discovered XMTP group has an empty inviteTag (metadata not yet synced or read failure), the query filter(inviteTag == "") would match any existing conversation that also has an empty tag, causing the wrong conversation's clientConversationId to be merged with the new group.
How to use the Graphite Merge QueueAdd the label merge-queue to this PR to add it to the merge queue. You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
|
Claude finished @yewreeka's task —— View job Code Review
|


Skip inviteTag-based conversation matching when the tag is empty.
When a discovered XMTP group has an empty inviteTag (metadata not yet
synced or read failure), the query filter(inviteTag == "") would match
any existing conversation that also has an empty tag, causing the wrong
conversation's clientConversationId to be merged with the new group.
Note
Gate merge-by-inviteTag in
ConvosCore.Storage.Writers.ConversationWriter.storeto run only whendbConversation.inviteTagis non-empty to fix wrong conversation showing after QR scanAdd a precondition in
ConversationWriter.storeso the inviteTag lookup and merge path runs only whendbConversation.inviteTag.isEmptyis false in ConversationWriter.swift.📍Where to Start
Start with the
storemethod in ConversationWriter.swift.Macroscope summarized c2702b3.