Skip to content

fix(server-nestjs): protège createUser contre les descriptions GitLab non textuelles - #2584

Merged
StephaneTrebel merged 1 commit into
mainfrom
fix/create-user-taken-guard
Aug 26, 2026
Merged

fix(server-nestjs): protège createUser contre les descriptions GitLab non textuelles#2584
StephaneTrebel merged 1 commit into
mainfrom
fix/create-user-taken-guard

Conversation

@shikanime

Copy link
Copy Markdown
Member

Issues liées

#2544


Quel est le comportement actuel ?

createUser (gitlab-client.service.ts:416) teste encore error.cause?.description?.includes('has already been taken') directement. Quand GitLab renvoie une erreur de validation, gitbeaker recopie l'objet message JSON tel quel dans cause.description (typé string à tort) — .includes is not a function, le TypeError masque la vraie cause. Les trois sites signalés dans #2544 (createGroup, createSubGroup, getOrCreateRepo) utilisent déjà hasGitbeakerCause ; ce quatrième appel frère du même fichier avait été manqué.

Quel est le nouveau comportement ?

Réutilisation de l'existant : hasGitbeakerCause(error, 'has already been taken'), même helper que les trois sites déjà corrigés. Une description non textuelle ne crashe plus — l'erreur d'origine est relancée proprement (pas de rattrapage erroné vers getUserByEmail).

Test de régression ajouté au bloc existant describe('createUser') : description objet { 'project_namespace.name': ['has already been taken'] } → rejet GitbeakerRequestError, sans fallback email.

54/54 tests verts ; tsc sans erreur sur le module.

Cette PR introduit-elle un breaking change ?

Non.

…descriptions

Co-authored-by: Automata <automata@shikanime.studio>
@shikanime
shikanime force-pushed the fix/create-user-taken-guard branch from 3915fcc to 937629a Compare August 26, 2026 11:57
@shikanime shikanime added the bug Something isn't working label Aug 26, 2026
@cloud-pi-native-sonarqube

Copy link
Copy Markdown

Comment thread apps/server-nestjs/src/modules/gitlab/gitlab-client.service.ts
@StephaneTrebel
StephaneTrebel added this pull request to the merge queue Aug 26, 2026
Merged via the queue into main with commit 9986fae Aug 26, 2026
35 checks passed
@StephaneTrebel
StephaneTrebel deleted the fix/create-user-taken-guard branch August 26, 2026 13:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working built

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants