chore: add support for meeting events - WPB-26733#4980
Conversation
…feat/create-update-list-meetings-WPB-25676 # Conflicts: # WireNetwork/Tests/WireNetworkTests/UpdateEvent/ConversationEventDecodingTests.swift
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
…feat/create-update-list-meetings-WPB-25676
…feat/create-update-list-meetings-WPB-25676
…te-meetings-entities-WPB-20278
…ate-update-list-meetings-WPB-25676
…te-meetings-entities-WPB-20278
…ate-update-list-meetings-WPB-25676
…te-meetings-entities-WPB-20278
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
…te-meetings-entities-WPB-20278
…list-meetings-WPB-25676
…upport-meeting-events-WPB-26733
…-meetings-WPB-20274
…list-meetings-WPB-25676
…upport-meeting-events-WPB-26733
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: John Nguyen <28632506+johnxnguyen@users.noreply.github.com> Co-authored-by: David-Henner <david.henner@wire.com>
…6-df722a863224b31606a765f4a7ee246c8c32a142' into feat/create-update-list-meetings-WPB-25676
…upport-meeting-events-WPB-26733
…upport-meeting-events-WPB-26733
…upport-meeting-events-WPB-26733
Test Results 2 files 185 suites 30s ⏱️ Results for commit 9af1d1a. ♻️ This comment has been updated with latest results. Summary: workflow run #29148803063 |
…upport-meeting-events-WPB-26733
…upport-meeting-events-WPB-26733
…e-update-list-meetings-WPB-25676
…upport-meeting-events-WPB-26733
There was a problem hiding this comment.
Pull request overview
This PR adds end-to-end support for new Meeting update-event types across the networking and domain layers, so the client can decode meeting.create, meeting.update, and meeting.delete events and route them into the meeting repository/local storage processing pipeline.
Changes:
- Added
MeetingEvent/Meeting{Create,Update,Delete}Eventmodels and wiredmeeting.*type recognition intoUpdateEventType,UpdateEventDecodingProxy, andUpdateEvent.name. - Implemented meeting event processors in
WireDomainand integrated them intoUpdateEventProcessorandClientSessionComponent. - Added unit tests and JSON fixtures for decoding and domain processing/local store behavior.
Reviewed changes
Copilot reviewed 38 out of 38 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| WireNetwork/Tests/WireNetworkTests/UpdateEvent/Resources/MeetingUpdate.json | Adds a JSON fixture for meeting.update decoding tests. |
| WireNetwork/Tests/WireNetworkTests/UpdateEvent/Resources/MeetingDelete.json | Adds a JSON fixture for meeting.delete decoding tests. |
| WireNetwork/Tests/WireNetworkTests/UpdateEvent/Resources/MeetingCreate.json | Adds a JSON fixture for meeting.create decoding tests. |
| WireNetwork/Tests/WireNetworkTests/UpdateEvent/MeetingEventDecodingTests.swift | Adds unit tests verifying decoding of meeting events into UpdateEvent. |
| WireNetwork/Sources/WireNetwork/Models/UpdateEvent/UpdateEvent+Name.swift | Extends UpdateEvent.name to cover meeting event variants. |
| WireNetwork/Sources/WireNetwork/Models/UpdateEvent/UpdateEvent.swift | Adds case meeting(MeetingEvent) to the public UpdateEvent model. |
| WireNetwork/Sources/WireNetwork/Models/UpdateEvent/MeetingEvent/MeetingUpdateEvent.swift | Introduces the meeting-update event payload model. |
| WireNetwork/Sources/WireNetwork/Models/UpdateEvent/MeetingEvent/MeetingEvent.swift | Introduces MeetingEvent enum for create/delete/update meeting events. |
| WireNetwork/Sources/WireNetwork/Models/UpdateEvent/MeetingEvent/MeetingDeleteEvent.swift | Introduces the meeting-delete event payload model. |
| WireNetwork/Sources/WireNetwork/Models/UpdateEvent/MeetingEvent/MeetingCreateEvent.swift | Introduces the meeting-create event payload model. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/UpdateEventType/UpdateEventType.swift | Adds meeting.* classification into update-event type parsing. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/UpdateEventType/MeetingEventType.swift | Adds the MeetingEventType enum to map string event types to cases. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/UpdateEventType/ConversationEventType.swift | Minor formatting-only change. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/Event decoding/UpdateEventDecodingProxy+Meeting.swift | Adds meeting-specific decoding routing into UpdateEventDecodingProxy. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/Event decoding/UpdateEventDecodingProxy.swift | Wires .meeting into the main decoding switch. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/Event decoding/Meeting/MeetingUpdateEventDecoder.swift | Adds a decoder for meeting update payloads. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/Event decoding/Meeting/MeetingEventCodingKeys.swift | Adds coding keys for meeting event payload decoding. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/Event decoding/Meeting/MeetingDeleteEventDecoder.swift | Adds a decoder for meeting delete payloads. |
| WireNetwork/Sources/WireNetwork/APIs/Rest/UpdateEventsAPI/Event decoding/Meeting/MeetingCreateEventDecoder.swift | Adds a decoder for meeting create payloads. |
| WireDomain/Tests/WireDomainTests/LocalStores/MeetingLocalStoreTests.swift | Adds persistence/local store tests for meeting storage and deletion behavior. |
| WireDomain/Tests/WireDomainTests/Event Processing/MeetingEventProcessor/MeetingUpdateEventProcessorTests.swift | Adds unit tests for meeting-update event processing. |
| WireDomain/Tests/WireDomainTests/Event Processing/MeetingEventProcessor/MeetingDeleteEventProcessorTests.swift | Adds unit tests for meeting-delete event processing. |
| WireDomain/Tests/WireDomainTests/Event Processing/MeetingEventProcessor/MeetingCreateEventProcessorTests.swift | Adds unit tests for meeting-create event processing. |
| WireDomain/Sources/WireUpdateEventCoding/Models/StorableUpdateEvent.swift | Extends storable update-event model to include meeting events. |
| WireDomain/Sources/WireUpdateEventCoding/Models/MeetingEvent/StorableMeetingUpdateEvent.swift | Adds storable wrapper for meeting-update events. |
| WireDomain/Sources/WireUpdateEventCoding/Models/MeetingEvent/StorableMeetingEvent.swift | Adds storable wrapper enum for meeting events. |
| WireDomain/Sources/WireUpdateEventCoding/Models/MeetingEvent/StorableMeetingDeleteEvent.swift | Adds storable wrapper for meeting-delete events. |
| WireDomain/Sources/WireUpdateEventCoding/Models/MeetingEvent/StorableMeetingCreateEvent.swift | Adds storable wrapper for meeting-create events. |
| WireDomain/Sources/WireDomain/Event Processing/UpdateEventProcessor.swift | Routes meeting events through the domain-level update-event processor. |
| WireDomain/Sources/WireDomain/Event Processing/MeetingEventProcessor/Protocols/MeetingUpdateEventProcessorProtocol.swift | Adds protocol for meeting-update event processing. |
| WireDomain/Sources/WireDomain/Event Processing/MeetingEventProcessor/Protocols/MeetingEventProcessorProtocol.swift | Adds protocol for meeting-event processing dispatch. |
| WireDomain/Sources/WireDomain/Event Processing/MeetingEventProcessor/Protocols/MeetingDeleteEventProcessorProtocol.swift | Adds protocol for meeting-delete event processing. |
| WireDomain/Sources/WireDomain/Event Processing/MeetingEventProcessor/Protocols/MeetingCreateEventProcessorProtocol.swift | Adds protocol for meeting-create event processing. |
| WireDomain/Sources/WireDomain/Event Processing/MeetingEventProcessor/MeetingUpdateEventProcessor.swift | Implements meeting-update processing via repository pull. |
| WireDomain/Sources/WireDomain/Event Processing/MeetingEventProcessor/MeetingEventProcessor.swift | Implements dispatch over MeetingEvent to create/delete/update processors. |
| WireDomain/Sources/WireDomain/Event Processing/MeetingEventProcessor/MeetingDeleteEventProcessor.swift | Implements meeting-delete processing via repository local delete. |
| WireDomain/Sources/WireDomain/Event Processing/MeetingEventProcessor/MeetingCreateEventProcessor.swift | Implements meeting-create processing via repository pull. |
| WireDomain/Sources/WireDomain/Components/ClientSessionComponent.swift | Wires meeting processors into the session’s event-processing graph. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
|



Issue
This PR adds code for decoding
meeting.create,meeting.updateandmeeting.deleteevents.Testing
Unit tests are added, but these changes can only be tested together with the meeting feature as a whole.
Checklist
[WPB-XXX].UI accessibility checklist
If your PR includes UI changes, please utilize this checklist: