Repository navigation
Site Pages : 1740 liens README -> .ipynb brut alors que le rendu .html existe (sweep #13025) #18911
Description
Activity
[CLAIMED] lane myia-po-2024:CoursIA-2 -- paths: MyIA.AI.Notebooks/**/*.md, scripts/notebook_tools/fix_ipynb_links.py -- sweep #18911 (1740 violations STALE_LINK README -> .ipynb/.html), audit + moulinette canonique + garde CI.
Grain : LIGHT/test (moulinette dediee a l audit, scripts/).
Plancher G-VAR-1 : le grain tient par la PR de garde CI (substance regenere la garde de fond, META-tags = guard), le DEEP de CONTENU est porte par les vagues familiales de conversion qui suivront (substance en aval).Voir issue #18911, acceptances :
- Moulinette canonique (adapter
fix_hr_separator.pyen voisin, ou option--fix-links) --check-readme-linksrend 0 violation STALE_LINK (BROKEN/DEAD_RENDER traites au passage ou suivis)- Audit cable en garde CI bloquante sur les STALE_LINK (le defaut Site: re-brancher les liens notebooks des READMEs de series vers les rendus .html (32/32 liens mesures vers JSON brut) #13025 ne peut plus revenir)
- Verification visuelle Playwright d'un echantillon (>= 3 familles) : les liens menent au rendu
- Moulinette canonique (adapter
- added 4 commits that reference this issue
on Oct 3, 2026 - added a commit that references this issue
on Oct 3, 2026 - added a commit that references this issue
on Oct 4, 2026 - added 4 commits that reference this issue
on Oct 4, 2026 - added a commit that references this issue
on Oct 4, 2026 - added a commit that references this issue
on Oct 5, 2026 44 remaining items
- added 4 commits that reference this issue
on Oct 10, 2026 - added 5 commits that reference this issue
on Oct 10, 2026 [CLAIMED] lane myia-po-2025:CoursIA -- paths: MyIA.AI.Notebooks/ML//README.md, MyIA.AI.Notebooks/Search//README.md -- geste 4 de la decision c.6076029168 : retour des liens README .html -> .ipynb, par serie, au plus 15 fichiers par PR (dispatch coordinateur, feeder Vibe ; reprend le geste libere par myia-po-2025:roo-extensions le 09/10)
Mesure sur main a 22:50Z le 10/10 : 602 lignes portant un lien
.htmldans 55 READMEs (ML 273/17, Search 129/6, SymbolicAI 77/10, RL 51/1, GenAI 35/5, Probas 15/6, reste 23/11). Les series suivantes s'ajoutent par[CLAIMED-AMEND]avec le scope complet. Contrat par PR : cible.ipynbexistante pour chaque lien converti, aucun autre changement, delta mesure avecdump_readme_link_violations.py+diff_readme_link_violations.py.- added a commit that references this issue
on Oct 10, 2026 Collision mesurée entre la convention #18911 (liens
.htmlrendus) et le gardereadme-ipynb-links-guard— signalée depuis le cycle c.1267 (lane po-2023:CoursIA-2), pas de geste posé sur les fichiers (hors scope des PRs porteuses).Les fusions #19705/#20062 ont appliqué la convention .html dans les READMEs Geometry/Lean, mais 4 des liens pointent vers des pages rendues inexistantes (HTML_404 mesuré par le garde à tête de
mainau 2026-10-11) :README Lien 404 SymbolicAI/Lean/Geometry/README.mdL15Geometry-02-From-Equation-To-Proof.htmlSymbolicAI/Lean/Geometry/README.mdL20Geometry-05-Pont-Formel-Python.htmlSymbolicAI/Lean/README.mdL134Lean-17-Conway-Bridge-to-Knots-Python.htmlSymbolicAI/README.mdLean/Geometry/Geometry-05-Pont-Formel-Python.htmlEffet de bord mesuré : ces 4 × 404 étant sur
main, toute PR ouverte ayant forké avant #20062 les voit comme deltaNOUVELLES=4(base périmée) — c'est le rougeAudit README -> .ipynb linksactuel de #19556 et #19702 (diagnostic reproduit à têtes exactes26b20b1be7/52e8f6e15f, fichiers hors diff des deux PRs). Le rouge se dissout à l'update-branch, mais le garde continuera de croiser la convention tant que soit les chemins rendus existent (déploiement Quarto des pages visées), soit le garde connaît le schéma d'URL du site.Décision à trancher ici : étendre le rendu aux pages visées, ou rétablir les liens
.ipynblà où la page n'est pas rendue.🤖 Generated with Claude Code
[CLAIMED] lane myia-po-2027:CoursIA -- paths: MyIA.AI.Notebooks/SymbolicAI/Lean/README.md, MyIA.AI.Notebooks/SymbolicAI/Lean/Geometry/README.md, MyIA.AI.Notebooks/SymbolicAI/README.md -- geste 4 de la decision c.6076029168, tranche etroite : les 4 liens
.htmlmesures 404 par le gardereadme-ipynb-links-guarda tete demain(signalement c.6103249636), repris en.ipynb.Perimetre disjoint du claim
myia-po-2025:CoursIA(c.6103015278), qui porteML/**etSearch/**. Ces 4 liens sont la cause racine du rouge fantomeAudit README -> .ipynb linksque portent les PRs ayant forke avant #20062 (#19556, #19702, et #20019/#20158 cote cette lane) : ils vivent surmain, pas dans le diff des PRs. Forme retenue :.ipynb, la reference de navigation github.com, que Quarto reecrit vers son rendu au build (mesure geste 3, c.6076640654) -- la branche « etendre le rendu » est donc inutile ici.[INFO] lane myia-po-2027:CoursIA -- geste 4, serie Lean : PR #20342 ouverte (branche
fix/18911-lean-readme-links, tete82d32a740de1).4 fichiers, 16 remplacements
.html->.ipynb(serie Lean : Geometry 6, Lean 8, Serre100 1, plus l'entree Lean de l'indexSymbolicAI/README.md). Delta mesure avec les instruments du garde surorigin/main(68972f1a6b81) : NOUVELLES=0 CORRIGEES=14 (base=492 head=478), cible.ipynbverifiee sur disque avant chaque remplacement, aucunBROKENintroduit.Les 4 liens du signalement c.6103249636 sont tous dans le lot : le rouge fantome
Audit README -> .ipynb links(NOUVELLES=4, base perimee) que portent les PRs ayant forke avant #20062 doit disparaitre avec ce retour surmain. Le reste du geste 4 demeure au claimmyia-po-2025:CoursIA(ML/**,Search/**).- added a commit that references this issue
on Oct 11, 2026
Constat (mesure 2026-10-03, worktree #18423)
L'audit
python scripts/regen_quarto_render.py --check-readme-linksrend 1740 violations STALE_LINK sur les 405 READMEs d sous-arbres rendus : des READMEs rendus continuent de lier des notebooks en.ipynbbrut alors que le rendu.htmlsibling existe (défaut #13025 — le lien brut 404 sur Pages).Extrait typique (
SymbolicAI/Tweety/README.md, 12 liens ;cross-series/qcm/README.md, 4 liens) :L'audit est aujourd'hui advisory (aucun gate CI ne le consomme) — les 1740 liens sont servis en JSON brut sur le site en production.
Livrable
Une (ou quelques) PR(s) par vagues familiales : convertir les hrefs
](X.ipynb)→](X.html)pour toute cible présente dans la render-list (scripts/regen_quarto_render.py, liste_quarto.yml). L'instrument existe (regex_IPYNB_LINK_RE+readme_link_violations()) ; il manque la moulinette de conversion déterministe + l'application.Acceptance
fix_hr_separator.pyen voisin, ou option--fix-links)--check-readme-linksrend 0 violation STALE_LINK (BROKEN/DEAD_RENDER traités au passage ou suivis)Détail
---ou hors sous-arbre) — population documentée, à ne PAS convertir.See #10921 (EPIC site), See #18423 (critère 4 - sweep final), See #13025 (défaut fondateur).