La technologie
La couche dossier
LEIMON n'est ni une application de suivi, ni un chatbot médical. C'est une couche dossier : le seul endroit où des comptes rendus de laboratoire, quinze ans de valeurs sanguines et un signal physiologique continu deviennent un objet unique et lisible — par le malade, par son entourage, par un soignant, par un médecin, et par le secouriste qui scanne un QR code à trois heures du matin.
Cette page dit comment c'est fabriqué, et pourquoi chaque choix a été fait dans ce sens plutôt que dans l'autre. Elle ne vend rien et ne demande rien.
01
Toute la thèse tient en une phrase
La norme d'un laboratoire est écrite pour une population. Un malade chronique vit sur sa propre ligne de base. LEIMON est construit sur cette ligne-là — et sur la seule donnée qu'un bracelet ne verra jamais : le sang.
Un exemple, tiré du dossier réel qui fait tourner ce produit. Hémoglobine à 7,0 g/dL, contre une norme de laboratoire à 13–18. Le compte rendu imprime un drapeau rouge. Il l'imprime tous les mois, depuis des années. Ce drapeau ne dit rien : il est allumé en permanence, il ne bouge jamais, et à force il apprend à celui qui le lit à ignorer les drapeaux rouges. C'est l'inverse de ce qu'on demande à une alerte.
Ce qui compte pour ce dossier n'est pas « 7,0 est bas ». C'est « 7,0 est le plateau, et aujourd'hui on est à 6,4 ».
02
La ligne de base personnelle : médiane et écart interquartile
Pour chaque marqueur, une seconde règle graduée est dérivée de l'historique de la personne : la médiane de ses mesures — le plateau, là où ce corps se tient ; l'écart interquartile — ce que ce corps fait normalement comme bruit ; et une bande personnelle où la dernière valeur se situe en unités d'IQR de distance à la médiane, pas en pourcentage d'une norme étrangère.
La médiane et l'IQR sont choisis contre la moyenne et l'écart-type pour une raison simple : une transfusion, une infection, un mois d'hospitalisation produisent des valeurs extrêmes. La moyenne les avale et déplace la ligne de base. La médiane ne bouge pas.
Trois conséquences. Le statut est calculé contre le plateau — au plateau, au-dessus, en dessous — au lieu d'un drapeau rouge permanent. Il existe un état anormal attendu : le laboratoire signale la valeur comme pathologique, et elle est normale pour cette personne. Et en dessous de quatre mesures, il n'y a pas de plateau, il y a une opinion : le marqueur est marqué « données insuffisantes » et aucun verdict n'est produit.
Anormal depuis toujours, c'est vous. Nouvellement différent, c'est un appel.
Cette bande n'annule jamais la règle de sécurité. Une fréquence cardiaque de repos qui monte n'est jamais pré-expliquée comme de la compensation — à cette hémoglobine, c'est aussi comme ça qu'une infection s'annonce. Fièvre au-dessus de 38 °C : le jour même, sans exception, parce qu'il n'y a plus de rate.
03
Pas de ligne de base sans dossier
Un plateau suppose une série temporelle. Une série temporelle suppose que « Ferritine 45 µg/L », « Ferritin 45 ng/mL » et « S-Ferritin » soient reconnus comme la même chose. Sans cette étape, ce sont trois séries sans rapport, et aucune tendance n'est lisible.
Un modèle extrait le PDF sous schéma strict — analyte tel qu'imprimé, valeur, unité, date, drapeau du laboratoire. Puis le résultat passe dans un registre qui est du code, pas un modèle : 55 analytes canoniques, chacun avec ses synonymes français, anglais, abrégés, désaccentués, et ses facteurs de conversion dérivés des masses molaires quand on traverse une frontière masse/molaire. Chaque PDF est classé à sa date de prélèvement, et les doublons sont reconnus à l'empreinte des octets du fichier.
Le dossier réel contient 67 marqueurs distincts : plus que le registre. Les marqueurs absents du registre sont conservés tels qu'imprimés et signalés non reconnus — jamais fusionnés au hasard dans une série voisine. Aucune valeur ne se perd, et aucune n'atterrit dans la mauvaise série.
Et c'est là que se joue la sécurité réelle. « Mean corpuscular haemoglobin concentration » contient le mot « haemoglobin ». Une correspondance par sous-chaîne a fait entrer, une fois, une hémoglobine à 27,4 g/dL dans la série d'hémoglobine. Rien n'a planté. Aucune erreur n'a été levée. Le système a produit une absurdité avec assurance — le pire mode de défaillance possible pour un dossier médical. Depuis, douze définitions portent un veto explicite, et l'ordre d'évaluation est lui-même une règle : les indices corpusculaires sont testés avant l'hémoglobine.
Le modèle lit. Le code décide.
04
Ce que le bracelet ne verra jamais
Le bracelet produit un signal continu : plus de trois cents jours de sommeil, de récupération, de variabilité cardiaque et de charge quotidienne, synchronisés par webhooks, avec un rafraîchissement de jeton conçu pour survivre aux expirations sans perdre l'historique.
Ce signal, seul, répond déjà très bien aux questions qu'il sait poser : après une nuit courte, la récupération baisse. Ce terrain-là appartient à l'appareil qui mesure, et LEIMON ne cherche pas à le rejouer.
La question qui restait sans réponse était autre : est-ce que ces trois cents jours disent quelque chose sur le sang ? Les deux sont mis sur le même axe. Les prises de sang d'un marqueur tracées par-dessus la ligne du bracelet, la bande personnelle servant d'ancrage vertical — sinon un axe auto-ajusté transforme le bruit d'un plateau stable en montagnes russes. Chaque prélèvement accompagné des trente jours vécus qui le précèdent, parce que la moelle répond sur des semaines.
Ces vues sont descriptives et le disent. À quatorze prises, rien n'est démontrable. Mais « voici votre propre historique, rangé pour être regardé » est un produit différent de « le test manquait de puissance », et c'est celui qui manquait.
Le bracelet mesure ; le sang situe. Une variabilité cardiaque à 34 ms ne dit pas la même chose selon qu'elle accompagne une hémoglobine à 7,2 ou une hémoglobine qui vient de passer sous le plateau.
05
Là où aucun modèle n'a le droit d'entrer
La carte d'urgence est accessible par QR code, sans session et sans mot de passe. Elle est dérivée par du code, sans un seul appel à un modèle. Un modèle intervient plus tôt, pour transcrire les comptes rendus — et rien n'entre dans la carte sans être passé par une revue humaine, élément par élément, avec son état : confirmé, corrigé, écarté.
Ce que voit un secouriste : la ligne d'identité, puis les alertes ordonnées par la vitesse à laquelle elles tuent si on les manque, puis les valeurs chroniques qu'il ne faut surtout pas sur-corriger. Une hémoglobine à 7 g/dL chez ce patient n'est pas une hémorragie aiguë, et un service d'urgence qui l'ignore transfuse pour rien : la médiane personnelle est préférée à la dernière valeur du laboratoire, précisément pour ça.
Le contenu est dérivé d'une table de 21 règles de contre-indication écrite en code. Chaque règle déclare ce qui l'a déclenchée et remonte à un fait précis du dossier. La table ne se contente pas de la présence d'un traitement : un anticoagulant en pause change la conduite en urgence autant qu'un anticoagulant actif. Français d'abord — le SAMU lit le français — avec une ligne anglaise sur chaque alerte, pour le cas du voyage.
Un garde-fou qui peut halluciner n'est pas un garde-fou.
Cette page sera peut-être lue une seule fois, la nuit, par quelqu'un qui décide de transfuser ou non. Une génération fiable à 99 % y est une génération inacceptable.
06
Les garde-fous qui empêchent les croisements de mentir
Plusieurs centaines de tests d'association sont exécutés entre le signal du bracelet, les valeurs sanguines et le journal du soir, avec des décalages temporels de 0 à 14 jours — parce qu'un effet physiologique n'arrive pas le jour même. Sur les données d'une seule personne, c'est une machine à produire du faux positif. Les garde-fous sont donc l'objet principal, et le résultat n'en est que la sortie.
Test de permutation par décalage circulaire : la structure temporelle est cassée au hasard, un grand nombre de fois, pour mesurer à quoi ressemble une corrélation obtenue par pur hasard sur ces données-là — le seuil réel, pas un seuil théorique. Puis Bonferroni sur le balayage de décalages et Benjamini-Hochberg sur l'ensemble. Les domaines ne sont jamais fusionnés : trois cents lignes quotidiennes prêteraient une fausse autorité à quatorze prises de sang. Chaque piste arrive donc avec la force réelle du signal qui la porte.
Le mot « cause » est interdit dans la sortie. Le produit rend une liste de pistes à montrer à un humain, jamais une conclusion.