Repository navigation
feat(chat): adopt flipcash2 0.18.0 (cover pictures, featured groups, chatter sampling) - #983
Merged
Merged
Conversation
…ured-group contract Rename picture to profile_picture across Metadata, StartChat and EditChat. Carry cover_picture into Conversation, applied by MetadataUpdate.CoverPictureChanged and kept when a feed result omits it. Handle RosterUpdate.MembershipChanged by applying the roster summary and keeping the cached member list. Map COVER_PICTURE_BLOB_NOT_ACCEPTED in ErrorStartChat and ErrorEditChat by case name, so the EditChat renumbering is covered. Add SampleChatters, SetFeaturedGroups and GetFeaturedGroups wrappers with domain and error types.
Store the cover in three conversation columns beside the profile picture and bump Database.schemaVersion to 48 (the store is rebuilt, no migration). A write whose conversation carries no cover leaves the stored one in place, matching Android's COALESCE upsert; coverPictureChanged now persists the store's new cover.
bmc08gt
marked this pull request as ready for review
October 6, 2026 17:22
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adopts flipcash2-client-protocol 0.18.0 (flipcash2-protobuf-api #135–#138).
Pins
flipcash2-client-protocol0.18.0 inFlipcashAPI/Package.swiftandPackage.resolved(viaScripts/bump-contract.sh), released from code-payments/flipcash2-client-protocol#25. The pin bump is its own commit.picture→profile_picturerenames inChatService, the metadata mapping andProfilePictureChanged. The domainConversation.pictureand.pictureChangedkeep their names.Conversation.coverPictureand a.coverPictureChangedstream event applied inConversationStore. The cover is stored in three newConversationTablecolumns (Database.schemaVersion47 → 48, so the store rebuilds). A write without a cover leaves the stored one in place and a write with one replaces it, matching Android'sCOALESCEupsert;coverPictureChangedpersists the new cover. A cold start shows the stored cover before anyGetChat.COVER_PICTURE_BLOB_NOT_ACCEPTEDfor StartChat and EditChat to new.coverPictureBlobNotAcceptedcases.ErrorEditChatandErrorStartChatswitch on proto cases, not raw values, so theEditChatResponse.Resultrenumbering (DESCRIPTION_MODERATED5 → 6) needs no positional fix; a test pins wire numbers 1–6 for EditChat and 7 for StartChat.Events.chatResultgains aCoverPictureBlobNotAcceptedvalue.RosterUpdate.membershipChanged: the store applies the summary by version and keeps the cached member list.FlipClient.sampleChatters,setFeaturedGroupsandgetFeaturedGroupswith domain and error types. No UI yet.GetRosteris members-only now, but nothing in the app callsgetRosteroutside its wrapper.