chore: mise à jour output pipeline (anonymized + structured)

Résultats de re-traitement pipeline v2 sur 261 dossiers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
dom
2026-03-07 23:14:42 +01:00
parent c73515ac89
commit 13fe9fa666
734 changed files with 157158 additions and 304963 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -4,179 +4,23 @@
"sejour": {
"sexe": "M"
},
"diagnostic_principal": {
"texte": "Thromboembolie veineuse",
"cim10_suggestion": "I82.9",
"cim10_confidence": "high",
"cim10_final": "I82.9",
"sources_rag": [],
"preuves_cliniques": [],
"est_cma": true,
"niveau_severite": "non_evalue",
"niveau_cma": 2,
"source": "nuke3"
},
"dp_selection": {
"chosen_index": 1,
"chosen_term": "Thromboembolie veineuse",
"chosen_code": "I82.9",
"confidence": "medium",
"verdict": "CONFIRMED",
"evidence": [
"Score 4.0 — source: llm_das",
"Delta +3.0 vs Chimiothérapie, (Z51.1)"
],
"reason": "Écart score 3.0 >= seuil 3.0",
"candidates": [
{
"index": 1,
"term": "Thromboembolie veineuse",
"code": "I82.9",
"confidence": "high",
"source": "llm_das",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 1,
"num_occurrences": 1,
"score": 4.0,
"score_details": {
"section": 1,
"confidence": 3
}
},
{
"index": 0,
"term": "Chimiothérapie,",
"code": "Z51.1",
"confidence": "high",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": true,
"section_strength": 2,
"num_occurrences": 1,
"score": 1.0,
"score_details": {
"section": 2,
"confidence": 3,
"act_only_malus": -4
}
}
],
"debug_scores": {
"top1": 4.0,
"top2": 1.0,
"delta": 3.0
}
"verdict": "REVIEW",
"evidence": [],
"reason": "Aucun candidat DP identifié",
"candidates": []
},
"dp_crh_only": {
"chosen_index": 1,
"chosen_term": "Thromboembolie veineuse",
"chosen_code": "I82.9",
"confidence": "medium",
"verdict": "CONFIRMED",
"evidence": [
"Score 4.0 — source: llm_das",
"Delta +3.0 vs Chimiothérapie, (Z51.1)"
],
"reason": "Écart score 3.0 >= seuil 3.0",
"candidates": [
{
"index": 1,
"term": "Thromboembolie veineuse",
"code": "I82.9",
"confidence": "high",
"source": "llm_das",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 1,
"num_occurrences": 1,
"score": 4.0,
"score_details": {
"section": 1,
"confidence": 3
}
},
{
"index": 0,
"term": "Chimiothérapie,",
"code": "Z51.1",
"confidence": "high",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": true,
"section_strength": 2,
"num_occurrences": 1,
"score": 1.0,
"score_details": {
"section": 2,
"confidence": 3,
"act_only_malus": -4
}
}
],
"debug_scores": {
"top1": 4.0,
"top2": 1.0,
"delta": 3.0
}
"verdict": "REVIEW",
"evidence": [],
"reason": "Aucun candidat DP identifié",
"candidates": []
},
"dp_final": {
"chosen_index": 1,
"chosen_term": "Thromboembolie veineuse",
"chosen_code": "I82.9",
"confidence": "medium",
"verdict": "CONFIRMED",
"evidence": [
"Score 4.0 — source: llm_das",
"Delta +3.0 vs Chimiothérapie, (Z51.1)"
],
"reason": "Écart score 3.0 >= seuil 3.0",
"candidates": [
{
"index": 1,
"term": "Thromboembolie veineuse",
"code": "I82.9",
"confidence": "high",
"source": "llm_das",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 1,
"num_occurrences": 1,
"score": 4.0,
"score_details": {
"section": 1,
"confidence": 3
}
},
{
"index": 0,
"term": "Chimiothérapie,",
"code": "Z51.1",
"confidence": "high",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": true,
"section_strength": 2,
"num_occurrences": 1,
"score": 1.0,
"score_details": {
"section": 2,
"confidence": 3,
"act_only_malus": -4
}
}
],
"debug_scores": {
"top1": 4.0,
"top2": 1.0,
"delta": 3.0
}
"verdict": "REVIEW",
"evidence": [],
"reason": "Aucun candidat DP identifié",
"candidates": []
},
"quality_flags": {
"crh_only_mode": true
@@ -190,45 +34,34 @@
"imagerie": [],
"complications": [],
"alertes_codage": [
"CMA niveau 2 : 'Thromboembolie veineuse' (I82.9) — sévérité non_evalue",
"QC: DP I82.9 confiance medium→high — Le code I82.9 (Thromboembolie veineuse, non spécifiée) nécessite une justification clinique précise. L'absence de preuves cliniques dans le dossier rend ce codage non justifié. Un code plus général pourrait être envisagé si une thrombose veineuse est confirmée, mais sans preuve, il est préférable de le supprimer. Il est crucial d'obtenir des informations supplémentaires (antécédents, examens complémentaires, symptômes) pour justifier un tel diagnostic.",
"QC: L'absence de justification clinique pour le code I82.9 est un point critique. Veuillez vérifier le dossier clinique pour identifier des éléments de preuve (examens, symptômes, antécédents) qui pourraient soutenir ce diagnostic. Sans cela, le codage est incorrect et peut entraîner des problèmes de remboursement et de qualité des données.",
"QC: Il est impératif de documenter clairement la justification clinique de chaque code dans le dossier patient.",
"VETOS[PDF]: FAIL (score=40)",
"VETO-02 [HARD] diagnostic_principal: DP I82.9 sans preuve exploitable",
"VETO-12 [HARD] diagnostic_principal: DP I82.9 en high sans preuve"
"NUKE-3 REVIEW: DP ambigu — Aucun candidat DP identifié"
],
"source_files": [],
"ghm_estimation": {
"cmd": "05",
"cmd_libelle": "Affections de l'appareil circulatoire",
"type_ghm": "M",
"severite": 1,
"ghm_approx": "05M??1",
"cma_count": 0,
"cms_count": 0,
"alertes": []
"alertes": [
"DP absent — CMD non déterminable"
]
},
"controles_cpam": [],
"veto_report": {
"verdict": "FAIL",
"score_contestabilite": 40,
"issues": [
{
"veto": "VETO-02",
"severity": "HARD",
"where": "diagnostic_principal",
"message": "DP I82.9 sans preuve exploitable"
},
{
"veto": "VETO-12",
"severity": "HARD",
"where": "diagnostic_principal",
"message": "DP I82.9 en high sans preuve"
}
]
"verdict": "PASS",
"score_contestabilite": 100,
"issues": []
},
"processing_time_s": 41.81,
"completude": {
"checks": [],
"score_global": 100,
"verdict_global": "defendable",
"documents_presents": [
"crh"
],
"documents_manquants": []
},
"processing_time_s": 15.35,
"metrics": {
"das_total": 0,
"das_active": 0,
@@ -238,7 +71,7 @@
"das_no_code": 0,
"actes_total": 0,
"actes_with_code": 0,
"dp_has_code": true
"dp_has_code": false
},
"rules_runtime": {
"router_version": 1,

View File

@@ -17,279 +17,160 @@
"source_excerpt": "...es, nous avons réalisé un angioscanner pour s'assurer de l'absence de nouv\nthrombose et notamment d'embolie pulmonaire. Ce scanner s'est révélé parfaitement stable.\nSur le plan clinique, bonne récupération, il quitte l..."
},
"dp_selection": {
"chosen_index": 2,
"chosen_index": 0,
"chosen_term": "Embolie pulmonaire",
"chosen_code": "I26.9",
"confidence": "high",
"verdict": "CONFIRMED",
"evidence": [
"L'embolie pulmonaire est un diagnostic précis et potentiellement grave.",
"Les autres options sont soit un symptôme (tachycardie), soit un motif moins spécifique (malaise)."
"Score 3.0 — source: regex (section forte)",
"Delta +4.0 vs Tachycardie (R00.0)"
],
"reason": "L'embolie pulmonaire est le diagnostic le plus précis et justifie une prise en charge hospitalière.",
"reason": "Écart score 4.0 >= seuil 3.0",
"candidates": [
{
"index": 1,
"index": 0,
"term": "Embolie pulmonaire",
"code": "I26.9",
"confidence": "high",
"source": "regex",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 3,
"num_occurrences": 2,
"score": 7.0,
"score_details": {
"section": 3,
"confidence": 3,
"occurrences": 1
}
},
{
"index": 2,
"term": "Embolie pulmonaire",
"code": "I26.9",
"confidence": "high",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 2,
"num_occurrences": 2,
"score": 6.0,
"score_details": {
"section": 2,
"confidence": 3,
"occurrences": 1
}
},
{
"index": 0,
"term": "Malaise",
"code": "F41.00",
"confidence": "medium",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 2,
"num_occurrences": 1,
"score": 3.0,
"score_details": {
"section": 2,
"confidence": 1
"section": 3,
"confidence": 0
}
},
{
"index": 3,
"index": 1,
"term": "Tachycardie",
"code": "R00.0",
"confidence": "high",
"source": "llm_das",
"is_comorbidity_like": false,
"is_symptom_like": true,
"is_act_only": false,
"section_strength": 1,
"num_occurrences": 1,
"score": 2.0,
"score": -1.0,
"score_details": {
"section": 1,
"confidence": 3,
"confidence": 0,
"symptom_malus": -2
}
}
],
"debug_scores": {
"top1": 7.0,
"top2": 6.0,
"delta": 1.0,
"llm": true
"top1": 3.0,
"top2": -1.0,
"delta": 4.0
}
},
"dp_crh_only": {
"chosen_index": 2,
"chosen_index": 0,
"chosen_term": "Embolie pulmonaire",
"chosen_code": "I26.9",
"confidence": "high",
"verdict": "CONFIRMED",
"evidence": [
"L'embolie pulmonaire est un diagnostic précis et potentiellement grave.",
"Les autres options sont soit un symptôme (tachycardie), soit un motif moins spécifique (malaise)."
"Score 3.0 — source: regex (section forte)",
"Delta +4.0 vs Tachycardie (R00.0)"
],
"reason": "L'embolie pulmonaire est le diagnostic le plus précis et justifie une prise en charge hospitalière.",
"reason": "Écart score 4.0 >= seuil 3.0",
"candidates": [
{
"index": 1,
"index": 0,
"term": "Embolie pulmonaire",
"code": "I26.9",
"confidence": "high",
"source": "regex",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 3,
"num_occurrences": 2,
"score": 7.0,
"score_details": {
"section": 3,
"confidence": 3,
"occurrences": 1
}
},
{
"index": 2,
"term": "Embolie pulmonaire",
"code": "I26.9",
"confidence": "high",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 2,
"num_occurrences": 2,
"score": 6.0,
"score_details": {
"section": 2,
"confidence": 3,
"occurrences": 1
}
},
{
"index": 0,
"term": "Malaise",
"code": "F41.00",
"confidence": "medium",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 2,
"num_occurrences": 1,
"score": 3.0,
"score_details": {
"section": 2,
"confidence": 1
"section": 3,
"confidence": 0
}
},
{
"index": 3,
"index": 1,
"term": "Tachycardie",
"code": "R00.0",
"confidence": "high",
"source": "llm_das",
"is_comorbidity_like": false,
"is_symptom_like": true,
"is_act_only": false,
"section_strength": 1,
"num_occurrences": 1,
"score": 2.0,
"score": -1.0,
"score_details": {
"section": 1,
"confidence": 3,
"confidence": 0,
"symptom_malus": -2
}
}
],
"debug_scores": {
"top1": 7.0,
"top2": 6.0,
"delta": 1.0,
"llm": true
"top1": 3.0,
"top2": -1.0,
"delta": 4.0
}
},
"dp_final": {
"chosen_index": 2,
"chosen_index": 0,
"chosen_term": "Embolie pulmonaire",
"chosen_code": "I26.9",
"confidence": "high",
"verdict": "CONFIRMED",
"evidence": [
"L'embolie pulmonaire est un diagnostic précis et potentiellement grave.",
"Les autres options sont soit un symptôme (tachycardie), soit un motif moins spécifique (malaise)."
"Score 3.0 — source: regex (section forte)",
"Delta +4.0 vs Tachycardie (R00.0)"
],
"reason": "L'embolie pulmonaire est le diagnostic le plus précis et justifie une prise en charge hospitalière.",
"reason": "Écart score 4.0 >= seuil 3.0",
"candidates": [
{
"index": 1,
"index": 0,
"term": "Embolie pulmonaire",
"code": "I26.9",
"confidence": "high",
"source": "regex",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 3,
"num_occurrences": 2,
"score": 7.0,
"score_details": {
"section": 3,
"confidence": 3,
"occurrences": 1
}
},
{
"index": 2,
"term": "Embolie pulmonaire",
"code": "I26.9",
"confidence": "high",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 2,
"num_occurrences": 2,
"score": 6.0,
"score_details": {
"section": 2,
"confidence": 3,
"occurrences": 1
}
},
{
"index": 0,
"term": "Malaise",
"code": "F41.00",
"confidence": "medium",
"source": "edsnlp",
"is_comorbidity_like": false,
"is_symptom_like": false,
"is_act_only": false,
"section_strength": 2,
"num_occurrences": 1,
"score": 3.0,
"score_details": {
"section": 2,
"confidence": 1
"section": 3,
"confidence": 0
}
},
{
"index": 3,
"index": 1,
"term": "Tachycardie",
"code": "R00.0",
"confidence": "high",
"source": "llm_das",
"is_comorbidity_like": false,
"is_symptom_like": true,
"is_act_only": false,
"section_strength": 1,
"num_occurrences": 1,
"score": 2.0,
"score": -1.0,
"score_details": {
"section": 1,
"confidence": 3,
"confidence": 0,
"symptom_malus": -2
}
}
],
"debug_scores": {
"top1": 7.0,
"top2": 6.0,
"delta": 1.0,
"llm": true
"top1": 3.0,
"top2": -1.0,
"delta": 4.0
}
},
"quality_flags": {
"rag_status": "error",
"crh_only_mode": true
},
"diagnostics_associes": [
@@ -298,92 +179,9 @@
"cim10_suggestion": "R00.0",
"cim10_confidence": "medium",
"cim10_final": "R00.0",
"justification": "Tachycardie non précisée, correspondant à la description clinique et justifiée en tant que DAS dans le contexte clinique du patient.",
"raisonnement": "ANALYSE CLINIQUE :\nLa tachycardie est une accélération du rythme cardiaque au-delà des valeurs normales. Dans ce contexte, elle est identifiée comme un diagnostic associé significatif, suggérant qu'elle a contribué à la complexité de la prise en charge du patient.\n\nCODES CANDIDATS :\nR00.0, I47.2, R00.2, R00, R93.1, R94.3, O68.0, I47.1\n\nDISCRIMINATION :\nR00.0 (Tachycardie, sans précision) est le code le plus approprié car il correspond à la description clinique initiale. Les codes I47.1 et I47.2 sont trop spécifiques (supraventriculaire et ventriculaire) et ne sont pas précisés dans le diagnostic. R00.2 (Palpitations) est un symptôme et non un diagnostic. Les codes R93.1 et R94.3 concernent des résultats d'examens et non la tachycardie elle-même. O68.0 concerne la tachycardie fœtale et n'est pas applicable. Les codes I11.0 et I13.0 sont des cardiopathies et ne correspondent pas au diagnostic initial.\n\nREGLE PMSI :\nEn tant que DAS, le code doit refléter une morbidité associée qui a mobilisé des ressources supplémentaires pendant le séjour. La tachycardie, en présence d'autres comorbidités (hypertension, obésité, insuffisance rénale, hyperglycémie), justifie sa classification comme DAS.",
"sources_rag": [
{
"document": "cim10",
"page": 715,
"code": "R00.0",
"extrait": "R00.0 Tachycardie, sans précision\nRythme cardiaque rapide\nTachycardie :\n•sinoauriculaire SAI\n•sinusale SAI"
},
{
"document": "cim10",
"page": 413,
"code": "I47.2",
"extrait": "I47.2 Tachycardie ventriculaire"
},
{
"document": "cim10",
"page": 715,
"code": "R00.2",
"extrait": "R00.2 Palpitations\nPerception des battements cardiaques"
},
{
"document": "cim10",
"page": 68,
"code": "R00",
"extrait": "R00 Anomalies du rythme cardiaque"
},
{
"document": "cim10",
"page": 741,
"code": "R93.1",
"extrait": "R93.1 Résultats anormaux d'imagerie diagnostique du cœur et de la circulation coronaire\nÉchocardiogramme anormal SAI\nImage cardiaque anormale"
},
{
"document": "cim10",
"page": 742,
"code": "R94.3",
"extrait": "R94.3 Résultats anormaux d'explorations fonctionnelles cardiovasculaires\nAnomalies (de) :\n•électrocardiogramme [ECG]\n•épreuves électrophysiologiques intracardiaques\n•phonocardiogramme\n•vectocardiogram"
},
{
"document": "cim10",
"page": 628,
"code": "O68.0",
"extrait": "O68.0 Travail et accouchement compliqués d'une anomalie du rythme cardiaque du fœtus\nBradycardie\nIrrégularité du rythme cardiaque fœtale\nTachycardie\nÀ l'exclusion de :présence de méconium dans le liqu"
},
{
"document": "cim10",
"page": 400,
"code": "I11.0",
"extrait": "I11.0 Cardiopathie hypertensive, avec insuffisance cardiaque (congestive)\nInsuffisance cardiaque hypertensive"
},
{
"document": "cim10",
"page": 413,
"code": "I47.1",
"extrait": "I47.1 Tachycardie supraventriculaire\nTachycardie (paroxystique) :\n•atriale\n•auriculoventriculaire [AV]\n•SAI\n•par réentrée (intranodale) [TRIN]\n•jonctionnelle\n•nodale"
},
{
"document": "cim10",
"page": 400,
"code": "I13.0",
"extrait": "I13.0 Cardionéphropathie hypertensive, avec insuffisance cardiaque (congestive)"
}
],
"preuves_cliniques": [
{
"type": "clinique",
"element": "Diagnostic de tachycardie mentionné dans le dossier.",
"interpretation": "Confirmation du diagnostic."
},
{
"type": "biologie",
"element": "Glycémie élevée",
"interpretation": "L'hyperglycémie peut contribuer à la tachycardie."
},
{
"type": "biologie",
"element": "Leucocytes élevés",
"interpretation": "Peut indiquer une inflammation sous-jacente contribuant à la tachycardie."
},
{
"type": "clinique",
"element": "Obésité (IMC 33.462)",
"interpretation": "L'obésité est un facteur de risque de tachycardie."
}
],
"justification": "Symptôme rapporté lors du malaise la deuxième nuit postopératoire ayant justifié une investigation complémentaire (angioscanner) pour éliminer une complication thromboembolique.",
"sources_rag": [],
"preuves_cliniques": [],
"niveau_severite": "non_evalue",
"niveau_cma": 1,
"source": "llm_das",
@@ -395,52 +193,7 @@
{
"texte": "TDM abdominal",
"code_ccam_suggestion": "ZCQK002",
"ccam_confidence": "low",
"justification": "Aucun code CCAM n'est disponible dans les sources fournies pour coder un TDM abdominal. Il est nécessaire d'avoir accès à l'intégralité de la nomenclature CCAM pour identifier le code approprié.",
"raisonnement": "ANALYSE ACTE :\nL'acte décrit est un examen d'imagerie médicale de l'abdomen, plus précisément une tomodensitométrie (TDM).\n\nCODES CANDIDATS :\nAucun code CCAM fourni ne correspond directement à un TDM abdominal. Les codes fournis concernent des échographies abdominales ou des actes de chirurgie esthétique abdominale.\n\nDISCRIMINATION :\nAucun code CCAM n'est approprié car l'acte est une TDM et non une échographie. Les codes d'échographie ne peuvent pas être utilisés pour coder un TDM.",
"sources_rag": [
{
"document": "ccam",
"code": "ZCQM011",
"extrait": "ZCQM011 Échographie transcutanée de l'étage supérieur de l'abdomen et du petit bassin [pelvis] avec échographie-doppler des vaisseaux digestifs\nRegroupement: ADE\nTarif S1: 75.6€"
},
{
"document": "ccam",
"code": "ZCQM002",
"extrait": "ZCQM002 Échographie transcutanée de l'abdomen, avec échographie transcutanée du petit bassin [pelvis] et échographie-doppler des vaisseaux digestifs\nRegroupement: ADE\nTarif S1: 75.6€"
},
{
"document": "ccam",
"code": "QBFA013",
"extrait": "QBFA013 Dermolipectomie abdominale sans transposition de l'ombilic, avec lipoaspiration de l'abdomen\nRegroupement: ADC"
},
{
"document": "ccam",
"code": "ZCQM010",
"extrait": "ZCQM010 Échographie transcutanée de l'étage supérieur de l'abdomen et du petit bassin [pelvis]\nRegroupement: ADE\nTarif S1: 75.6€"
},
{
"document": "ccam",
"code": "ZCQM005",
"extrait": "ZCQM005 Échographie transcutanée de l'abdomen, avec échographie transcutanée du petit bassin [pelvis]\nRegroupement: ADE\nTarif S1: 75.6€"
},
{
"document": "cim10",
"page": 741,
"code": "R93.5",
"extrait": "R93.5 Résultats anormaux d'imagerie diagnostique d'autres parties de l'abdomen, y\ncompris l'espace rétropéritonéal"
},
{
"document": "ccam",
"code": "ZCQM001",
"extrait": "ZCQM001 Échographie transcutanée de l'abdomen, avec échographie-doppler des vaisseaux digestifs\nRegroupement: ADE\nTarif S1: 54.02€"
},
{
"document": "ccam",
"code": "QBFA011",
"extrait": "QBFA011 Dermolipectomie abdominale sans transposition de l'ombilic\nRegroupement: ADC"
}
],
"sources_rag": [],
"validite": "valide",
"alertes": []
}
@@ -452,13 +205,15 @@
"imagerie": [],
"complications": [],
"alertes_codage": [
"2 CMA probables détectées — impact potentiel sur le niveau de sévérité GHM",
"QUALITE DEGRADEE : erreur RAG — codage sans référentiels",
"CMA niveau 3 : 'Embolie pulmonaire' (I26.9) — sévérité severe, marqueurs : aigu",
"CMA niveau 3 : 'Embolie pulmonaire' (I26.9) — sévérité severe, marqueurs : aigu",
"QC: DAS R00.0 confiance high→medium — Bien que la tachycardie soit mentionnée, le contexte clinique (glycémie élevée, leucocytes élevés) ne justifie pas à lui seul un DAS. Il faut déterminer la cause de la tachycardie. Si elle est secondaire à une autre condition (ex: infection, déshydratation), elle doit être codée en tant que manifestation d'une autre maladie et non en DAS. Sans plus d'informations, il est difficile de déterminer la spécificité. Il faudrait rechercher des codes plus précis (ex: R00.1 - Tachycardie sinusale, R00.2 - Tachycardie ventriculaire, etc.) si l'information est disponible.",
"QC: L'absence de dossier clinique détaillé rend la validation difficile. Un dossier complet est indispensable pour un codage précis et justifiable.",
"QC: La justification de l'embolie pulmonaire est inexistante. Ce code doit être supprimé.",
"QC: La tachycardie est probablement une manifestation d'une autre condition et doit être codée en conséquence si possible. Un code DAS est justifié uniquement si la tachycardie est la principale raison de la consultation ou nécessite une prise en charge spécifique."
"QC: ⚠️ DOSSIER CLINIQUE VIDE : Impossible de valider sans documentation médicale. Exiger la transmission du dossier complet.",
"QC: ⚠️ ABSENCE DE PREUVE POUR LE DP : Codage d'une EP sans justification documentée = risque de fraude PMSI. Vérifier les résultats d'imagerie.",
"QC: ⚠️ JUSTIFICATION INCOMPLÈTE : La phrase sur R00.0 est tronquée (« pour éliminer une com »). Clarifier le contexte clinique exact.",
"QC: ⚠️ CONTEXTE POSTOPÉRATOIRE NON CODÉ : Quel est l'acte chirurgical ? Nécessaire pour évaluer la pertinence de l'EP comme complication.",
"QC: ⚠️ RISQUE DE CODAGE DÉFENSIF : L'angioscanner a-t-il confirmé ou EXCLU l'EP ? Cela change tout le codage.",
"VETOS[PDF]: FAIL (score=70)",
"VETO-02 [HARD] actes_ccam[0]: Acte ZCQK002 sans preuve exploitable"
],
"source_files": [],
"ghm_estimation": {
@@ -473,11 +228,53 @@
},
"controles_cpam": [],
"veto_report": {
"verdict": "PASS",
"score_contestabilite": 100,
"issues": []
"verdict": "FAIL",
"score_contestabilite": 70,
"issues": [
{
"veto": "VETO-02",
"severity": "HARD",
"where": "actes_ccam[0]",
"message": "Acte ZCQK002 sans preuve exploitable",
"citation": "Principe de preuve : tout diagnostic/acte doit être étayé par une trace dans le dossier médical (Guide Méthodologique MCO)"
}
]
},
"processing_time_s": 60.7,
"completude": {
"checks": [
{
"code": "I26.9",
"libelle": "Embolie pulmonaire",
"type_diag": "DP",
"items": [
{
"categorie": "imagerie",
"element": "Angioscanner thoracique",
"statut": "absent",
"importance": "obligatoire",
"impact_cpam": "Imagerie indispensable pour confirmer une EP"
},
{
"categorie": "biologie",
"element": "D-dimères",
"statut": "absent",
"importance": "recommande",
"impact_cpam": "D-dimères utiles si négatifs pour exclure, non suffisants seuls"
}
],
"score": 0,
"verdict": "indefendable",
"resume": "0/1 obligatoires, 0/1 recommandés"
}
],
"score_global": 0,
"verdict_global": "indefendable",
"documents_presents": [
"crh"
],
"documents_manquants": []
},
"processing_time_s": 10.71,
"metrics": {
"das_total": 1,
"das_active": 1,