element-hq / element-hq/synapse
Faster remote room joins: add an error code to `/members` when in partial state
- Dominant language
- Python
- Stars
- 4.6k
- Forks
- 600
- Avg merge
- 5d 22h
- Merged PRs (30d)
- 51
Description
This issue has been migrated from [#14587](https://github.com/matrix-org/synapse/issues/14587).
---
For now the request is just stalled until the join completes, which is not ideal since clients are not aware of what is happening.
This requires a MSC to define the error code.
For backward compatibility we also probably need to add a parameter to `/members` so that the client can opt-in to the specific error code.
Or perhaps returning a 5xx is enough ? https://stackoverflow.com/questions/9794696/which-http-status-code-means-not-ready-yet-try-again-later has several suggestions on that subject.
Contributor guide
Research direction
Start by reviewing the `/members` endpoint and the Matrix Spec Change (MSC) process, since the issue says a new error code must be defined. Resolve whether clients need an opt-in parameter or a 5xx response, then document the chosen compatibility behavior and error semantics as done.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100