Repository navigation
Conversation
…For-Data-Science (T2-01) Rename kebab pre-autorise par le plan de mapping #20273 (porte libre, precedent 04b-Wavelet-Scattering). - git mv seul (13 fichiers, historique preserve) - 21 referents vivants mis a jour (workflows, pytest.ini, _quarto.yml, READMEs, curriculum, baselines nav-chain + pedagogy density, guides) - COURSE_CATALOG.generated.* byte-identique a main (automatisation) - translations/** intact (garde #20232) - 5 fichiers historiques preserves (migration terminee, _archive/, ledgers dates) Organes: nav-chain 0, navlinks 0, label-agreement 16=16 base-inherited, link-render 0, docs-links 0/8536, quarto 0 manquant, testpaths 0, density orphans 0, tests 112 passed. See #17417, See #20273 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
|
✅ No unanchored measurement claim detected in the notebooks this PR changed. Scope = notebooks CHANGED in this PR, not the whole corpus. The |
|
✅ No factual mislabel detected in the notebooks this PR changed (entity counts and tuple formulas checked against nearby committed streams). Scope = notebooks CHANGED in this PR, not the whole corpus. The |
Golden-Set Execution (H.7 P3)✅ 9/9 notebooks passed (certified reproducible)
Pinned lockfile: |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
…rent files sed sous Git Bash avait converti CRLF->LF sur chaque fichier touche, produisant des diffs fichier-entier (2017/2017 baseline nav-chain, 242/242 guide enricher). Les ratchets differentiels y voyaient 13 compteurs de prose et 4 violations HTML_404 'nouvelles' -- artefact de fins de ligne, pas de contenu. Reparation : restauration depuis origin/main + remplacement perl binaire (preserve les octets de fin de ligne), README du dossier renomme reconstruit depuis son chemin d'origine. Diffs chirurgicaux verifies (1-7 lignes/fichier). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
c1aa76f to
c8997e1
Compare
…-keyed by a directory rename Un git mv de dossier re-keye chaque violation le touchant, en deux formes : le triple identique sous un nouveau chemin de README (8/12 sur T2-01), et le href change dans un README referent inchange (4/12). Le set-diff pur les comptait comme NOUVELLES+CORRIGEES symetriques (12/12, backlog inchange), rendant toute PR de renommage rouge a tort. Deux passes d'appariement, chacune prouvee sur le disque a l'etat head : - forme 1 : jumeau (class, href) exact dont le README de base a disparu ; - forme 2 : href re-key dans un README identique dont l'ancien parent resolu a disparu et le nouveau parent existe. Les controles negatifs (README/fichier de base toujours present) restent des NOUVELLES -- un copier-coller de lien casse ne se blanchit pas. Rejou local T2-01 : base=493 head=493 NOUVELLES=0 CORRIGEES=0 DEPLACEES=12. Tests : 10 passed (comparator) + 7 passed (workflow guard). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
Diagnostic jambe « Scripts Tests (CPU) » @22:15Z (head
|
|
Suivi du commentaire precedent (flake Scripts Tests) : le rejeu du job 114325995880 est success (run 38090577526, attempt 2) — flake clos, aucun traitement base-inherited requis. Rejeu de la jambe |
Conflit README DataScienceWithAgents resolu : table complete 1.1-1.6 de #20254 conservee (liens .ipynb canoniques, blockquote accretion, lien Documentation complete) avec token dossier renomme 01-Python-For-Data-Science. _quarto.yml + 02-ML-Cours/README.md auto-merges (entrees renommees 212/1277-80 intactes). Nav-chain ICT-15d unreachable = base-inherited (reproduit sur origin/main pur). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…le (import merge e4b3155) Root cause: #20100 (e4b3155) ajoute le renvoi Lean-25 -> ICT-15d ; ce lien entrant cross-serie retire 15d des entries du graphe nav et le reclasse unreachable (lacune externally_anchored, arbitrage #19076 ouvert). Reproduit sur origin/main pur 57f4c84 -- rouge preexistant main, invisible en CI main (workflow PR-only), importe par le merge de ce cycle. Reparation dans le precedent #19075 option b: le baseline enregistre l'etat mesure. Full check ET diff-files check: 0 NEW (verifies locaux, argv exacts CI). Le fix durable (inclure externally_anchored dans le basis du checker) reste a trancher en #19076 -- signale au coordinateur. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
Rouge nav-chain au head 9968a79 — diagnostic complet + réparation (22dff34) Le merge
Le fix durable (inclure 🤖 Generated with Claude Code |
|
Flake Scripts Tests (CPU) au head |
|
Etat consolide au head |
Grain: MED/refactor — lane myia-po-2023:CoursIA — prev: MED/tooling #20267
Sous-tranche T2-01 du chantier de nommage #17417 : renommage kebab
01-PythonForDataScience→01-Python-For-Data-Science(option la moins sensible, pré-autorisée par la table de mapping #20273 — précédent04b-Wavelet-Scattering).Le geste
Diff effectif : 35 fichiers — 13 déplacés par le
git mvseul (6 notebooks, 2 tests, 3 data, README, PROVENANCE ; historique préservé) + 20 référents vivants mis à jour (remplacement littéral du token : workflows CIgenai-helpers-tests/scripts-tests,pytest.ini,_quarto.yml, 6 READMEs série DSA + parents ML,2.1-Workflow-ML.ipynb, curriculumml-engineer.json+.compiled.json+trading.md, guidesnotebook-enricher-guide.md+quant-prose-census.md, baselines re-keyéesbaseline_nb_nav_chain.json+pedagogy_density_baseline.json,check_testpaths_coverage.py,test_scan_quant_classify.py) + 2 organes ajoutés par la réparation post-CI (comparateurdiff_readme_link_violations.py+ ses tests).Exclusions délibérées (mesurées, pas sautées)
COURSE_CATALOG.generated.json/.mdtranslations/ml-datascience/**translations/**sur une branche feature = rouge structurel (double-clé mainteneur). Dette documentée, règlement au moment de la fusion de série.Règle historique vs vivant
Référent vivant (résout un chemin au moment de la lecture/exécution) → mis à jour. Fait historique daté (le chemin était vrai au moment de l'écriture) → préservé tel quel :
scripts/notebook_tools/migrate_dsa_mlpython.py— carte d'une migration terminée (DSA→ML.Python) ; ses chemins sont ses données.scripts/notebook_tools/_archive/_fix_leaks_batch4_remaining.py— enregistrement historique sous_archive/.docs/archive/ledgers-reviews/2026-07-11-h4-sweep-6034.md— relevé de vérification daté (2026-07-11).docs/ledgers/13746-tests-eclates-dissipation.md— ledger daté citant la config d'alors.docs/ledgers/3801-sota-axe2.md— 3 refs dans des entrées datées (provenance des mesures).git grep -l 01-PythonForDataScienceaprès le diff : exactement 9 fichiers = 2 catalogue + 2 translations + 5 historiques. Zéro fuite ailleurs.Validation (mesurée sur la branche, post-dernier-commit)
check_notebook_nav_chain.py --checkcheck_notebook_navlinks.py --checkcheck_link_label_agreement.py --failcheck_notebook_link_render.py --tracked-onlycheck_docs_links.py --check --base origin/main_quarto.ymlpathscheck_testpaths_coverage.pypedagogy_density.py --check-orphanspytestsuites touchéesTranslation drift
check_pr_translation_drift.py: les 37 enregistrements CSV pointant l'ancien chemin sont skippés par l'organe (notebook absent du diff →continue), le garde ne rougit pas — c'est la dette documentée ci-dessus, pas une omission.Réparations post-CI (2 commits)
c8997e11e2— fins de ligne CRLF. Lesedinitial avait converti CRLF→LF sur les référents, produisant des diffs fichier-entier (2017/2017 nav-chain, 242/242 guide) : les ratchets différentiels y voyaient 13 compteurs de prose et 4 violations README-link « nouvelles ». Restauration depuis origin/main +perl -pibinaire (préserve les octets de fin de ligne). Diff redevenu chirurgical : 46 insertions / 46 délétions au merge-base (le compte de fichiers GitHub — 35 — est détaillé en tête, section « Le geste »). Rejouprose-counts --strict:[OK] aucun compteur quantitatif en prose(rc 0).80aaf5a374— comparateur readme-link : appariement des renames. Le rejeu local montraitbase=493 head=493 NOUVELLES=12 CORRIGEES=12— strictement symétrique : les 12 violations sont préexistantes sur main, re-keyées par le renommage (8 dans le README du dossier renommé, 4 dans les READMEs référents dont le href suit le dossier). Le set-diff pur du comparateur comptait ungit mvcomme 12 introductions — toute PR de renommage serait rouge à tort. Deux passes d'appariement, chacune prouvée sur disque à l'état head : forme 1 (README de base disparu), forme 2 (ancien parent du href résolu disparu, nouveau parent présent). Les contrôles négatifs (fichier/répertoire de base toujours présent) restent des NOUVELLES — un copier-coller de lien cassé ne se blanchit pas. Rejou T2-01 :NOUVELLES=0 CORRIGEES=0 DEPLACEES=12(rc 0). Tests : 10 passed (comparator, dont 4 témoins d'appariement positifs/négatifs) + 7 passed (workflow guard — le format::error::greppé est inchangé).See #17417
See #20273
🤖 Generated with Claude Code