Admin edits to a user's info (name, dob, email, etc.) send no notification to the affected user
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 55/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Calme
- Stack technique
- typescript
- Domaine
- authentication, backend-api-design
Piste de recherche
Start by reading UsersController.updateUser and ProfilesController.updateProfileById in application/backend/src/controllers/, then trace how the project sends notification emails and tests these update endpoints. The issue suggests notifying on admin-initiated profile changes, with both old and new addresses notified when email changes; confirm the notification scope with maintainers. Done when the agreed notifications are sent and covered by tests.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
UsersController.updateUser and ProfilesController.updateProfileById in application/backend/src/controllers/ let an admin (OrganisationAdmin or StudyAdmin) update any of a user's or participant's fields — email, firstName, lastName, role, dob, mobile, address, next of kin, and so on. Neither endpoint sends any notification to the affected user (old or new email).
The user has no way to know their info was changed. If it's the email that got changed, they only find out when their next login attempt with the old address returns "invalid credentials".
Users cannot self-change their own email today. ProfilesController.updateCurrentProfile only writes firstName and lastName to the User table even when the body includes an email, so email changes are admin-only. That makes silent admin changes more concerning than they would be in a system where users can also update their own email.
Related to #928 which flags the same silent behaviour on password reset completion.
Suggested fix: on any admin-initiated change to a user's profile, send a notification email. At minimum on email changes, notify both the old and new addresses ("Your CTRL email was changed. If this wasn't you, contact support."). Other field changes can either share a single generic "your profile was updated by an admin" notification or notify per-field, depending on how noisy the team wants it.
- Langage dominant
- TypeScript
- Étoiles
- 4
- Forks
- 0
- Merge moyen
- 14 h 50 min
- PR mergées (30 j)
- 5
Préparer son environnement
- Fournit un Dockerfile ou un 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 Garvan-Data-Science-Platform/ctrl
-
Difficulté 1/5 1-3 heures Accessibilité débutants 82/100
-
admin-client backend bug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
backend bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Garvan-Data-Science-Platform/ctrl#970 · 1 commentaire ·
-
backend bug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
backend bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Toutes les issues de Garvan-Data-Science-Platform/ctrl
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
xdjs/MusicNerdWeb#1532 ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
sebastian-software/ardo#352 ·
Les mainteneurs répondent en général sous 1 jour
-
@react95/core good first issue
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 3 jours
-
@shikijs/stream: `ShikiStreamTokenizer.clone()` shares its `tokensStable` array with the originalPeut-être pris @xyrolle l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 6 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour