Repository navigation
fix(guard,#17623): deaccent advisory — repli lexical ACCENT_PAIRS (notebook entierement desaccentue) - #17643
Merged
Conversation
…r le notebook entierement desaccentue Faux negatif structurel : le controle positif interne (jumeau accentue dans le meme notebook) est aveugle a un notebook dont la prose est ENTIEREMENT desaccentee — aucun jumeau n'existe, le pire cas rendait 0. Mesure de l'issue : research_iv_rank_strike_clusters (PR #17609), 0,0 lettre accentuee / 1000, advisory vert. Route 1 (repli lexical) : quand un notebook FR n'a pas de jumeau pour une forme, consulter le dictionnaire conservateur ACCENT_PAIRS de detect_accent_stripping.py (import, jamais copie) et rapporter dans un bucket distinct `lexicon`. Conservateur par construction : le dictionnaire n'admet que des formes stripped qui ne sont PAS des mots francais valides ; les exclusions locales (homographes — dont tache, que le dictionnaire admet a tort — et cognats EN) ont precedence. - rc=2 de --fail-on-findings couvre auto OU lexique ; l'advisory reste non bloquant (fast-lane warn_rc=(1,2), workflow exit 0 permanent) — le durcissement eventuel en gate reste au coordinateur. - Temoin live : tete #17609 → 0 auto / 52 lex. Le 3.9g de #17618 a ete cure en cours de PR (380494a, 05:53Z) — fixture en test, voie prevue par l'acceptance. - Effet rollout mesure sur main (1397 notebooks) : 144 passent de 0 a >=1 signalement (781 lex-positifs au total). Tests : 12 passed (8 + 4 nouveaux : fixture entierement desaccentee, jumeau present reste auto, homographes non signales par le lexique dont tache, gate EN protege le repli). Familie : 151 passed. YAML valide. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
5 tasks
Contributor
Owner
Author
|
[ADJOINT PREFLIGHT] |
This was referenced Sep 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Grain: MED/guard -- lane myia-po-2026:CoursIA -- prev: MED/guard #17641
Summary
Faux négatif structurel de l'organe câblé
detect_markdown_deaccent.py: le contrôle positif interne (jumeau accentué dans le même notebook) est aveugle à un notebook dont la prose est entièrement désaccentuée — aucun jumeau n'existe, le pire cas rendait0. Mesure de l'issue :research_iv_rank_strike_clusters(PR #17609), 0,0 lettre accentuée / 1000 en markdown, tous checks verts.Voie 1 retenue (repli lexical), justification : conservateur par construction (le dictionnaire
ACCENT_PAIRSdedetect_accent_stripping.pyn'admet que des formes stripped qui ne sont pas des mots français valides — les homographes qui faisaient les 96 % de FP du scan historique sont exclus d'office), pas de seuil à calibrer, gate EN inchangée. Import, jamais copie (organ-first).Acceptance (les 5 cases)
0 auto / 52 lex(mesuré sur le head réel, fetch éphémère). Le 3.9g de feat(compression,#16060): 3.9g — comparatif capstone Bloc A vs Bloc B #17618 a été curé en cours de PR (380494ae6d, « Fix: feat(compression,#16060): 3.9g — comparatif capstone Bloc A vs Bloc B #17618 re-accentuation de la prose markdown du 3.9g », 05:53Z — postérieur à la mesure de l'issue : detect_accent_stripping rend 0 hits sur le head actuel) → fixture qui reproduit la prose désaccentuée (voie explicitement prévue par l'acceptance), signalée.test_english_notebook_gate_skips_lexicon— le gatelanguage=enprotège le repli exactement comme le contrôle jumeau.des/sur/mesure/coteabsents du dictionnaire ;tachey figure à tort (tache/tâche est un homographe légitime listé dansHOMOGRAPH_EXCLUSIONS) → la précédence des exclusions locales sur le lexique est implémentée et pinnée par test (l'acceptance citetacheexplicitement).warn_rc=(1,2)+blocking=False(TRANCHE6) et workflowexit 0permanent — inchangés. Le rc=2 de--fail-on-findingscouvre désormais auto OU lexique : le signal devient visible en CI (label + notice) sans jamais rougir. Durcir en gate = décision coordinateur.Compatibilité consommateurs (vérifiée)
fast_lane_registry.pyTRANCHE6 :warn_rc=(1,2),blocking=False— sémantique inchangée.restore_accents_canonical.py:find_candidates(shadow).get("auto")— clé inchangée.Preuves
52 TOTAL (0 auto / 0 hom / 0 cog / 52 lex) [fr].Perimeter
3 fichiers : le détecteur (+69/−21), ses tests (+59/−0), le wording du workflow advisory (3 chaînes + 1 commentaire). Aucun notebook, aucun autre organe.
Closes #17623
🤖 Generated with Claude Code