MSC4485: Homeserver feature controls#4485
Conversation
turt2live
left a comment
There was a problem hiding this comment.
Early editorial review as part of determining labels - the actual content hasn't been reviewed in reasonable detail.
| @@ -0,0 +1,71 @@ | |||
| # MSC4485: Homeserver feature controls | |||
|
|
|||
| Currently 'featured homeserver lists' are gaining more attention as community members think about user onboarding. These would direct new users to homeservers curated to provide a good experience. However, many homeservers don't have the ability to accommodate any rate of growth, or a global audience. This proposal provides a way to give server admins more responsive control over their visibility on such lists. | |||
There was a problem hiding this comment.
Please aim to wrap lines at around 100 characters. It doesn't need to be precise - just enough to ensure that if someone leaves a comment and the diff changes, the comment has a good chance of remaining visible in the github UI.
There was a problem hiding this comment.
Implementation requirements:
- Server (offering)
- Application (using) - ideally multiple
This comment was marked as low quality.
This comment was marked as low quality.
There was a problem hiding this comment.
Should 30x redirects be possible on this endpoint? (3rd time commenting this because I wanted this to be a thread)
There was a problem hiding this comment.
It should be handled in the same way as the other client-server well known endpoints. The spec doesn't specify, but the server-server one must follow redirects
There was a problem hiding this comment.
Side note: looks like it's about to get spec'd #4402
| Because the algorithm includes randomness, reevaluating the algorithm on | ||
| each page load may result in a poor user experience as servers disappear | ||
| and reappear. Implementations should seed their random number generation | ||
| appropriately to ensure the list remains reasonably stable. |
There was a problem hiding this comment.
Does seeding appropriately mean using a constant seed?
There was a problem hiding this comment.
It probably means persisting the seed in the session, or similar.
| For this reason, and to reduce load on servers, it is heavily recommended that | ||
| implementations proxy these rules, potentially bundling them with the server | ||
| list itself. |
There was a problem hiding this comment.
Does this mean bundling the server list and well-known responses in the client? Or do you mean creating a separate service that hosts them for the client to load?
There was a problem hiding this comment.
A client might have a server list service that returns a response containing a list of vetted servers with each server's respective rules. A stand-alone implementation might build it into the webpage itself.
This explicitly does not mean bundling the responses at compile time (hence proxy), because otherwise servers would no longer be able to update rules on the fly, in response to load or other conditions.
Rendered