[x] Tell sliding sync we're filtering for spaces for proper sliding window
[x] Root spaces are not ordered by room account data yet (MSC3230)
[x] Child spaces are not ordered by order from the state event yet
[x] Removing a room from a space is not detected until you clear cache from developer options (sdk bug)
[x] Sometimes, adding a room to a space is not detected until you restart the app
Stretch goals
[ ] Improve performance / caching to load space list
[x] Aggregated unread counts
Out of scope:
Successors of tombsoned rooms do not automatically end up in the same spaces (while doing offline space filtering. We could let the SDK request a filtered list from sync API which would do this for us though, if we notice that offline filtering has too many other drawbacks. Offline filtering is preferred for now as it allow us to switch space while offline, and doesn't require too much SDK modifications)
Detecting space child changes while viewing the space, without having to switch away and back (requires listening to m.space.child state events for every single space in the currently selected hierarchy)
Detecting live changes of root space order (until upstream implements some room account data listener?)
order
from the state event yetStretch goals
Out of scope: