5 août 2026

Une route sans appelant est un bug

Cent routes d'API écrites, testées, et reliées à rien. Ce que nous avons trouvé en branchant l'administration de Piks-l — et pourquoi un test le vérifie désormais à chaque commit.

Il existe une catégorie de défaut qui ne déclenche rien : pas d''exception, pas de ligne dans les journaux, pas de ralentissement. Du code juste, écrit, testé — et relié à rien. C''est le plus cher à trouver, parce que l''écran a l''air normal.

Cent routes orphelines

En reprenant l''administration de Piks-l module par module, nous avons commencé par un inventaire au lieu d''écrire du neuf : pour chaque route d''API, existe-t-il quelque part une interface qui l''appelle ? La réponse a été non plus de cent fois. Des onglets entiers — clients, stock, statistiques, catalogue d''articles, corbeille, invitations — existaient côté serveur sans le moindre bouton pour y accéder.

Ce que le branchement a révélé

Brancher, c''est vérifier. Quatre défauts sont tombés dans la foulée, tous silencieux :

La liste des devis était vide en production : la route renvoyait une enveloppe que la page lisait comme un tableau. Zéro ligne affichée, zéro erreur remontée.

La création de facture perdait trois champs — étiquettes, référence de virement, conditions de règlement. Le formulaire les envoyait, le schéma de validation ne les déclarait pas, et la bibliothèque retire les clés inconnues sans rien dire. Les factures modifiées les gardaient ; seules les nouvelles les perdaient.

L''escompte pour paiement anticipé s''imprimait hors de sa fenêtre : la fonction qui vérifiait la date existait, exportée, appelée nulle part. Une facture rouverte six mois plus tard promettait encore « 2 % sous 10 jours ».

La courbe d''avancement du kanban comptait tous les tableaux : un tableau client à l''arrêt affichait l''activité de toute l''équipe. Un chiffre crédible, et faux.

La règle, maintenant écrite dans les tests

Chaque module porte désormais un test qui relit ses routes, en déduit les URL, cherche un appelant, et échoue s''il n''en trouve pas. Le calendrier va plus loin : il refuse aussi un composant monté nulle part, un réglage enregistré que personne ne relit, une touche annoncée dans l''aide et branchée sur rien.

Ce n''est pas une contrainte de style. C''est la seule façon d''éviter que « c''est développé » et « c''est utilisable » finissent par vouloir dire deux choses différentes.

Envie de voir la plateforme derrière ce blog ?

Ce site, son administration et les sites de nos clients tournent tous sur Piks-l.

PIKS-L

Chargement en cours