# TAXONOMIE_ERREURS.md — Expria V2 > **Document de référence — Version 1.0** > Taxonomie fermée des erreurs détectables en expression écrite TCF Canada. > Utilisée par le prompt maître pour nommer les erreurs de façon stable et agrégeable. > Mise à jour après observation de nouveaux patterns en production. > > **Principe :** DeepSeek doit obligatoirement choisir un code dans cette liste pour chaque erreur identifiée. > Si l'erreur ne correspond à aucun code existant, DeepSeek utilise le code `autre` du critère concerné > et fournit une description textuelle. Ces occurrences sont remontées pour enrichissement de la taxonomie. --- ## Structure d'une erreur dans le rapport Chaque erreur retournée par le prompt maître doit respecter ce format : ```json { "code": "virgule_exces", "critere": "competence_grammaticale", "description": "description libre si code=autre, null sinon" } ``` --- ## Critère 1 — Adéquation à la tâche et au registre `critere: "adequation_tache"` ### Contenu | Code | Description | |---|---| | `hors_sujet_total` | La production ne répond pas à la consigne | | `hors_sujet_partiel` | Un ou plusieurs points de la consigne sont ignorés | | `information_manquante` | Une information demandée explicitement dans la consigne est absente | | `enonce_copie` | Le candidat recopie l'énoncé au lieu de le reformuler | ### Longueur | Code | Description | |---|---| | `longueur_insuffisante` | Sous le minimum de mots requis (score plafonné automatiquement) | | `longueur_excessive` | Au-dessus du maximum de mots requis | ### Format | Code | Description | |---|---| | `format_non_respecte` | Type de texte non respecté (mail sans objet, blog sans accroche) | | `salutation_absente` | Pas de formule d'appel | | `cloture_absente` | Pas de formule de clôture ou de signature | | `structure_absente` | Texte bloc sans paragraphes | ### Registre | Code | Description | |---|---| | `registre_trop_formel` | Registre soutenu alors que familier requis | | `registre_trop_familier` | Registre familier alors que formel requis | | `abreviations_sms` | Usage de "bjr", "svp", "stp" hors contexte très informel | | `tutoiement_inadequat` | Tutoiement quand vouvoiement requis, ou inversement | ### Non couvert | Code | Description | |---|---| | `autre` | Erreur d'adéquation non couverte par la taxonomie — **description obligatoire** | --- ## Critère 2 — Cohérence et cohésion du discours `critere: "coherence_cohesion"` ### Structure | Code | Description | |---|---| | `introduction_absente` | Pas d'entrée en matière ou d'accroche | | `conclusion_absente` | Pas de clôture ou de phrase de synthèse | | `paragraphes_absents` | Texte bloc sans découpage en paragraphes | | `progression_illogique` | Les idées ne s'enchaînent pas dans un ordre logique | ### Connecteurs | Code | Description | |---|---| | `connecteurs_absents` | Phrases juxtaposées sans lien logique | | `connecteurs_repetes` | Même connecteur utilisé en boucle (ex : "et" x5) | | `connecteurs_inadequats` | Connecteur utilisé à contresens (ex : "donc" pour introduire une cause) | | `connecteurs_insuffisants` | Connecteurs trop simples pour le niveau visé (uniquement "mais", "et", "car") | ### Cohérence thématique | Code | Description | |---|---| | `idee_non_developpee` | Idée introduite puis abandonnée sans explication | | `repetition_idee` | Même idée reformulée plusieurs fois sans apport nouveau | | `contradiction_interne` | Deux affirmations contradictoires dans le même texte | | `hors_propos` | Phrase ou paragraphe sans lien avec le reste du texte | ### Cohésion référentielle | Code | Description | |---|---| | `pronoms_ambigus` | "il", "elle", "ils" sans antécédent clair | | `substitution_absente` | Même mot répété au lieu d'utiliser un pronom ou un synonyme | | `rupture_temporelle` | Mélange incohérent des temps dans le récit | ### Non couvert | Code | Description | |---|---| | `autre` | Erreur de cohérence/cohésion non couverte par la taxonomie — **description obligatoire** | --- ## Critère 3 — Compétence lexicale `critere: "competence_lexicale"` ### Étendue du vocabulaire | Code | Description | |---|---| | `vocabulaire_basique` | Mots trop simples pour le niveau visé (ex : "bien" au lieu de "remarquable") | | `vocabulaire_insuffisant` | Manque de mots pour exprimer une idée, recours à des périphrases maladroites | | `registre_lexical_inadequat` | Mots familiers dans un contexte formel, ou inversement | ### Précision | Code | Description | |---|---| | `mot_imprecis` | Mot approximatif (ex : "faire" au lieu de "effectuer", "réaliser", "accomplir") | | `contresens_lexical` | Mot utilisé dans un sens erroné | | `anglicisme` | Mot anglais utilisé à la place du mot français (ex : "checker" au lieu de "vérifier") | | `calque_syntaxique` | Construction calquée sur une autre langue | ### Variété | Code | Description | |---|---| | `repetition_lexicale` | Même mot répété excessivement dans le texte | | `synonymes_absents` | Absence de variation lexicale sur un même champ sémantique | | `expressions_figees_absentes` | Absence d'expressions idiomatiques attendues au niveau visé | ### Orthographe lexicale | Code | Description | |---|---| | `faute_orthographe_courante` | Erreur sur un mot courant (ex : "apelle" au lieu de "appelle") | | `confusion_homophones` | "sa"/"ça", "a"/"à", "ou"/"où", "ce"/"se", "on"/"ont" | | `majuscules_incorrectes` | Majuscule absente ou mal placée | ### Non couvert | Code | Description | |---|---| | `autre` | Erreur lexicale non couverte par la taxonomie — **description obligatoire** | --- ## Critère 4 — Compétence grammaticale `critere: "competence_grammaticale"` ### Accords | Code | Description | |---|---| | `accord_sujet_verbe` | "les enfants joue" au lieu de "jouent" | | `accord_adjectif_nom` | "une révolution positif" au lieu de "positive" | | `accord_participe_passe` | "elle est parti" au lieu de "partie" | | `accord_determinant_nom` | "un table" au lieu de "une table" | ### Conjugaison | Code | Description | |---|---| | `temps_verbal_inadequat` | Présent au lieu de passé composé, futur au lieu de conditionnel | | `subjonctif_absent` | Indicatif utilisé là où le subjonctif est requis | | `subjonctif_incorrect` | Subjonctif utilisé mais mal formé | | `conditionnel_absent` | Conditionnel requis mais absent (politesse, hypothèse) | | `concordance_temps` | Incohérence des temps dans un même passage | ### Syntaxe | Code | Description | |---|---| | `phrase_incomplete` | Phrase sans verbe conjugué ou sans sujet | | `phrase_trop_longue` | Phrase surchargée, incompréhensible | | `ordre_mots_incorrect` | "je ne sais pas où est-il" au lieu de "où il est" | | `subordination_absente` | Phrases simples juxtaposées là où une subordonnée est attendue | | `subordination_incorrecte` | Connecteur de subordination mal utilisé | ### Ponctuation | Code | Description | |---|---| | `virgule_exces` | Virgules à outrance qui coupent le flux naturel | | `virgule_absence` | Absence de virgule là où elle est requise | | `point_absent` | Phrases non délimitées, texte continu sans point | | `ponctuation_incorrecte` | Usage erroné de ";" ":" "!" "?" | ### Prépositions | Code | Description | |---|---| | `preposition_absente` | "je pense que c'est important aller" au lieu de "d'aller" | | `preposition_incorrecte` | "je rêve à partir" au lieu de "de partir" | | `preposition_superflue` | Préposition ajoutée inutilement | ### Morphologie | Code | Description | |---|---| | `genre_incorrect` | "la problème" au lieu de "le problème" | | `nombre_incorrect` | Pluriel absent ou mal formé | | `negation_incomplete` | "je sais pas" au lieu de "je ne sais pas" | ### Non couvert | Code | Description | |---|---| | `autre` | Erreur grammaticale non couverte par la taxonomie — **description obligatoire** | --- ## Règles d'utilisation pour DeepSeek 1. **Chaque erreur identifiée dans un rapport doit avoir un code de cette liste.** 2. **Un seul code par erreur** — choisir le plus précis. 3. **Le code `autre` est autorisé** mais exige une `description` textuelle non nulle. 4. **Les codes `autre` observés en production** sont remontés à Hermann pour décision d'intégration. 5. **La détection de patterns** (analyse multi-productions) agrège les codes — un pattern est confirmé si le même code apparaît dans ≥ 3 productions sur les 5 dernières. --- ## Procédure d'enrichissement Quand un code `autre` revient ≥ 3 fois en production : 1. Hermann identifie le pattern dans les logs 2. Un nouveau code est proposé et validé 3. `TAXONOMIE_ERREURS.md` est mis à jour (bump de version) 4. Le prompt maître est mis à jour dans le même commit 5. Les anciennes entrées `autre` concernées sont reclassifiées si possible --- ## Index des codes (référence rapide) | Code | Critère | |---|---| | `hors_sujet_total` | adequation_tache | | `hors_sujet_partiel` | adequation_tache | | `information_manquante` | adequation_tache | | `enonce_copie` | adequation_tache | | `longueur_insuffisante` | adequation_tache | | `longueur_excessive` | adequation_tache | | `format_non_respecte` | adequation_tache | | `salutation_absente` | adequation_tache | | `cloture_absente` | adequation_tache | | `structure_absente` | adequation_tache | | `registre_trop_formel` | adequation_tache | | `registre_trop_familier` | adequation_tache | | `abreviations_sms` | adequation_tache | | `tutoiement_inadequat` | adequation_tache | | `introduction_absente` | coherence_cohesion | | `conclusion_absente` | coherence_cohesion | | `paragraphes_absents` | coherence_cohesion | | `progression_illogique` | coherence_cohesion | | `connecteurs_absents` | coherence_cohesion | | `connecteurs_repetes` | coherence_cohesion | | `connecteurs_inadequats` | coherence_cohesion | | `connecteurs_insuffisants` | coherence_cohesion | | `idee_non_developpee` | coherence_cohesion | | `repetition_idee` | coherence_cohesion | | `contradiction_interne` | coherence_cohesion | | `hors_propos` | coherence_cohesion | | `pronoms_ambigus` | coherence_cohesion | | `substitution_absente` | coherence_cohesion | | `rupture_temporelle` | coherence_cohesion | | `vocabulaire_basique` | competence_lexicale | | `vocabulaire_insuffisant` | competence_lexicale | | `registre_lexical_inadequat` | competence_lexicale | | `mot_imprecis` | competence_lexicale | | `contresens_lexical` | competence_lexicale | | `anglicisme` | competence_lexicale | | `calque_syntaxique` | competence_lexicale | | `repetition_lexicale` | competence_lexicale | | `synonymes_absents` | competence_lexicale | | `expressions_figees_absentes` | competence_lexicale | | `faute_orthographe_courante` | competence_lexicale | | `confusion_homophones` | competence_lexicale | | `majuscules_incorrectes` | competence_lexicale | | `accord_sujet_verbe` | competence_grammaticale | | `accord_adjectif_nom` | competence_grammaticale | | `accord_participe_passe` | competence_grammaticale | | `accord_determinant_nom` | competence_grammaticale | | `temps_verbal_inadequat` | competence_grammaticale | | `subjonctif_absent` | competence_grammaticale | | `subjonctif_incorrect` | competence_grammaticale | | `conditionnel_absent` | competence_grammaticale | | `concordance_temps` | competence_grammaticale | | `phrase_incomplete` | competence_grammaticale | | `phrase_trop_longue` | competence_grammaticale | | `ordre_mots_incorrect` | competence_grammaticale | | `subordination_absente` | competence_grammaticale | | `subordination_incorrecte` | competence_grammaticale | | `virgule_exces` | competence_grammaticale | | `virgule_absence` | competence_grammaticale | | `point_absent` | competence_grammaticale | | `ponctuation_incorrecte` | competence_grammaticale | | `preposition_absente` | competence_grammaticale | | `preposition_incorrecte` | competence_grammaticale | | `preposition_superflue` | competence_grammaticale | | `genre_incorrect` | competence_grammaticale | | `nombre_incorrect` | competence_grammaticale | | `negation_incomplete` | competence_grammaticale | --- ## Historique de ce document | Version | Date | Changements | |---|---|---| | 1.0 | 2026-04-22 | Création initiale — 4 critères, 63 codes + 4 codes `autre` |