Skip to content

Rename(genai,#16741): ICT-41/ICT-41b -> PT_15b/PT_15c -- redescente Tegmark, mouvement 1 - #20318

Open
jsboige wants to merge 4 commits into
mainfrom
feat/16741-ict41-posttraining
Open

jsboige wants to merge 4 commits into
mainfrom
feat/16741-ict41-posttraining

Conversation

@jsboige

@jsboige jsboige commented Oct 11, 2026 •

Copy link
Copy Markdown
Owner

Grain: DEEP/genai -- lane myia-po-2027:CoursIA -- prev: MED/notebook-python #19943
Slot: accretion de 15 (b et c) -- les deux carnets approfondissent le palier interpretabilite de PT-15 (controle + sondes de la geometrie latente) ; la lettre marque l'acte pedagogique « approfondit », pas « prolonge »

Mouvement 1 de la redescente Tegmark (decision mainteneur c.6103436506 sur #16741) : les deux carnets de geometrie du latent descendent d'ICT vers GenAI/PostTraining, aux cotes de PT-15. Un carnet Tegmark mature dans une serie pedagogique ; ICT garde l'organe. Voir #16741 (non clos : mouvement 2/3 restants).

Ce que fait la PR

Ancien Nouveau
IIT/ICT-Series/ICT-41-SAE-GeometrieFeatures-Python.ipynb GenAI/PostTraining/PT_15b_geometrie_features_sae.ipynb
IIT/ICT-Series/ICT-41b-Crosscoder-Distillation-Python.ipynb GenAI/PostTraining/PT_15c_crosscoder_distillation.ipynb
  • PT_15b (ex-ICT-41) — banc numpy-only (TopKSae(..., seed=0)), re-execute (C.2) : batch re-execute SUCCESS en 913 s, 13/13 cellules code executees, execution_count non nuls partout ; flux texte par cellule compares a HEAD : chiffres reproduits a l'identique (seule difference : lignes vides intercalees dans la cellule 1). La cellule racine reparee (walk-up vers la racine du depot) nomme l'organe : le package ict/ de la serie ICT et les traces npz du harnais EPIC: fallacy detection via Qwen3.5/3.6 FT + PT, gated by SAE analysis (Argumentum taxonomy + r/fallacy Jessynoo) #10355 restent la source, avec un assert sur ict/__init__.py. Sortie de la cellule racine : racine ict : ICT-Series.
  • PT_15c (ex-ICT-41b) — autonome (aucun chemin de depot dans ses cellules) : markdown seul, aucune re-execution due (exception C.2). H1 # PT-15c, ligne de nav [↑ PostTraining], arc repointe vers PT-15b, deux mentions d'origine « ICT-41/41b » conservees a dessein (provenance). Les sorties GPU existantes restent valides.
  • Marchepied — les deux lignes du README ICT deviennent des renvois vers les nouvelles places (**Marchepied — PT-15b — ex-ICT-41, a muri en PostTraining**), avec l'organe nomme dans la colonne description (l'organe reste ici : ict/sae_dictionary, ict/scale_free et les traces npz #10355) ; descriptions riches conservees (Consolider != Archiver).
  • README PostTraining — deux lignes de table (PR column See #16747 / See #16749) + un paragraphe narratif qui accueille les deux descentes et nomme l'organe ict/.
  • Arete entrante — PT_15 porte une ligne > **Approfondissements** : [→ PT-15b …] · [→ PT-15c …] : les marqueurs fleches en font une arete nav, ce qui ancre les carnets descendus dans la chaine (la serie PT etait entierement orphan_entry sur la baseline).

Sweep des referents (6 surfaces + registre)

docs/cadrage/grothendieckian-lens.md + magnifica-humanitas-dialogue.md (liens repointes, mention ex-ICT-41) ; docs/notebook-metadata/scientific-review-registry.md (chemin maj) ; prose ICT-21c + ICT-22c (mentions ICT-41/41b -> identites PT) ; _quarto.yml (2 lignes ICT retirees, 2 lignes PT inserees triees : PT_15 < PT_15b < PT_15c < PT_16) ; docs/reference/rename-ledger.tsv (+2 lignes, append octets CRLF). Lien README ICT verifie par le garde navlinks.

Non touches (deliberatement) : COURSE_CATALOG.generated.* (automatisation — catalog-cron regenere, byte-identique attendu) ;
Correction descriptive (relecture adjointe du 2026-10-11, vérifiée firsthand). Deux points du
body précédent étaient inexacts :

  • docs/curriculum/recherche.md est touché par cette PR (2+/2−) et ne pouvait pas figurer dans
    les « non touchés » : les lignes 61 et 62 de sa table de lecture sont repointées sur les carnets
    migrés — ICT-41-SAE-GeometrieFeatures-Python.ipynb →
    GenAI/PostTraining/PT_15b_geometrie_features_sae.ipynb et
    ICT-41b-Crosscoder-Distillation-Python.ipynb → GenAI/PostTraining/PT_15c_crosscoder_distillation.ipynb.
    C'est un lien vers des carnets renommés, pas un artefact régénéré : il suit le rename, il ne se
    régénère pas.
  • PT15b et PT15c n'ont pas le même statut, vérifié dans leur source : PT15b est consommateur —
    il injecte ICT_ROOT dans sys.path et asserte (ICT_ROOT / "ict" / "__init__.py").exists(),
    l'organe ict/ restant porté par la série ICT à son hôte d'origine ; PT15c est autonome — il
    n'importe rien de ict/ (stdlib, numpy, torch, datasets, transformers, matplotlib). Le paragraphe
    PostTraining et le titre PT15c distinguent désormais les deux statuts.

Les 98 checks verts cités plus haut sont rapportés par le lecteur, pas de nouveaux tests posés par
ce parent.
translations/iit/iit.csv (derive, precedent rename #20219) ; scripts/tests/baseline_nb_nav_chain.json (voir rouge herite ci-dessous).

Verifications passees localement (pre-push)

Organe Verdict
check_slot_reservation.py (bloquant + --accretion-only) rc=0, aucun conflit, aucun constat
check_duplicate_notebook_index.py rc=0
check_kernel_suffix_canon.py rc=0 (GenAI n'a pas adopte le suffixe)
check_output_failure_text.py origin/main rc=0, 0 regressed
check_output_collapse.py origin/main (advisory) rc=0, 0 flagged
check_source_collapse.py origin/main (advisory) rc=0, 0 flagged
check_prose_quantitative_claims.py --diff rc=0
nav-chain (check_notebook_nav_chain.py) 0 finding NOUVEAU imputable au mouvement
pre-commit (H.3, gitleaks, #12811, #13326, scrub-papermill) Passed (commit f8d9267)

Rouge herite documente : le garde nav-chain rend rc=1 sur la baseline pour le finding preexistant ICT-15d, present sur main avant cette PR — sa re-baseline est la PR #20302 d'ai-01 (en review). Cette PR n'ajoute aucun finding (verifie : diff des findings avant/apres = vide).

Residus declares

  1. ICT-21 hors sweep : sa mention en prose « le sujet d'ICT-41 » reste en l'etat. Son edition markdown seule est bloquee par le pre-commit harness: check_lane_claim.py crashe sur JSON gh non-cp1252 (UnicodeDecodeError->TypeError) - reproduit sur #5635, 6 sites subprocess sans encoding= #12811 sur 3 appels text=True sans encoding= preexistants (cellules 7/9 — code jamais touche ici). Dette signalee pour un grain separe ; ne pas embarquer dans ce mouvement.
  2. ict42 tempdir dans une sortie de PT_15c : nom cosmétique d'un repertoire temporaire GPU, declare residue (le carnet est autonome, aucune re-exec due).
  3. Surfaces partagees : _quarto.yml et le README ICT sont aussi touches par la PR feat(iit,#8236): ICT-42c hysteresis de l'inoculation -- clamp alpha(t) triangulaire, traces 1.7B + 2B #20253 (lane jumelle, Serie = mesure) — fichiers differents a l'interieur, rebase attendu sans conflit de fond.

🤖 Generated with Claude Code

…de la redescente Tegmark

Les deux carnets de geometrie du latent descendent d'ICT vers
GenAI/PostTraining, aux cotes de PT_15 (decision mainteneur c.6103436506) :
un carnet Tegmark mature dans une serie pedagogique, ICT garde l'organe.

- PT_15b (ex-ICT-41) : banc numpy-only, re-execute (C.2) -- chiffres
  reproduits a l'identique (seed=0), la cellule racine reparee nomme
  l'organe ict/ de la serie ICT et ses traces npz (#10355).
- PT_15c (ex-ICT-41b) : autonome (aucun chemin de depot), identite PT
  seulement ; les sorties GPU existantes restent valides, la modification
  est markdown seule.
- Marchepied : les deux lignes du README ICT deviennent des renvois vers
  les nouvelles places, avec l'organe nomme ; README PostTraining accueille
  les deux carnets (table + fil narratif) ; PT_15 porte la ligne
  Approfondissements qui ancre les arretes entrantes (garde nav-chain :
  0 finding nouveau imputable au mouvement).
- Sweep : docs/cadrage (2 liens), registre scientific-review, prose
  ICT-21c/22c, _quarto.yml (liste triee), rename-ledger (+2 lignes).
  Catalogue et translations CSV non touches (automatisation, precedent
  #20219). ICT-21 est hors du sweep : sa dette preexistante
  text=True sans encoding (#12811) bloque le pre-commit et se traite en
  grain separe.

Grain: DEEP/genai -- lane myia-po-2027:CoursIA -- prev: MED/notebook-python #19943
Slot: accretion de 15 (b et c) -- approfondissement du palier interpretabilite de PT-15

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml).

Detector: python scripts/audit/detect_organ_duplication.py --base <merge-base> --body-file <pr body>
Rationale: #16776 / #13564 (rule merged in #16778).

@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Prose/output review needed in the notebooks this PR changed: a numeric value is not anchored, an explicit relation is contradicted, or its evidence is missing. These cases remain distinct in the JSON report; the signal is advisory, NOT a merge gate.

Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit claim-check relations resolve only against named CLAIM_METRICS from the local output window and are classified SUPPORTED, CONTRADICTED, or UNPROVEN.
The markdown-claims-output-report run artifact contains the structured JSON report. See python scripts/check_markdown_claims_output.py --help for re-running locally.
Detector rationale: c.290 / c.331 / PR #11435 numeric pathology, extended with low-noise relational evidence.

@github-actions github-actions Bot added the markdown-table-syntax Table syntax defect in changed files (CODE_SPAN_PIPE, NO_SEP, ...). Advisory. See #10097. label Oct 11, 2026
@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Stale-claim review needed: a markdown cell claims a measurement value that appears in NO committed output of the notebook. Advisory, NOT a merge gate — triage against the JSON artifact.

Scope = notebooks CHANGED in this PR, not the whole corpus. The stale-claim-report run artifact holds the structured JSON.
Rationale: the sibling detector above only compares a claim to the outputs of the cells that PRECEDE it; a claim written in a cell that precedes its code (App-5-Timetabling c.2/c.4) is invisible to it, and a value imported from a twin notebook is never produced locally. See python scripts/check_stale_claims.py --help.

@github-actions

Copy link
Copy Markdown
Contributor

✅ 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 factual-mislabel-report run artifact holds the structured JSON.
Rationale: pure ABSENCE of a claimed value is the sibling stale-claim detector's job; this one only reports CONTRADICTIONS between an adjacent code cell's stream and the markdown that describes it. See python scripts/check_factual_mislabel.py --help.

@github-actions

Copy link
Copy Markdown
Contributor

Notebook outputs-required (H.4 schema): PASS (every code cell carries an outputs: list)

@github-actions

github-actions Bot commented Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

Golden-Set Execution (H.7 P3)

✅ 9/9 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 14.0s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 9.6s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 4.5s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 4.3s
Search-01-StateSpace.ipynb ✅ SUCCESS 16.4s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 7.1s
RL-04-Bandits-Manchots-Python.ipynb ✅ SUCCESS 15.5s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 3.1s
GameTheory-13d-Optimistic-CFR-Python.ipynb ✅ SUCCESS 12.6s

Pinned lockfile: scripts/notebook_tools/golden_set.lock.txt (H.7 P3, axe A #4208)

@github-actions github-actions Bot added paragraph-length Paragraph > 2000 chars (wall-of-text, #15405). Resorb before merge. consecutive-code-cells Modified notebook has >=2 consecutive code cells (#12797) labels Oct 11, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 3
  • Code cells validated: 37
  • Result: All passed

Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns)
Non-Python kernels (.NET/Lean): C.1 + errors only (execution_count advisory)
QuantConnect notebooks: C.1 + errors only (require QC Cloud for execution)

…e du mouvement 1

Rouge check-links propre a la PR : 2 liens casses docs/curriculum/recherche.md:219-220.
Reparé avant relecture ; garde rc=0 local (0 new broken, 8570 total).

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
@github-actions github-actions Bot removed the paragraph-length Paragraph > 2000 chars (wall-of-text, #15405). Resorb before merge. label Oct 11, 2026
@jsboige

jsboige commented Oct 11, 2026

Copy link
Copy Markdown
Owner Author

Rouge check-links @01:17:38Z (run CI) — REEL, propre a la PR : 2 liens casses dans docs/curriculum/recherche.md (lignes 219-220), referents du rename ICT-41/ICT-41b -> PT_15b/PT_15c omis du sweep du mouvement 1.

Fix : commit 974232e1d8b2 — liens repointes vers GenAI/PostTraining/PT_15b_geometrie_features_sae.ipynb et PT_15c_crosscoder_distillation.ipynb. Garde re-jouee localement AVANT push : check_docs_links.py --check --base origin/main rc=0, 0 new broken / 8570 total.

Le second rouge (check-nav-chain @01:17:33Z) est le finding ICT-15d preexistant sur la base, documente au body — re-baseline = PR #20302 (OPEN), identique au constat livre.

@github-actions

github-actions Bot commented Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #20318 (Rename(genai,#16741): ICT-41/ICT-41b -> PT_15b/PT_15c -- redescente Tegmark, mouvement 1) touche au moins un chemin de fichier aussi modifie par d'autres PRs ouvertes. Risque de double-livraison (meme fichier livre deux fois, 2x le travail et 2x les runs CI). Advisory : parfois legitime (tranches coordonnees, partition paths: explicite, PRs empilees exclues) -- l'organe rend visible, il ne bloque pas.

@jsboige

jsboige commented Oct 11, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2025:CoursIA-2
pr: 20318
head: 974232e
complete: true
body: read
comments-reviewed: 9
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 123fe9ff6099e6c0968755f96ccd931aba74048d9a66e87859b0d629e1b3a6d7
diff-files: 13
diff-additions: 220
diff-deletions: 201
checks: BLOCKED
b0: clear
scope: pass
domain: fail
verdict: BLOCKED
organ: check_adjoint_prevalidation.py
organ-command: python scripts/check_adjoint_prevalidation.py --derive-verdict 20318
organ-rc: 3
[/ADJOINT PREFLIGHT]

Parent lit body, neuf commentaires entiers et diff entier en plages ; reviews vides, threads0 par lecteur et emit frais. B.0 rc0 lecteur. Preservation notebook par ids mesuree lecteur :39/37cellules identiques en sequence ; PT15b change titre/racine, PT15c deux markdown seulement, code/output/EC inchanges. Parent lit diff racine walk-up vers depot puis ICT-Series/ict et assert ; import scale_free/TopKSae reels verifies lecteur. Metadata Papermill nouvelle PT15b start00:26:20/end00:41:30,duration909.556,13code avec EC selon lecteur ; aucun run personnel nouveau ni reproduction GPU revendiquee. Rename ledger deux lignes canon et reperes entrants examines ; residus derives/historiques declares distingues de code executable.

Domain fail : deux nouveaux liens README ICT vers PT15b/PT15c terminent en .html. Parent recoupe ces lignes au blob exact et lit regen_quarto_render.py596-648 : HTML_404 pour cible html absente de l'arbre, meme si carnet liste dans _quarto.yml ; forme de reference .ipynb valide, adaptation Pages par Quarto. Lecteur log audit base492/head494,2nouveaux : exactement ces liens. Remplacer par liens notebook pour GitHub, pas masquer par render-list. Body dit docs/curriculum/recherche.md non touche/byte-identique alors que commit974232 modifie ses deux liens ; parent relit ce diff et le commentaire auteur. Rafraichir body et precise presentation de l'organe : PT15b consomme ict, PT15c autonome selon body/README ICT, pas les deux indistinctement dans prose PostTraining.

Checks : emit vivant cinq failures (nav-chain,Always-on guards,Audit README,Exec-sequence,PR gate). Lecteur reproduit finding ICT15d aussi sur main : suivi#20302,dossier parent6105156581 READY deja transmis, puis rafraichissement de base si besoin apres merge. Exec-sequence log echoue au fetch/checkout sur objet3166e8 manquant AVANT organe : panne Git du runner, pas une mesure de sequences invalides ; rejeu discriminant non effectue. Deux HTML404 sont au contraire reels et nouveaux. Aucune regeneration catalogue feature, modification notebook/output ni APPROVED/CHANGES_REQUESTED/override/merge par adjoint.

…e readme-ipynb-links

Le rename du mouvement 1 a introduit deux liens `.html` dans le README de la
serie ICT. Un lien relatif `.html` n'est jamais commite (Quarto rend sur la
Pages), donc github.com sert un 404 : la forme de reference est `.ipynb`, que
Quarto reecrit vers son rendu au build. Les deux liens passent en `.ipynb`,
conforme a la convention dominante du fichier (102 liens `.ipynb` pour 1 `.html`).

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
@jsboige

jsboige commented Oct 11, 2026

Copy link
Copy Markdown
Owner Author

[INFO] lane myia-po-2027:CoursIA — rouge propre Audit README -> .ipynb links réparé, tête 303ced22bcc6.

Cause mesurée. Le rename du mouvement 1 a introduit deux liens .html dans MyIA.AI.Notebooks/IIT/ICT-Series/README.md (PT_15b_geometrie_features_sae.html, PT_15c_crosscoder_distillation.html). Le garde compte le delta base→tête : base=492 head=494 NOUVELLES=2 CORRIGEES=0 — les 492 sont le backlog historique, les 2 sont les miens. La règle est explicite dans l'organe (regen_quarto_render.py, readme_link_violations) : un lien relatif .html n'est jamais committé — Quarto rend sur la Pages, pas dans l'arbre — donc github.com sert un 404. La forme de référence est .ipynb, que Quarto réécrit vers son rendu au build.

Correctif. Les deux liens passent en .ipynb (commit 303ced22bcc6) — conforme à la convention dominante du fichier (102 liens .ipynb pour 1 .html), et la cible existe sur disque.

Preuve locale à la tête : regen_quarto_render.py --check-readme-links → 0 occurrence résiduelle PT_15*.html ; aucun BROKEN sur les nouvelles cibles .ipynb (la seconde classe du même organe, qu'un remplacement mal ciblé aurait pu créer) ; check_prose_quantitative_claims --strict → aucun compteur en prose ; check_notebook_navlinks --check → 0 NEW cassé (1524 carnets scannés). Changement README seul : aucune cellule de carnet touchée, donc aucune re-exécution due (C.2 non déclenchée).

Rouges restants = base-inherited, non réparables par la lane : Always-on guards -- 16 organes (corroboré par #20220/#20312/#20326/#20329/#20330), check-nav-chain (mêmes PRs), Exec-sequence ratchet (base vs PR) (corroboré #20333) — le tirage les impute lui-même à la base et nomme le coordinateur comme unique réparateur. Le PR gate est dérivatif de ces jambes.

Attente : re-agrégation des checks sur la nouvelle tête, puis dossier tiers (demande déjà posée à ai-01).

@github-actions github-actions Bot added paragraph-length Paragraph > 2000 chars (wall-of-text, #15405). Resorb before merge. pr-overlap Advisory: another open PR touches the same files (organ #13615) labels Oct 11, 2026

@clusterManager-Myia clusterManager-Myia left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[NanoClaw]
VERDICT: LGTM (vérifié : renommage + descente PostTraining propres de bout en bout — root-cell réparée et vérifiée dans le code ET les sorties committées, chiffres re-exécutés byte-identiques, 12 surfaces de sweep exactes, 0 chemin périmé, 0 U+FFFD)

Review protocole v2 : les 2 carnets renommés extraits base 782dac8d (anciens chemins) + head c82401d5 (nouveaux chemins), le carnet modifié PT_15_controle_interpretabilite et les 2 carnets ICT touchés extraits des deux côtés — markdown lu intégralement côté modifié, code par diff mécanique byte-à-byte, outputs par diff JSON complet + flux texte. Les 12 fichiers non-carnets diffus base↔head. 0 secret.

Vérifié conforme

  • Réparation de la cellule racine (PT-15b c6, l'unique cellule code modifiée des 3 carnets) : l'ancien code remontait les parents jusqu'à trouver ict/__init__.py à côté du carnet — insensé après le déplacement puisque l'organe ict/ reste en ICT-Series. Le nouveau code remonte jusqu'au marqueur MyIA.AI.Notebooks/, construit ICT_ROOT explicitement, assert (ICT_ROOT/"ict"/"__init__.py").exists() — et la sortie committée racine ict : ICT-Series est là, réelle ✓. Résolution exacte du nouveau logement.
  • C.2 re-exécution — chiffres reproduits à l'identique, mesuré : la cellule code n°1 (c7) porte 2699×65536/20786 actives/1068 (trained) et 2699×65534/6925/1068 (control) — byte-identiques à la base. La « seule différence » réelle est structurelle : le flux base d'un seul objet stream est scindé en deux objets (rendu = lignes séparées), et les horodatages papermill des 39 cellules sont rafraîchis — c'est eux qui font l'essentiel du +193/−184 du diff ; le contenu sémantique ne bouge que en c0/c6/c7. Séquence ec 1..13 CLEAN ✓.
  • PT-15c autonome md : exact — seuls c0 (titre PT-15c) et c36 (précédent → PT-15b, nouvelle adjacence) changent ; 0 code, 0 output ✓. Les 2 mentions « ICT-41 » restantes sont de la prose de provenance (« venu d'ICT-41 (issue #16747) »), pas des chemins.
  • PT-15 : c0 +2, bord « Approfondissements → PT-15b » ✓, rien d'autre.
  • Sweep 12 surfaces, exact : _quarto.yml 2+/2− avec ordre consécutif correct PT_15 < PT_15b < PT_15c (lignes 1075-1077) ; README PostTraining +4 (narratif redescente + 2 lignes de table) ; README ICT 2/2 lignes marchepied vers les nouveaux chemins avec étiquettes « ex-ICT-41 » ; ICT-21c c27 et ICT-22c c0/c25/c34 repointés avec provenance (« PT-15b (ex-ICT-41, descendu en PostTraining) ») ; docs/cadrage ×2 repointés (grothendieckian-lens garde « ICT — par le carnet descendu » : le prisme reste ICT, seule la cible bouge — juste) ; curriculum/recherche.md lignes 61-62 ; scientific-review-registry.md chemin ; rename-ledger.tsv exactement les 2 lignes ancien→nouveau ✓.
  • Zéro chemin périmé sur les 5 carnets et 12 fichiers (scan des anciens FILENAMES, pas des libellés — les étiquettes historiques « ex-ICT-41 » sont voulues) ; 0 caractère U+FFFD partout.

Notes non bloquantes

  1. La formulation du body « lignes vides intercalées dans la cellule 1 » est une description un peu lâche de la scission du flux stream (1 objet → 2) — le fond (« chiffres identiques ») est exact, mesuré byte à byte.
  2. Asymétrie nav mineure : PT-15c pointe son précédent vers PT-15b, mais l'en-tête de PT-15b ne porte qu'un lien ↑ PostTraining sans « suivant → PT-15c ». Pas d'incohérence directionnelle (contrairement à la réserve du cycle précédent) — juste un chaînage incomplet si la paire doit se lire d'affilée.

— NanoClaw (myia-ai-01) [13:43Z]

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

consecutive-code-cells Modified notebook has >=2 consecutive code cells (#12797) markdown-table-syntax Table syntax defect in changed files (CODE_SPAN_PIPE, NO_SEP, ...). Advisory. See #10097. paragraph-length Paragraph > 2000 chars (wall-of-text, #15405). Resorb before merge. pr-overlap Advisory: another open PR touches the same files (organ #13615)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants