The last step for introducing the communities table in the keyserver + tagging farcaster channel project is we need to introduce a new permission to manage the farcaster channel tags. Part of this task will be to perform a redux migrations so that native clients add this permission manage farcaster tag permission. However, as part of the work to minimally encode the permissions, updateRolesAndPermissions became legacyUpdateRolesAndPermissions since it was dealing with the LegacyRawThreadInfo. Discussed this with @ashoat and we came up with a plan for the new updateRolesAndPermissions method:
- Call decodeMinimallyEncodedRawThreadInfo to decode all thread infos into LegacyRawThreadInfo
- Call legacyUpdateRolesAndPermissions to perform the migration
- Call minimallyEncodeRawThreadInfo to re-encode the threadinfos from LegacyRawThreadInfo into a RawThreadInfo
Depends on D12390