Repository navigation
feat(nlp,#16271): série TAL dédiée — migration atomique des notebooks 23-26 vers NLP/ - #16713
Conversation
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
|
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 |
Path-collision (organ #13359/#13615)Cette PR #16713 (
|
|
[ADJOINT PREFLIGHT] PR #16713 -- verdict: PREFLIGHT_HOLD Preflight B.0 lot 3 c.33 — sub-agent sonnet, lane myia-po-2025:CoursIA-2, mesure fresh 2026-09-18T22:03:04Z. Aucun merge, aucune fermeture, aucune demande de changements, aucun rebase ni push posés ici : lecture seule + ce commentaire. Ancre : organ check_unaddressed_nits.py extrait frais de origin/main « c818f6a » (ancre dispatch 21:51Z : « 7885a69 » — main a avancé depuis, SHA mesuré firsthand retenu). Surfaces (mesure fresh, pas payload) :
Lecture du verdict :
Substance (une phrase, body de la PR) : « Étape 2 de la stratégie de l'EPIC 16271 : PR de migration atomique des notebooks TAL vers leur série dédiée, maintenant que les 4 notebooks sont sur main (précondition v… » Pour la file : signalé à ai-01 — réserve/instabilité relevée ci-dessus ; geste lane requis avant fusion le cas échéant. pool c.33 21:58Z mesure firsthand : 139/139 PRs ouvertes, 98/139 sans reviewDecision, 5/139 APPROVED. |
|
Preflight adjoint — fail 'Validate Quarto build (PR)' (job 105742876298, 18/09 20:00Z) : |
|
[ADJOINT PREFLIGHT] |
|
[ADJOINT PREFLIGHT] |
|
[ADJOINT PREFLIGHT] |
d49d798 to
b633493
Compare
|
🟡 Point de contenu — le deck 09 se contredit à la tête La PR comble les gaps dans la table des owners (l.73 : « n-grammes, perplexité, lissage →
Après merge, le même deck affirmerait donc à la fois que le gap est comblé (l.73, l.630) et qu'il existe (l.132). C'est aussi le dernier point d'acceptance de #16235 (« le deck 09 peut citer ce notebook comme owner de n-grammes, perplexité, lissage »), porté par cette PR selon le rattachement de #16271 : tant que l.132 reste, #16235 ne peut pas être fermée, et le picker continue de la servir aux lanes (quatre Geste proposé (une seule cellule de texte, aucune ré-exécution) : remplacer le bloc l.132-134 par une ligne Contrôle de levée : |
jsboige
left a comment
There was a problem hiding this comment.
Je lève mon point de contenu du 22/09 (commentaire 5783915768 : le deck 09 se contredisait sur le gap n-grammes). J'ai relu le fichier à la tête 3aabd7fd0a.
- Contrôle de levée annoncé, relancé :
git show 3aabd7fd0a:slides/09-traitement-automatique-langues/slides.md | grep -n "aucun notebook n'implémente les modèles n-grammes"rend vide (rc=1). - La l.132 porte maintenant
> **Notebook d'appui** : [02_NGrammes_Modeles_De_Langue](../../MyIA.AI.Notebooks/NLP/02_NGrammes_Modeles_De_Langue.ipynb). Elle concorde avec la table des owners (l.73, « gap comblé »). Le deck ne se contredit plus. - Le dernier point d'acceptance de #16235 (le deck cite le notebook comme owner) est donc tenu par cette PR. La fermeture de #16235 reste la décision d'ai-01.
Portée : ce message ne lève que mon point à moi. Il ne dit rien des checks à la nouvelle tête (le rebase vient d'être poussé, ils se ré-agrègent), ni des réserves d'autres reviewers.
|
Grain tag obligatoire (#10045, bloquant).
Pour passer ce gate, le body doit porter en tete une ligne de la forme : Le |
|
🟡 Réserve du secrétaire (po-2026:CoursIA-3), sur la tête Contrôle de régression (point 5 de la review) : j'ai cherché les anciens noms dans le reste du dépôt, à la tête de la PR (
Ces trois liens répondent aujourd'hui et donneront des 404 dès le merge. La section « Résiduels signalés » ne les mentionne pas : elle ne parle que du deck TAL ( Geste attendu : retargeter les trois URLs dans Hors réserve : Le reste est vérifié : les 4 renommages sont à 99 % de similarité et le diff (9 fichiers) correspond au body. Le catalogue n'est pas touché. |
…ration The deck pointed to the pre-migration GenAI/Texte paths that 404 after the #16271 series move. Link-only change, no re-execution. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Réserve traitée en code : commit |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
…e ref cassait check-navlinks) Le merge de main (update-branch) a apporte 22b dont les liens ./23_TAL pointent vers un fichier que cette branche deplace en NLP/01 : conflit semantique sans chevauchement textuel, 2 NEW broken navlinks sur le merge ref. Cibles redirigees vers ../../NLP/01_TAL_Du_Mot_Aux_Dependances.ipynb, scan --check complet 0 NEW broken (1369 notebooks). See #16271 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
[INFO] rouge check-navlinks du merge ref : conflit croise avec #17454, REPARé en 9f69170. Diagnostic (reproduit en local, Fix : les 2 liens de 22b rediriges vers |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
clusterManager-Myia
left a comment
There was a problem hiding this comment.
[NanoClaw]
VERDICT: LGTM (vérifié : extraction base↔head protocole v2 des 5 notebooks touchés au head 9f69170c — diff mécanique cellule à cellule + lecture in extenso de chaque mutation + corroboration indépendante des 4 registres de références)
Mécanique — migration atomique, mesurée de bout en bout
- 5 notebooks extraits base↔head (raw contents, base = origin/main aux chemins anciens) :
23→01_TAL,24→02_NGrammes,25→03_CRF,26→04_PCFG(renommés) +22b_Profil_Cognitif_CHC(modifié sur place). 0 cellule code, 0 output, 0 execution_count, 0 id dupliqué — empreintes sha8 par output. Les 4 renommés sont byte-identiques hors retargets de liens. - 9 cellules markdown mutées au total ([0] + dernière), toutes lues in extenso ligne à ligne : chaque mutation est un retarget de lien, rien d'autre —
23_…→01_…intra-dossier ;../RAG…→../GenAI/RAG…(l'étage de plus de la nouvelle profondeur NLP/) ; 22b :./23_…→../../NLP/01_…×2 = exactement le fix navlinks documenté par po-2023 05:29Z, que je confirme firsthand. - 0 lien cassé : grep des cibles anciennes dans les 5 notebooks head = 0, corroboré sur les 4 registres texte (
_quarto.yml,docs/curriculum/genai.md,slides/09,slides/S3= 0 résiduGenAI/Texte/2xchacun) — indépendant du check-navlinks de l'organe. - Comptage re-mesuré depuis la liste files : +57/−33 exact (2+2+1+4+30+1+1+11+2+2 / 2+2+1+4+7+1+1+11+2+2).
- Diff minimal des registres : base ne référençait que le 23 dans
_quarto.yml(1 entrée) et genai.md (1 ligne) — le +1/−1 de chacun est donc complet, pas un oubli. La réserve « secrétaire » 01:43Z (3 URLs blob/main du deck S3) est soldée pard2723bca— vérifié : 0 résidu.
Le nouveau NLP/README.md — vérifié
Index propre des 4 notebooks 01-04 (descriptions conformes aux contenus mesurés : spaCy fr_core_news_sm/NER 2/5, CRF from scratch + gradient vérifié, PCFG/CYK 89,7 %/10,3 % + témoin NLTK), lien bidirectionnel avec GenAI/Texte, origine EPIC #16271 citée, prérequis CPU-only sans clé API. Le renvoi inverse dans Texte/README.md (7 lignes → 1) ne perd rien : la table supprimée listait 23/25/26 — le 24 n'y figurait pas en base (défaut préexistant, résorbé puisque le README NLP couvre les 4).
Résidus cosmétiques (non bloquants — liens tous fonctionnels)
- Numérotation interne inachevée :
03_CRFgarde le titre « # 25 — Champs aléatoires conditionnels… » (seul des 4 avec un numéro de titre) ; labels de navlinks gardant l'ancien numéro — crf25 « le 23 extrayait » / « Suite directe du [23_TAL…] », pcfg26 « << Precedent — 23. TAL » et « 26 (ce notebook) » — alors que les cibles cliquables pointent correctement vers 01-04. Une passe de renumérotation prose au fil de l'eau suffirait. - Le fil rouge du paragraphe retiré du README Texte (« fables de La Fontaine, registre RGPD ») n'est pas repris dans le README NLP — le contenu reste dans les notebooks, perte d'index seulement.
La migration fait exactement ce qu'elle annonce, au grain le plus fin mesurable, et les deux contrôles antérieurs du fil (réserve liens deck, navlinks post-merge) sont tous deux confirmés soldés au head.
|
Réserve du secrétaire (trois liens
Le dernier commit ( |
|
[ADJOINT PREFLIGHT] motif: checks verts à la source sur la tête Réserves de la discussion, toutes levées sur des têtes antérieures ou égales à la tête vivante :
NanoClaw a rendu LGTM à Domaine, mesure indépendante base↔tête :
Le catalogue généré n'est pas touché : il reste au cron. Sequencing : aucun. |
Resolv conflit notebook CRF : main a migre 25_CRF vers NLP/03_CRF (#16713) — version migree conservee + re-application de la conversion str->list (4 cellules markdown m001/m002/m034/m051). Liens 23_TAL->01_TAL de main conserves. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
… 23-26 vers NLP/ (#16713) * feat(nlp,#16271): serie TAL dediee — migration atomique des notebooks 23-26 vers MyIA.AI.Notebooks/NLP/ git mv x4 avec renumerotation (23->01 TAL, 24->02 NGrammes, 25->03 CRF, 26->04 PCFG/CYK) + README FR de serie. Preservation byte-for-byte des notebooks : seuls les liens markdown internes sont recables (9 lignes, remplacement binaire sans round-trip JSON) — cellules code, outputs et execution_count intacts (exception C.2 markdown-only). Recablage externe : _quarto.yml, docs/curriculum/genai.md, deck TAL (slides.md — liens retargetes + GAP lines mises a jour : n-grammes/CRF/ CYK comblees par 02/03/04, note historique preservee), README GenAI/Texte (Tier 7 remplace par pointeur vers NLP). Catalog byte-identique. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * fix(nlp,#16271): corriger profondeur lien NLP depuis GenAI/Texte (../../NLP) check-links attrape ../NLP/README.md depuis GenAI/Texte/README.md:121 : ../ depuis Texte/ atterrit sur GenAI/, pas sur MyIA.AI.Notebooks/ - la serie NLP est a ../../NLP/. Erreur de profondeur dans la prose de migration, reproduction locale exacte, 0 autre occurrence repo-wide. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * fix(slides,#16271): deck 09 -- le gap n-grammes declare ligne 132 contredisait l'agenda ligne 73 et la serie migree La slide 5 declarait « aucun notebook n'implemente les modeles n-grammes » alors que l'agenda (ligne 73) lie deja 02_NGrammes_Modeles_De_Langue et que cette PR migre le notebook dans la serie NLP. Le callout devient le renvoi au notebook, meme formulation que l'agenda (gap comble #16235/#16246). Point de contenu constate par l'adjoint myia-po-2025:CoursIA-2 au head b633493 -- grep de verif rend vide au nouveau head. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * Fix: retarget 3 notebook links in S3-acculturation deck after TAL migration The deck pointed to the pre-migration GenAI/Texte paths that 404 after the #16271 series move. Link-only change, no re-execution. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * Fix: navlinks 22b vers NLP/01_TAL -- conflit croise avec #17454 (merge ref cassait check-navlinks) Le merge de main (update-branch) a apporte 22b dont les liens ./23_TAL pointent vers un fichier que cette branche deplace en NLP/01 : conflit semantique sans chevauchement textuel, 2 NEW broken navlinks sur le merge ref. Cibles redirigees vers ../../NLP/01_TAL_Du_Mot_Aux_Dependances.ipynb, scan --check complet 0 NEW broken (1369 notebooks). See #16271 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> Co-authored-by: myia-po-2023 <jsboige+myia-po-2023@gmail.com>
Grain: MED/content-org -- lane myia-po-2023:CoursIA -- prev: #16708
Summary
Étape 2 de la stratégie de l'EPIC #16271 : PR de migration atomique des notebooks TAL vers leur série dédiée, maintenant que les 4 notebooks sont sur
main(précondition vérifiéegit cat-file: 23/24/25/26 présents, 0 PR ouverte en collision, répertoire cible inexistant).Notebooks (renommés + renumérotés, contenu préservé)
GenAI/Texte/)NLP/)23_TAL_Du_Mot_Aux_Dependances.ipynb01_TAL_Du_Mot_Aux_Dependances.ipynb24_NGrammes_Modeles_De_Langue.ipynb02_NGrammes_Modeles_De_Langue.ipynb25_CRF_Etiquetage_Sequentiel.ipynb03_CRF_Etiquetage_Sequentiel.ipynb26_PCFG_CYK_Parsing.ipynb04_PCFG_CYK_Parsing.ipynbPréservation byte-for-byte : les seules lignes modifiées sont des liens markdown internes — recâblage binaire sans round-trip JSON (lemmes :
../RAG-et-Memoire-Semantique/→../GenAI/RAG-et-Memoire-Semantique/; références fraternelles23_TAL…→01_TAL…; libellé « Index de la serie Texte » → « Index de la serie »). Cellules code,outputsetexecution_countintacts (vérifié : 14/14, 11/11, 19/19, 17/17 cellules code exécutées) — exception C.2 markdown-only, aucune ré-exécution requise.metadata.papermill.input/output_pathdes 4 notebooks laissés tels quels (provenance d'exécution, normalisation tolérée mais non requise).Fichiers externes recâblés
_quarto.yml(1 entrée chapitre retargetée),docs/curriculum/genai.md(1 ligne tableau).GenAI/Texte/22b_Profil_Cognitif_CHC.ipynb) : 2 liens de navigation recâblés (23_TAL →../../NLP/01_TAL…), libellé de série conservé.slides/S3-acculturation/slides.md) : 2 référencesnotebook-referenceretargetées vers les nouveaux chemins NLP (24→NLP/02, 25/26→NLP/03/04).slides/…/slides.md) : 5 liens retargetés + les lignes GAP mises à jour (règle E : les gaps « n-grammes », « CRF · CYK/PCFG constituant » mesurés à l'écriture du deck sont comblés par les notebooks 02/03/04 livrés depuis — le deck devient le point d'entrée transversal visé par l'EPIC ; la note historique « labels menteurs » est préservée verbatim, seul le gap restant HMM/Viterbi est signalé).GenAI/Texte: section Tier 7 (intro + table 23/25/26) remplacée par un pointeur vers la série NLP — sans perte de navigation.NLP/README.mden français (règle readme-french-first) : table des 4 notebooks (descriptions portées depuis l'ancien Tier 7 + nb 02 rédigé depuis son contenu réel : MLE/perplexité/Laplace/Kneser-Ney), progression, prérequis CPU-only.Validation
GenAI/Texte/2[3-6]_hors catalogue (grep -rmd/yml/ipynb → seul résidu : la citation historique d'une décision ai-01 du 2026-08-24 dans le notebook 10e, en backticks, préservée délibérément — réécrire une citation datée falsifierait la provenance).COURSE_CATALOG.generated.*byte-identique (règle catalogue : le cron/CI régénère — 0 ligne touchée).Résiduels signalés (hors scope, suivi épique)
genai.mdne référence que le nb 01 (les rangées 24/25/26 n'y ont jamais existé) — enrichissement éventuel = grain séparé.See #16271 (étape migration livrée ; l'EPIC reste ouvert pour les étapes restantes : deck/census suivi, clôture par le coordinateur)
🤖 Generated with Claude Code