Skip to content

Conversation

@caldrian
Copy link
Contributor

@caldrian caldrian commented Aug 6, 2025

TaskWPB-11752 [iOS] Handle unknown protobuf message content

Issue

This PR implements a solution for handling unknown message content types when the protobuf declaration is extended with new message types that the current app version doesn't support.

  • Unknown messages are stored in the database with their raw payload (UnknownMessage entity)
  • UnknownMessageProcessingService contains the code to re-process message payloads (copied from ConversationMLSMessageAddEventProcessor) and can be reused by different AppVersionMigrations.

Testing

For testing I extended the content types in the GenericMessageProtocol repo and sent a message between two clients.


Checklist

  • Title contains a reference JIRA issue number like [WPB-XXX].
  • Description is filled and free of optional paragraphs.
  • Adds/updates automated tests.

UI accessibility checklist

If your PR includes UI changes, please utilize this checklist:

  • Make sure you use the API for UI elements that support large fonts.
  • All colors are taken from WireDesign.ColorTheme or constructed using WireDesign.BaseColorPalette.
  • New UI elements have Accessibility strings for VoiceOver.

johnxnguyen and others added 30 commits October 30, 2024 16:37
# Conflicts:
#	wire-ios-data-model/Source/Model/Message/ZMOTRMessage+UpdateEvent.swift
#	wire-ios-data-model/Source/Utilis/Protos/GenericMessage+Debug.swift
…feat/handle-unknown-messages-CA-WPB-11752

# Conflicts:
#	wire-ios-data-model/Source/Model/Message/ZMOTRMessage+UpdateEvent.swift
#	wire-ios-data-model/Source/Public/ZMMessage.h
#	wire-ios-data-model/Source/Utilis/Protos/GenericMessage+Utils.swift
#	wire-ios-protos/Protos/messages.pb.swift
#	wire-ios-protos/Protos/mls.pb.swift
#	wire-ios-protos/Protos/otr.pb.swift
#	wire-ios/Wire-iOS.xcodeproj/project.pbxproj
#	wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/Cells/ConfigurationMessageCell/Components/ConversationSystemMessageCellDescription.swift
#	wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/Cells/ConfigurationMessageCell/Components/UnknownStoredMessageCellDescription.swift
#	wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/Cells/ConfigurationMessageCell/ConversationMessageSectionController.swift
Copy link
Collaborator

@johnxnguyen johnxnguyen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, nice work

@caldrian caldrian requested review from a team, jullianm and samwyndham and removed request for a team and KaterinaWire October 9, 2025 10:23
Copy link
Contributor

@samwyndham samwyndham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Nice work!

@caldrian caldrian removed the request for review from jullianm October 10, 2025 07:57
@caldrian caldrian enabled auto-merge October 10, 2025 07:57
@caldrian caldrian added this pull request to the merge queue Oct 10, 2025
Merged via the queue into develop with commit 39599b1 Oct 10, 2025
13 checks passed
@caldrian caldrian deleted the feat/handle-unknown-messages-CA-WPB-11752 branch October 10, 2025 14:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants