HomePhabricator
Diffusion Comm faf07ac262f5

Persist rescinds payloads in NSE so that AppDelegate can update thread statuses…

Description

Persist rescinds payloads in NSE so that AppDelegate can update thread statuses on app start.

Summary:
In this differential NSE persists rescind in a flat file storage we implemented for messages some time ago. AppDelegate reads the storage and updates thread statuses in SQLite if relevant.
As of this differential NSE is capable of providing entire functionality associated with rescind that we have implemented so far and codeVersion > 1000 can be removed and replaced with check for a specific code version.

Test Plan:
Remove codeVersion > 1000 conditions. Build the app and kill it. Generate a some rescinds. Attach the debugger to moveMessagesToDatabase method and launch the app. Observe in the debugger payloads of rescinds read from temporary storage. Ensure they match threads that you
read on another device to generate rescinds.

Reviewers: bartek, atul, tomek, kamil

Reviewed By: atul, tomek

Subscribers: ashoat

Differential Revision: https://phab.comm.dev/D6921