De-emphasise and reduce the usage of `/_synapse` endpoints
Les mainteneurs répondent en général sous 3 jours
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 25/100
- Type d'issue
- Fonctionnalité
- Clarté
- À clarifier
- Activité
- À l'abandon
- Stack technique
- go
- Domaine
- api, backend-api-design, testing
Piste de recherche
Commencez par examiner Image Requirements, RegisterUser, TestCanRegisterAdmin, TestServerNotices et TestRegistration dans README.md afin de recenser chaque utilisation actuelle de /_synapse. La proposition ne définit pas l’API de remplacement ; le travail n’est donc pas prêt tant que l’interface server-notice et le périmètre de migration n’ont pas été définis d’un commun accord ; il sera considéré comme terminé lorsque les hypothèses spécifiques à Synapse inutiles auront été supprimées, tout en préservant la couverture de server-notice.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
This is something I noticed while working on conduit support (#513), where it seems that complement currently requires or emphasizes the usage of /_synapse endpoints.
Specifically, it uses them like so:
- Under "Image Requirements" in README.md, it asks for
/_synapse/admin/v1/registerto be supported for "admin" registrations.- This is then used in
RegisterUserwhere isAdmin istrue, which is used by the following tests:TestCanRegisterAdminTestServerNotices
- This is then used in
TestRegistration, under somet.Runs
From a puritan perspective, these should not exist within complement, as they test Synapse-specific behaviour that other servers have to then copy uncritically, and without blessing or formalisation from the spec.
From such a perspective, the concept of "admins" is also dubious, as the spec (explicitly) makes no serious note of them, leaving server administration as an implementation detail. (See MSC3593 for some context reading on an attempt to broach/formalise this as well.)
For all of complement's current usage of this endpoint, there is one problem with a suggestion of removing all of them altogether; Server Notices are defined in the spec, and so the absence of a formal mechanism which empowers servers/users to send server notices is unfortunate, but this means complement has no "closed system" way of implementing this.
To make the rejection of a /_synapse specific API explicit, and to develop a better way of testing server notices, I'm suggesting to introduce a /_complement API space, which servers should enable only in their corresponding complement images, and (for now) be only used for sending server notices (exact API forthcoming), not to elevate individual users as a "server admin", as this concept does not properly exist from a matrix specification standpoint.
This API space should only perform individual elevated actions, such as sending a single server notice via a POST API.
Hopefully, this way, we can avoid biasing to a certain implementation, and help make complement more pure or agnostic when testing conformity.
- Langage dominant
- Go
- Étoiles
- 101
- Forks
- 73
- Merge moyen
- 4 j 21 h
- PR mergées (30 j)
- 5
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de matrix-org/complement
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
matrix-org/complement#900 · 1 commentaire ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 45/100
matrix-org/complement#938 ·
Les mainteneurs répondent en général sous 3 jours
-
New tests for MSC4354 Sticky EventsPeut-être à nouveau libre @reivilibre l’a pris il y a 39 jours, et aucune pull request n’est ouverte. Ouverte
matrix-org/complement#925 · 1 personne assignée ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 3/5 1-2 jours Accessibilité débutants 52/100
matrix-org/complement#901 · 1 commentaire ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
matrix-org/complement#899 ·
Les mainteneurs répondent en général sous 3 jours
Toutes les issues de matrix-org/complement
Issues similaires
-
bug good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
[mesheryctl] design delete fails when passing file or URL as positional argumentPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouvertecomponent/mesheryctl kind/bug language/go
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
meshery/meshery#22772 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
backend security size:S
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
limitlessprojects/Go-Hybrid#3342 ·
Les mainteneurs répondent en général sous 1 jour
-
status/ready type/bug
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
buildpacks/pack#2733 ·
Les mainteneurs répondent en général sous 1 jour