DraftBot-A-Discord-Adventure / DraftBot

A Discord adventure bot that speaks english and french
MIT License
229 stars 61 forks source link

Cleanup des méthod pour get un player #2724

Closed BastLast closed 2 weeks ago

BastLast commented 3 weeks ago

Il faut qu'on ne puisse pas register un joueur sans etre un joueur, j'ai peur que le getOrRegister soit utilisé à un endroit ou il ne dois pas l'être, (d'autant que la méthode est appelée par des trucs genre Player.getById)

aussi getByID crash quand on demande l'id d'un mec qui n'existe pas;

bref faudrait faire un peu de ménage là dedans et clarifier ce qui doit etre utilisé et quand

Feiryn commented 2 weeks ago

Contrairement à avant, les paquets ne sont pas envoyés à Core si le joueur n'existe pas (car absent de keycloak). Donc normalement pas de problème pour ça. Par exemple, si je fais /profile sur un joueur qui n'existe pas, Discord ne trouvera pas le joueur dans keycloak et donc le traitement s'arrêtera directement

Feiryn commented 2 weeks ago

Car il faut un keycloak ID pour avoir un joueur en BDD.

Et la seule méthode qui peut enregistrer un joueur est registerUser dans KeycloakUtils.ts, qui est appelée uniquement par getOrRegisterDiscordUser, qui elle-même n'est utilisée que lorsqu'un joueur fait une commande lui-même (n'importe laquelle)

Feiryn commented 2 weeks ago

Donc pour moi aucun risque, on peut close

BastLast commented 2 weeks ago

Contrairement à avant, les paquets ne sont pas envoyés à Core si le joueur n'existe pas (car absent de keycloak). Donc normalement pas de problème pour ça. Par exemple, si je fais /profile sur un joueur qui n'existe pas, Discord ne trouvera pas le joueur dans keycloak et donc le traitement s'arrêtera directement

Ok malin mais faut que core soit codé en accordance avec cette info

BastLast commented 2 weeks ago

@Feiryn si c'est ok pour toi je garde l'issue pour que l'un de nous fasse un passage avant la sortie mais maybe yaura pas de commit.

BastLast commented 2 weeks ago

en fait je viens de me rendre compte que ceci est géré par #2571 donc au final je close en duplicate