New server, old mobile:
New parent message in a channel
Channel is marked as unread on mobile and desktop
Channel is viewed from either mobile or desktop: channel marked as unread on both mobile and desktop
New message in an unfollowed thread
On desktop:
No unread notification exists unless a new parent message is posted
On mobile:
Channel is marked as unread
Channel is viewed: Marks the channel and any threads in that channel as read
New message in auto-followed thread
On desktop:
Unread indicator on the sidebar thread item
Thread is viewed: thread is marked as read on desktop, but on mobile the channel still shows an unread indicator (If the only new messages in that channel are from the viewed thread, can we mark the channel as read on the server side?)
Channel is viewed: Channel is marked as read on desktop and mobile (even if some of the threads haven’t been viewed in the channel), but the followed threads remain unread on desktop
On mobile:
Channel is marked as unread
Channel is viewed: Marks the channel as read on mobile and desktop and the threads as read (We might be able to detect that the app is on on older version, and if so mark the channel and the threads as read from the timestamp of the last_viewed_at time)
We need to do the same thing if the user turns off the collapsed threading, ie viewing a channel marks the channel and the threads as read
Old server, new mobile:
No new threading option (server does not support it), but the mobile app needs to support old and new threads for new servers, and the old threading model on old servers.
New Server, new mobile:
Show new threading option (user can choose in account settings to disable or enable folded threads)
...