matrix-org / matrix-org/matrix-spec
Consider replacing the public rooms list with a server-wide space
- Dominant language
- HTML
- Stars
- 330
- Forks
- 150
- Avg merge
- 2h 21m
- Merged PRs (30d)
- 3
Description
(This is likely more of an implementation detail than a spec issue. I've dumped my thoughts here as this applies to most server implementations though.)
This is mostly to reduce complexity, but it would be interesting to see the public room list become a single space for a server. The idea being that the room visibility API would instead just add rooms to a space under the hood, and the public room list API would simply check that space and return results based on the children within.
The advantages I can see to this mechanism are:
- Auth controls for who can add to the public room list are now just controlled via normal room authorization logic.
- The ability to make your room directory invite only, so only certain users can see the details in your rooms.
- Moderation of the room directory could be passed off to a bot, which can simply sit in the room and read new entries down sync, making appropriate decisions about who can read them.
- Users can subscribe to the space to add them to their directory list as we do today with account data.
- Appservice directories simply become child spaces of the main directory. The current spec doesn't provision for federated AS directories at all, so it also solves that problem.
Contributor guide
Assessment
This issue has not been assessed yet.