Se servir du banc · Comment faire

Charger un cas clinique

Les cas cliniques sont 50 dossiers dérivés de comptes-rendus réels, chacun visant une facette du banc : fonction rénale, allergie, conciliation, hypothèse précisée, revue de sortie, pédiatrie, comorbidités, parcours multi-venues. La liste est dans les cas cliniques.

Charger

L'annuaire d'abord — les cas s'appuient sur ses services et ses professionnels :

pnpm --filter ehr-lab seed

Puis un cas, ou tous :

pnpm --filter ehr-lab seed:case 02-renal-sepsis-a-d-autres-microorganismes
pnpm --filter ehr-lab seed:case --all

Chaque chargement affiche l'URL du dossier créé. Le cas est idempotent : son matricule est dérivé de son nom, donc le recharger ne crée pas un second dossier.

Ce que le seed apporte

Identité, séjour en cours, diagnostic du séjour, antécédents (codés SNOMED quand le référentiel a confirmé), allergies, traitement habituel (apparié au référentiel médicament), biologie, mesures.

Ce qu'il n'apporte pas, et pourquoi

Les prescriptions du séjour. Les saisir fait partie du parcours du cas : les pré-remplir supprimerait exactement ce qu'on veut voir marcher — suggestions de posologie, contre-indications, conciliation. Chaque cas porte sa doc avec le parcours à suivre.

Compléter un dossier déjà chargé

Un cas déjà au banc n'est pas réécrit. Quand le chargeur gagne une capacité, --refresh complète l'existant sans rien dupliquer — chaque ajout est gardé par une lecture :

pnpm --filter ehr-lab seed:case --all --refresh

Refaire le corpus

Trois étapes séparées, parce qu'elles échouent pour des raisons différentes : l'extraction demande le corpus PARHAF, le codage demande le référentiel, le chargement demande l'entrepôt.

python3 -m venv .venv && .venv/bin/pip install pyarrow
.venv/bin/python scripts/extract-parhaf-cases.py ~/Downloads/train-00000-of-00001.parquet 50
pnpm --filter ehr-lab resolve:cases -- --write    # CIM-10 → SNOMED, sous condition
python3 scripts/write-case-docs.py

Le corpus lui-même n'est pas versionné : il n'est pas à nous, et un dépôt de code n'est pas l'endroit où recopier quatre mille comptes-rendus. Chaque cas porte l'identifiant de sa ligne source pour qu'on aille la relire.