You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
check_output_failure_text : le bandeau « generation non executee ... indisponible » passe le ratchet bloquant (faux negatif mesure) #24780
Le ratchet bloquant scripts/notebook_tools/check_output_failure_text.pyne voit pas un bandeau de repli très courant en français : la forme GENERATION NON EXECUTEE - stack <service> indisponible (...).
Deux raisons, dans le jeu de motifs actuel :
le motif doux DEGRADED_HINT_PATTERNS ne retient que non\s+disponible — la forme indisponible, avec son préfixe in, ne passe pas ;
le motif dur épinglé à l'instance est illustration indisponible — un seul libellé de service, pas la forme.
Résultat : une sortie de repli qui a remplacé un rendu passe le ratchet sans que rien ne rougisse.
Mesure (rejouée ici, sur la mutation)
Cellule source qui porte le bandeau : MyIA.AI.Notebooks/GenAI/Video/02-Advanced/02-5-LTX2-Audiovisual.ipynb, cellule 13, print(f"GENERATION NON EXECUTEE - stack ComfyUI indisponible ({...}).").
Mutation : la sortie de cette cellule est remplacée par le seul bandeau, tous les autres outputs du carnet étant vidés ; la base reste le carnet de main.
classe
sortie reelle du head PR
mutant (bandeau)
TOOL_FAILURE
0
0
DECLARED_FALLBACK
0
0
MACHINE_PATH
1
0
PROGRAM_LITERAL
0
0
La mutation ameliore le score : le bandeau fait disparaitre le chemin machine que la sortie reelle portait, et n'ajoute aucune classe. Un ratchet qui s'ameliore quand on remplace un rendu par un repli est aveugle au dommage qu'il existe pour voir.
Pourquoi cela compte
C.2 exige que le carnet committé porte la sortie reellement produite. Un carnet GenAI re-execute sur une machine ou le service est absent commite le bandeau a la place du rendu ; le garde qui existe pour le voir (#21816 a ajoute workflow execution failed, erreur generation image, illustration indisponible pour le meme dommage) laisse passer.
Precedent dans l'organe
Les trois motifs ComfyUI ont ete ajoutes avec des temoins : des chaines reellement vues dans des sorties commitees, et le self-test (_PATTERN_WITNESSES) verifie que chaque motif en attrape au moins un. C'est la regle du fichier : adding one without its witness is how a pattern set starts lying. Un motif ajoute ici doit donc etre accompagne de son temoin et d'un temoin negatif.
Criteres d'acceptation
la forme generation non executee / <service> indisponible est attrapee par une classe existante (TOOL_FAILURE ou DECLARED_FALLBACK) quand elle figure dans une sortie ;
le motif ajoute a un temoin dans _PATTERN_WITNESSES, et le self-test passe ;
un test porte le mutant ci-dessus et rend TOOL_FAILURE >= 1 ou DECLARED_FALLBACK >= 1 ;
temoin negatif : le motif ne fait rougir aucune sortie deja commitee sur main (le corpus contient des replis declarés legitimes — formes non configuree, non disponible — qui ne doivent pas devenir du bruit) ;
la forme francaise indisponible est couverte explicitement, ou l'ecart est trace et assume dans le corps du motif.
[INFO] L'implantation est dans #24785 (fix/24490-comfyui-banner-organ), un motif dur sur le marqueur GENERATION NON EXECUTEE, avec temoin, cas de --self-test et deux tests pytest.
Les cinq criteres sont traites dans le corps de la PR :
la forme est attrapee par une classe existante : TOOL_FAILURE (motif dur, hors DEGRADED_HINT_PATTERNS) ;
temoin dans _PATTERN_WITNESSES + --self-test : SELF-TEST OK ;
Activity
Fix(guard,#24780): le motif assume et trace l'ecart sur la forme fran…
jsboige commentedon Nov 5, 2026
[INFO] L'implantation est dans #24785 (
fix/24490-comfyui-banner-organ), un motif dur sur le marqueurGENERATION NON EXECUTEE, avec temoin, cas de--self-testet deux tests pytest.Les cinq criteres sont traites dans le corps de la PR :
TOOL_FAILURE(motif dur, horsDEGRADED_HINT_PATTERNS) ;_PATTERN_WITNESSES+--self-test:SELF-TEST OK;TOOL_FAILURE 0 → 10(le test pytest fige la forme du mutant) ;grep -rl= 0 ; sweep--all: aucune occurrence nouvelle) ;<service> indisponiblen'est pas couverte — l'ecart est trace et assume dans le corps du motif (le mot apparait dans 125 carnets, dont des replis declares legitimes). La voie complementaire, un jeton porte par le carnet, est suivie dans [Audit #17073] 02-5 LTX2 — la sortie de la cellule de parametres annonce un drapeau que la source commitee ne pose plus, et le bandeau de repli ne porte aucun marqueur #24786.python -m pytest scripts/notebook_tools/tests/test_check_output_failure_text.py -q: 67 passed.