apps/api/src/common/slug.spec.ts
0 → 100644
+45
−0
apps/api/src/common/slug.ts
0 → 100644
+50
−0
+15
−3
Loading
La suggestion ne captait que la PREMIÈRE lettre frappée : conditionnée
par « champ vide », elle s'arrêtait dès la deuxième. « RCA » donnait
« r », que l'API refusait ensuite pour longueur insuffisante.
Mais le champ lui-même n'avait rien à faire là. « Slug (identifiant
public) » ne veut rien dire pour qui découvre le produit, c'était le
seul champ du formulaire capable d'échouer sur une règle invisible, et
le demandeur n'a de toute façon pas le dernier mot puisqu'un
administrateur approuve. Pire : si l'identifiant demandé était pris
entre-temps, la modération renvoyait l'administrateur le négocier avec
un inconnu.
Il est donc dérivé du nom, côté serveur, et re-dérivé à l'approbation
s'il a été pris depuis : la modération porte sur la légitimité de la
demande, pas sur une chaîne de caractères.
Le champ reste dans la console d'instance — un exploitant sait ce que
c'est — avec la suggestion corrigée : elle suit le nom tant que
personne n'a saisi l'identifiant à la main.
Co-Authored-By:
Claude Opus 5 <noreply@anthropic.com>