Repository navigation
fix(sweep-15719): échapper les pipes des code spans — 10e_LLamaSharp (relais grain g1-genai) - #16184
Conversation
Corrige 4 défauts scan_md_table_syntax (NO_BLANK_BEFORE/AFTER) en échappant les pipes nues dans des code spans inline : float|None -> float\|None, MEME_SESSION\|INTERDITE. Les autres fichiers targetPath ont des NOOP justifiés (faux positifs connus : prose mathématique, boîtes ASCII, || JS dans code). Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
|
Concern: Encore une PR de l'épaisseur d'une feuille de papier à cigarettes. Est-ce que vraiment sur le geste déposé il n'y avait plus qu'un fichier à corriger? |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
|
Grain tag obligatoire (#10045, bloquant).
Pour passer ce gate, le body doit porter en tete une ligne de la forme : Le |
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
|
Réponse mesurée, et la réponse est en deux morceaux : vous aviez raison, mais pas sur le diff — sur le body. 1. « Est-ce qu'il n'y avait plus qu'un fichier à corriger ? »Dans le domaine GenAI : oui, effectivement. Dans le corpus : non, loin de là. Re-scan frais sur
Les 8 restants en GenAI se répartissent ainsi : 2 ( Donc la minceur du diff n'était pas le défaut. Le « 222 » du titre de #15719 est d'ailleurs le compte brut d'origine, que le body de l'issue désavoue lui-même — il ne mesure plus l'état du dépôt depuis longtemps. 2. Ce qui était réellement fautif — et un garde l'avait ditLe body. Il tabulait six fichiers pour un diff qui en touche un, en mêlant fichiers inspectés et fichiers touchés. Le garde
PR ouverte 16:24:46Z → votre Concern 16:26:13Z → garde rouge 16:33:07Z. Vous et l'organe avez vu la même chose. Le body portait aussi une affirmation fausse : les deux README Audio y étaient donnés à « 0 / rien à faire ». C'était mesuré sur la base périmée du worktree de relais ; sur 3. Ce que j'ai vérifié en faveur de la PRLa PR annonçait « findings → 0 » sur son fichier. J'ai d'abord cru l'inverse : le scan corpus ne montrait aucun
L'annonce était juste, et le mécanisme mérite d'être retenu pour la suite du sweep : la ligne de prose contenant 4. Ce que j'ai corrigéBody réécrit : périmètre effectif ramené au fichier réel, marqueur Le tag |
|
Grain tag obligatoire (#10045, bloquant).
Pour passer ce gate, le body doit porter en tete une ligne de la forme : Le |
|
G-VAR-2 light cap reached (advisory, non bloquant). |
|
G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
G-VAR-2 plafonne a max(1, grains_mergees_du_jour // 3) LIGHT par lane et par jour, toutes categories LIGHT confondues -- un RATIO, pas un plafond plat ; le cap calcule du jour est dans le tally ci-dessus. G-VAR-3 interdit deux genres LIGHT consecutifs. Les signaux ci-dessus rendent le fait VISIBLE (labels |
|
aucun genre mots-clé fermant dans le body ni les commits ; prev: accepté(s) : #16187 Run vert du garde : ce commentaire bloquant est obsolète. Réécrit en place (#15372) plutôt que laissé affiché faux — le marqueur reste porté pour le prochain upsert. Historique : runs |
clusterManager-Myia
left a comment
There was a problem hiding this comment.
Approval — exact head 375f54adb2a37fd873f07c8cb7b920030f0bc72a
I independently reread the complete PR body, all comments, reviews, inline comments and threads, the single commit, complete notebook diff, closing references, and latest occurrence of every exact-head check.
Verified:
- the effective scope is one notebook and the diff is surgical: four prose-only pipe escapes plus the final newline, with no code-cell or output mutation;
- the corrected body now matches the effective file list and documents the fresh in-place scan from four findings on the base to zero on this head;
- the earlier grain-tag, perimeter, and
prev:failures are historical body iterations; the latest Always-on guards, perimeter guard, and PR gate are successful after the last body edit; closingIssuesReferencesis empty, so this delivery does not close the parent sweep;- there is no existing review, inline comment, unresolved thread, or current-head changes request;
- the owner concern about the narrow scope was answered with a fresh corpus scan and explicit residual/deconfliction evidence.
The lane-level variation notices are advisory and the bot explicitly classifies this PR as content that must not be held for that signal. No blocking finding remains on this head.
Résumé
Relais du résidu du grain Vibe
g1-genai(sweep #15719, contrat scanner md-table).Cette PR échappe les pipes nus (
\|) des code spans en prose des cellules 19 et 21 de10e_LLamaSharp_DotNet_BakeOff.ipynb. Diff chirurgical +5/−5 sur un seul fichier, aucune re-sérialisation du notebook.Périmètre effectif — un fichier, et un seul
MyIA.AI.Notebooks/GenAI/Texte/10e_LLamaSharp_DotNet_BakeOff.ipynbAucun autre fichier n'est modifié. La version précédente de ce body portait un tableau de six lignes mêlant fichiers inspectés et fichiers touchés : le garde
perimeterl'a lu comme une assertion de périmètre contredisant la liste effective (gh pr view 16184 --json files, #11268), et il avait raison. Corrigé ici.Effet mesuré : 4 findings → 0
Scan en place, au chemin réel, aux deux révisions (
scan_md_table_syntax.py --jsonsur le seul fichier) :origin/main(981d38ac98)NO_BLANK_BEFOREcell 18 L12 ·NO_BLANK_AFTERcell 18 L13 ·NO_BLANK_BEFOREcell 20 L12 ·NO_BLANK_AFTERcell 20 L13375f54adb2)Mécanisme, qui n'est pas évident et mérite d'être noté pour la suite du sweep : aucun de ces 4 findings n'est un
CODE_SPAN_PIPE, et pourtant ce sont bien les deux pipes nus qui les causaient. La ligne de prose contenant`{"relu": float|None, ...}`était reconnue comme ligne de table, ce qui faisait flaguer ses voisines comme fusionnant avec un bloc de table fantôme. Échapper les pipes dissout la table fantôme et les 4 findings avec elle.Conséquence de méthode : un finding
CODE_SPAN_PIPEpeut en masquer plusieurs autres en aval, et le compte brut du scanner sur-estime le nombre de causes distinctes. Ici, 2 échappements réparent 4 findings.FINAL_RESIDUAL — le résidu, chiffré
Le contrat de #15719 fixe un plancher de 10 findings confirmés par fournée, avec une exception : « résidu final : moins de 10 défauts confirmés encore libres après re-scan frais et déconfliction ; le body chiffre le résidu ». Cette PR relève de cette exception, et voici la mesure qui l'établit.
Re-scan frais —
origin/main981d38ac98,scan_md_table_syntax.py --json MyIA.AI.Notebooks docs, 2576 fichiers, 0 erreur de parse :CODE_SPAN_PIPENO_BLANK_BEFORECOL_MISMATCHNO_BLANK_AFTERORPHAN_TABLE_ROWNO_SEPMATH_SPAN_PIPELe « 222 » du titre de #15719 est le compte brut d'origine, que le body de l'issue désavoue lui-même (« ce total brut mélange des défauts réels avec des faux positifs récurrents »). Aucun fichier du corpus ne porte ≥ 10 findings : une fournée conforme au plancher est nécessairement multi-fichiers, et aucun fichier seul ne peut l'atteindre.
Déconfliction du domaine GenAI — 12 findings / 6 fichiers avant cette PR, 8 après, dont 0 défaut confirmé libre :
GenAI/Audio/README.mdL96COL_MISMATCH02-7-YuE2-Song-Generation, notebook que #16102 ajouteGenAI/Audio/02-Advanced/README.mdL28COL_MISMATCHGenAI/FineTuning/FT-04-RLHF-DPO.ipynbcell 12 L20ORPHAN_TABLE_ROWπ*(y|x): pipe de conditionnement mathématique en prose.../03-assistant-pro/presentations/structure-presentation.mdL41, L146NO_SEP.../05-projets-avances/integration-outils/bonnes-pratiques.mdL792-793, L838NO_BLANK_*, 1NO_SEPCorrection d'une affirmation fausse du body précédent : il tabulait les deux README Audio à « 0 / rien à faire ». C'était mesuré sur la base périmée du worktree de relais. Sur
origin/maincourant ils portent 1COL_MISMATCHchacun — et ils ne sont pas à reprendre ici, puisqu'ils relèvent de #16102.Les 6 findings FP ne se « réparent » pas dans les notebooks : #15719 exige qu'ils soient supprimés à la source du scanner par tests positifs/négatifs, pas par ajout de headers inventés. Ils sont donc hors du travail de fournée par construction.
Historique du relais
Le worktree
CoursIA-vibe/g1-genaiportait 4 commits sur une base périmée. Vérification byte-level :c9c4ceb8b(SheetSage2 + structure-presentation) et8cf9b3e7c(newline SheetSage2) : déjà dansmain, contenu identique.42af9095b(10e_LLamaSharp) : jamais livré — cherry-piqué surorigin/maincomme375f54adb.Relais effectué par l'executor po-2025 (lane Mistral Vibe, mandat budget user 10/09) ; PR reprise par
myia-ai-01faute de tagGrain:(PR orpheline).See #15719
Grain: LIGHT/genai -- lane myia-ai-01:CoursIA -- prev: MED/tooling #16187
🤖 Generated with Claude Code