CreateUser ne comptait rien. Ce qui a ete livre le 12/08 dans manager-app -- compteur « X / 5 » et bouton d'ajout desactive -- est un garde-fou d'interface : un POST direct sur l'API passait toujours. Le controle est desormais fait la ou il est opposable, et rend 422. Cote front, rien a retoucher : le resultat d'invokeAPI est deja lu depuis le correctif du 409 e-mail deja pris, donc le message remontera tel quel. Deux choix, tous deux documentes dans le code : - 5 en dur. Le faire varier par plan serait une colonne sur SubscriptionPlan, qui n'en porte aucune sur les utilisateurs -- donc une migration apres le gel du schema (lot B). Dette V1 assumee. - Le SuperAdmin n'y est pas soumis. C'est la seule porte de service qui reste tant qu'aucun champ ne permet de relever la limite d'un client, et ca s'aligne sur le front, qui ne lui montre deja pas le compteur. L'inscription self-service (OnboardingController) n'est pas concernee : elle cree le premier utilisateur d'une instance neuve. 4 tests : au plafond, sous le plafond, plafond par instance, SuperAdmin exempte. dotnet test 175/175. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Migrations
Invite de commande
Ouvrir un invite de commande dans le répertoire de la solution
Supprimer la dernière migration
A faire uniquement si elle n'a pas encore été appliquée à la base de données
dotnet ef migrations remove
Ajouter une migration
dotnet ef migrations add
Mise à jour de la base de données
dotnet ef database update