Admin can select the same role in the options section without effect
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 25/100
Línea de trabajo
The report identifies the organization membership detail endpoint, /api/organization-members/{membership_id}/, and the frontend organization membership resource. Start by tracing that resource's PATCH request into the backend handler and its tests. Done means selecting the current role does not save a redundant update or refresh updated_at; the issue itself says it is not open for contribution.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
❌ This issue is not open for contribution. Visit Contributing guidelines to learn about the contributing process and how to find suitable issues.
Target branch: unstable
Observed behavior
In the role-selection options for a user, an admin can choose the same role the user already has. The UI sends a PATCH request to the organization membership detail endpoint. The request succeeds, but the user's role remains unchanged; the membership record is still saved and its updated_at timestamp is refreshed.
Errors and logs
No error is returned. The PATCH to /api/organization-members/{membership_id}/ returns HTTP 200 with the membership, even when the submitted role matches the existing role. The backend accepts the role and saves the membership rather than rejecting or skipping the redundant update.
Expected behavior
If the selected role matches the user's current role, the system should prevent the redundant update or clearly indicate that no role change is needed. A redundant selection should not be submitted and saved as an update.
User-facing consequences
This creates confusing UX and makes a redundant selection appear to have been applied even though the user's role did not change. It also refreshes the membership's update timestamp, which can make the record appear recently changed.
Steps to reproduce
- Sign in as an organization admin.
- Open the organization.
- Locate the SHARING section of an organization page.
- Select a user in the Users section to open their role options.
- Choose the same role that the user already has assigned.
- Observe that the PATCH request succeeds, the user's role remains the same, and the membership's update timestamp is refreshed.
Context
The frontend's organization membership resource sends the role update as a PATCH to the organization-members detail route. The backend accepts the unchanged role and saves the membership.
AI usage
The bugs were gathered by a human and later turned into issue descriptions with the help of an AI assistant. The assistant was used to draft the wording and structure of the report, and the final text was reviewed and adjusted for accuracy based on the supplied bug summary.
- Lenguaje dominante
- Python
- Estrellas
- 192
- Forks
- 310
- Merge medio
- 2 d 13 h
- PR fusionados (30 d)
- 67
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de learningequality/studio
-
Set unpublishable: true on PublishedChange by construction to simplify handleMaxRevs predicateAbiertoDEV: frontend P3 - low
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
learningequality/studio#5868 ·
Los mantenedores suelen responder en 1 día
-
TAG: tech update / debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
learningequality/studio#2245 ·
Los mantenedores suelen responder en 1 día
-
bug DEV: frontend P0 - critical
Dificultad 3/5 1-2 días Aptitud para principiantes 22/100
learningequality/studio#6316 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 4/5 1-2 días Aptitud para principiantes 35/100
learningequality/studio#6315 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 4/5 1-2 días Aptitud para principiantes 25/100
learningequality/studio#6314 ·
Los mantenedores suelen responder en 1 día
Todos los issues de learningequality/studio
Issues similares
-
`burr` fails to start when the Python path has a space in itPosiblemente ocupada @enekoreto la tomó hoy. Abiertostatus/needs-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 5 días
-
gemini 出现了新的域名需要加入Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
-
Dificultad 2/5 Medio día Aptitud para principiantes 72/100
debpalash/VoiceStudio#2903 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
dagster-io/community-integrations#367 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
aws-samples/sample-per-model-bedrock#243 ·
Los mantenedores suelen responder en 1 día