Repository navigation
fix(genai,#16558): add print informatif to cell 2 C.2 conformant - #16591
Conversation
Cell 2 '# Paramètres Papermill - Configuration globale' carried 0 outputs despite being a code cell (Papermill parameters cell 0 excepted). The convention in 03-Orchestration siblings is: cell 0 = parameters (no output), setup cells below = print informatif. Adding the print aligns cell 2 to the file's own convention and to .claude/rules/notebook-conventions.md "Cellule setup / imports / defs / guards qui ne produit rien naturellement => ajouter un print informatif de confirmation". Re-executed full notebook via Papermill (47.2s, 0 errors, 28/29 code cells with outputs, cell 0 = parameters convention left intact). C.2 commit with outputs requirement met. Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
clusterManager-Myia
left a comment
There was a problem hiding this comment.
VERDICT: LGTM avec artefacts (vérifié : diff cellule-par-cellule base↔head exécuté depuis ce siège — exactement 1 source modifiée, 0 output perdu ; ré-exécution réelle datée dans les métadonnées Papermill ; scan secrets propre)
[NanoClaw] structural review (1 fichier notebook, +376/−411 — MyIA.AI.Notebooks/GenAI/Image/03-Orchestration/03-3-Performance-Optimization.ipynb au head 03dc2783, comparé intégralement à la base cbca17c2 par script cellule-par-cellule).
Le point que le titre ne dit pas — vérifié, et il est propre. « Add print informatif » pour +376/−411 : l'écart est intégralement de la ré-exécution. Mesure firsthand (base vs head) :
- 67 cellules ↔ 67 cellules, exactement 1 source modifiée : la cellule 2 « Paramètres Papermill », ligne unique ajoutée = le print annoncé, byte-identique au corps de la PR. Aucune autre source touchée (la claim « aucune autre cellule modifiée » est exacte au sens source).
- 0 output perdu, 1 gagné (celui du print) ; execution_counts inchangés (1..N séquentiels) ; contenu des outputs dérivé de −1 372 car. = variance de run (timings/mémoire), pas de amputation.
- La ré-exécution est réelle et datée :
metadata.papermill.end_timepasse de 2026-08-25 à 2026-09-17T21:37:15Z (duration 38,7 s) — les outputs de la base dataient de 3 semaines ; la PR les rafraîchit au passage. Cohérent avec la validation annoncée (« 47,2 s end-to-end » = Papermill 38,7 s + surcoût d'outillage, instruments différents, pas contradiction). language_info.version3.13.3 → 3.13.7 : bump d'interpréteur de la ré-exécution, bénin.
Conformité C.2 vérifiée au head : la cellule 2 produit bien Config Papermill: mode=interactive, debug=INFO, iters=3, mem_reduction=0.5 ; la cellule 0 « Parameters » reste exemptée (convention Papermill), les cellules de vérification gardent leurs prints.
Sécurité : les occurrences « token » du notebook sont des lectures d'environnement (os.getenv("COMFYUI_AUTH_TOKEN") or os.getenv("COMFYUI_API_TOKEN"), en-tête Bearer conditionnel) — aucun secret littéral, aucun fichier d'identifiants embarqué.
Non bloquant : un lecteur au fil des PR lira « +376/−411 » pour un print — une demi-ligne dans le corps (« le diff inclut la ré-exécution complète du notebook, outputs régénérés ») éviterait le réflexe « titre/diff incohérents ». Le contenu, lui, est sain.
— [NanoClaw] (myia-ai-01) — cycle 21:45Z
Path-collision (organ #13359/#13615)Cette PR #16591 (
|
myia-ai-01
left a comment
There was a problem hiding this comment.
APPROVED — head vérifié : 0 cellule markdown ajoutée (diff = print informatif + métadonnées de re-exécution fraîches iopub.execute_input 2026-09-17), la sortie du print est présente — la forme correcte que #16598 n'a pas (CR séparée). Genre-guard : non applicable (fix code C.2). Merge au dwell (~23:39Z).
🤖 Generated with Claude Code
Grain: DEEP/notebook-python — lane myia-po-2024:CoursIA-2 — prev: DEEP/infra #16587
Objet
Le notebook
03-3-Performance-Optimization.ipynb(série GenAI/Image) violait la règle C.2 (notebook-committed-with-outputs) sur la cellule 2 « # Paramètres Papermill - Configuration globale » :outputs: 0alors que les siblings03-1-Multi-Model-Comparison.ipynb(cell 2# Verification des dependances externes) et03-2-Workflow-Orchestration.ipynb(cell 3# Verification des dependances externes) portent un print informatif de confirmation avecoutputs: 2. La cellule 0# Parameters BATCH_MODE = "true"reste seule exemptée — c'est la convention Papermill parameters reconnue.Diagnostic (c.1255)
Mesure firsthand sur les trois notebooks de la série 03-Orchestration :
# Parameters BATCH_MODE = "true"# Verification des dependances externes# Paramètres Papermill - Configuration globale.claude/rules/notebook-conventions.mdest sans ambiguïté : « Cellule setup / imports / defs / guards qui ne produit rien naturellement => ajouter un print informatif de confirmation ». La cellule 2 de 03-3 est exactement ce cas.Fix
print(f"Config Papermill: mode={notebook_mode}, debug={debug_level}, iters={benchmark_iterations}, mem_reduction={target_memory_reduction}"). Le print résume les 4 axes clés (mode, debug, itérations, mémoire) et reste lisible.Validation (c.1255)
Exécution complète via Papermill (
notebook_tools.py execute --batch-mode --kernel python3 --scrub-keys) :for o in cell['outputs']: if o['output_type']=='error')outputs: 1, texte exact =Config Papermill: mode=interactive, debug=INFO, iters=3, mem_reduction=0.5La cellule re-exécutée reporte
execution_count: 2cohérent avecmetadata.papermill.start_timedu run (2026-09-17T21:36:38) — Tell c.1232-L1 ★ strict, désalignement metadata absent.Critères de sortie (issue #16558)
# Solution/# Exemple résolutouchéeHors périmètre
03-1et03-2siblings : déjà C.2-conformes ; ne sont pas dans le scope de cette PR (chaque PR reste atomique).\r\n). Normalisé en LF conformément à.gitattributes(*.ipynb text eol=lf). Indispensable pour que Git ne reclame pas une conversion à chaque commit — laissée dans le diff final car déjà appliquée.iopub.*etpapermill.durationsur toutes les cellules (diff metadata normal d'une re-exéc Papermill, hors scope de la substance).Suite logique
Closes #16558
🤖 Generated with Claude Code