fix(admin): conflits HTTP 409 au lieu de 422 (delete FK-bloque + course unicite) #33

Merged
Corentin merged 1 commit from fix/http-409-conflict-codes into dev 2026-06-17 10:11:29 +02:00

1 commit

Author SHA1 Message Date
Imugiii
a5d48cacbd fix(admin): conflits HTTP 409 au lieu de 422 (delete FK-bloque + course unicite)
Some checks failed
CI / secret-scan (push) Successful in 16s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 53s
CI / secret-scan (pull_request) Successful in 9s
CI / php-lint (pull_request) Successful in 28s
CI / static-tests (pull_request) Successful in 56s
CI / auto-merge (push) Has been skipped
CI / auto-merge (pull_request) Failing after 6s
Aligne les controleurs admin sur le contrat byan-api.md / conventions.md :
un conflit remonte par la base (SQLSTATE 23000) renvoie 409 Conflict, pas 422.
Couvre la suppression dure bloquee par une FK RESTRICT (Product, Menu) et la
course d'unicite slug/name a l'insertion (Category). La validation simple en
amont (champ/format/bornes, PIN invalide, acteur verrouille) et la
pre-verification nameExists/slugExists restent en 422.

renderDelete gagne un parametre de statut optionnel (defaut inchange).
Tests : assertions de conflit flippees en 409 (TDD). 201 tests, 597 assertions,
PHPStan L6 propre.
2026-06-17 07:45:29 +00:00