[lib] Take operations from the queue when conditions become met
Summary:
Check the conditions, take from the queues, process and dispatch actions.
https://linear.app/comm/issue/ENG-9189/introduce-additional-operation-queues
Depends on D13366
Test Plan:
Tested the whole stack at once:
- Created an operation with a reaction that was received before an operation creating the message
- Created an operation with an edit that was received before an operation creating the message
- Created an operation with an entry edit that was received before an operation creating the entry
- Created an operation with thread subscription change that was received before the user became a member
In each of the cases verified that the result was correct and that the operation was removed from the queue.
Reviewers: kamil, will
Reviewed By: kamil
Subscribers: ashoat
Differential Revision: https://phab.comm.dev/D13375