[lib] Disable automatic retries of all messages and enable manual retries
Summary:
Modify processOutboundMessages function so that it accepts an optional parameter with a list of message IDs. When this parameter is set, we try to send only these messages - this version is used for both initial send and for a manual retry. When the parameter isn't set, we try to send all the messages (this behavior is changed in the next diff).
https://linear.app/comm/issue/ENG-8676/stop-automatic-retries-of-dms
https://linear.app/comm/issue/ENG-8675/add-option-to-manually-retry-a-message
Depends on D12745
Test Plan:
Tested on both native and web: modified our text message sending logic so that DMOps are generated and scheduled when we send a message:
- Sent a message and checked if sending messages was attempted.
- Modified the logic in processOutboundP2PMessages so that every other message fails. Checked if the retry was attempted after 30s.
Reviewers: kamil, marcin
Reviewed By: kamil
Subscribers: ashoat
Differential Revision: https://phab.comm.dev/D12746