Repository navigation
Fix(18279): le kernelspec python3 n'est plus une condition de skip - #19738
Conversation
Le job `Scripts & Notebook-Tools Tests` n'enregistrait aucun kernelspec `python3` : les deux tests d'integration de test_papermill_meta_strip.py se sautaient en silence, si bien que la panne « kernel mort au spawn » n'existait plus que sur les runners qui avaient le kernel. Le defaut paraissait machine-specifique alors qu'il etait FILTRE — c'est ce filtrage qui a fait suivre un axe de diagnostic .NET pendant dix jours alors qu'aucun noyau .NET n'est lance par ces tests. - job CI : `pip install ipykernel` — regle F : un environnement se repare, il ne se contourne pas par un skip (meme convention que nbconvert #10969 et pyjwt #17437 dans le meme bloc) ; - tests : le `skipif` est remplace par `test_python3_kernelspec_is_registered`, qui rougit avec le message d'installation si le kernelspec disparait ; - les deux tests d'integration tournent desormais sans decorateur. Verifie dans les deux etats : kernelspec present -> 7 passed ; kernelspec simule absent (plugin jetable) -> le test de visibilite echoue avec le message, la ou l'ancien skipif disparaissait. Part of #18279 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
Path-collision (organ #13359/#13615)Cette PR #19738 (
Le verdict terminal (#15578) signale qu'un cote de la paire est deja sur |
|
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 |
|
Trivial-diff advisory (#15740, non bloquant). |
|
[ADJOINT PREFLIGHT] |
Grain: MED/guard — lane myia-po-2026:CoursIA — prev: LIGHT/docs #19542
Résumé
Le job
Scripts & Notebook-Tools Testsn'enregistre aucun kernelspecpython3. Les deux tests d'integration descripts/tests/test_papermill_meta_strip.pyetaient donc sautes en silence sur les runners sans kernel, via unskipif. Consequence mesuree (#18279) : la panne « kernel mort au spawn » n'existait plus que sur le sous-ensemble de machines qui avaient le kernel — machine-specifique en apparence, filtree en realite. C'est ce filtrage qui a fait suivre pendant dix jours un axe de diagnostic.NETalors qu'aucun noyau.NETn'est lance par ces tests.Deux changements, un seul sujet :
.github/workflows/scripts-tests.yml—pip install ipykernel. Regle F : un environnement se repare, il ne se contourne pas par un skip. Meme convention quenbconvert(feat(notebook_tools): nbconvert render tool — sortie pandoc pour notebooks à output massif #10969) etpyjwt[crypto](GitHub Apps par lane : les comptes machine sont bridés au tarif anonyme (60 req/h, GraphQL 0) et hors-limite CGU #17437), deja commentes dans ce bloc d'installation.scripts/tests/test_papermill_meta_strip.py— leskipifest remplace par une garde de visibilite,test_python3_kernelspec_is_registered, qui rougit avec le message d'installation si le kernelspec disparait a nouveau ; les deux tests d'integration perdent leur decorateur et tournent partout.Validation (relancee apres le dernier commit)
Le second run est le controle negatif : la garde rougit la ou l'ancien
skipifdisparaissait. Hooks pre-commit verts (gitleaks Passed ; H.3 sans objet — aucun notebook touche).Portee — ce que cette PR ne fait pas
python3(second volet de CI: Scripts Tests (CPU) -- kernel-spawn .NET intermittent (Kernel died before replying to kernel_info) sur main et PRs #18279) : elle rend la faute visible, elle ne la repare pas. D'ouPart of #18279, pasCloses.Risque declare
Les deux tests d'integration vont tourner pour la premiere fois dans l'environnement CI. S'ils meurent au spawn, la jambe rougira : c'est le signal que l'issue demande, mais c'est un rouge de plus avant que le fond soit traite. Le resultat sera mesure sur la CI de cette PR et rapporte, sans interpretation.
Rouge de base — a ne pas confondre avec cette PR
mainporte deux journaux d'index0019dansscripts/notebook_tools/twin_pairs.d/search-03-informed/: les 2 organes de garde du registre twin echouent surmain(2 failed, 57 passeden local), et le workflowScripts & Notebook-Tools Testsest rouge surmain(3 echecs consecutifs surpush: 14:24:35Z, 14:32:43Z, 14:45:14Z). La correction est #19723. Le signal propre de cette PR se lit donc dans le detail du job, sur les noms de teststest_papermill_meta_strip.py— pas dans la conclusion de la jambe.Part of #18279
🤖 Generated with Claude Code