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:
1. Call `decodeMinimallyEncodedRawThreadInfo` to decode all thread infos into `LegacyRawThreadInfo`
2. Call `legacyUpdateRolesAndPermissions` to perform the migration
3. Call `minimallyEncodeRawThreadInfo` to re-encode the threadinfos from `LegacyRawThreadInfo` into a `RawThreadInfo`
Depends on D12060