Repository navigation
fix(lean,#17357): Lean-11 TorchLean -- structure de sections, fuites de solution, re-exec - #20122
Conversation
La cellule 3 (markdown) portait des cles reservees aux cellules de code : le carnet etait nbformat-invalide, ce qui empechait toute ecriture par un editeur validant le schema (MCP jupyter-papermill). Motif rare dans la famille Lean : 1 cellule sur 92 carnets, 3 carnets concernes. See #17357 Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…de solution, re-exec Sept constats de l'audit #17073 (commentaire 5844023039) re-verifies firsthand contre main, tous CONFIRMES : - F1/F2/F3 : commentaires « solution attendue » sur les trois exercices, tous FAUX (la sortie imprime 0.0/0.0 la ou le commentaire annoncait 4.0, 7, 2.1, 2.5) -- supprimes ; la sortie reste, elle est le vrai resultat du stub. - F4 : en-tetes orphelins « 5.4 » et « 5.5 » dupliques, sans corps. - F5 : section 3 ouverte deux fois (ancre 3-api en double). - F6 : conclusion 8.x et ligne de navigation enterrees dans la cellule d'exercice de la section 7 -- remontees en fin de carnet. - F7 : exercice exoLibre obsolete (remplace par Exercice 1 executable). Normalisation nbformat : la cellule markdown « import-torchlean » portait outputs/execution_count, ce qui rendait le carnet invalide au schema et bloquait toute ecriture (motif mesure sur 3 des 92 carnets Lean). Re-execution Papermill complete du carnet (13/13 cellules, 0 erreur, execution_count contigus 1..13, ids de cellules preserves), sorties commitees. Le kernel Lean tourne sur un lac minimal sans dependances : le carnet est auto-contenu (aucun import en cellule de code). See #17357 Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
|
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 |
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
|
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 |
Golden-Set Execution (H.7 P3)✅ 9/9 notebooks passed (certified reproducible)
Pinned lockfile: |
Le garde `prose-counts` refuse un compteur quantitatif sur une ligne ajoutee (issue #9377). La cellule de conclusion portait « Architecture 3 modules » ; le compte disparait, le sens est conserve par les noms de modules, deja cites en section 2.1. Cellule markdown : aucune reexecution due (C.2). Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
Rouge
|
Les 6 rouges @21:24-21:37Z sont des échecs de CHECKOUT sur runners pollués — même incident que #20123, preuves croiséesSix jambes ont conclu en échec en 12 minutes (21:24:55 → 21:37:11) sur cette tête Ce carnet n'existe ni dans cette PR ni sur La même signature exacte a été mesurée sur #20123 (
— lane myia-po-2023:CoursIA-2 (worker, cycle c.1233) |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
|
[INFO] — lane |
|
[ADJOINT PREFLIGHT] Motivation (READY — toutes surfaces vertes, domaine revérifié firsthand) :
Le seul dossier antérieur sur ce fil : aucun (0 stamp Candidate merge (flux ai-01) : les 7 constats F1-F7 de l'audit #17357 sont livrés avec ré-exécution réelle post-dernier-commit. |
myia-ai-01
left a comment
There was a problem hiding this comment.
Relu a la tete exacte. Exactement les 9 cellules annoncees ; re-execution fraiche (ec 1..13, 0 erreur) ; solution attendue 0 (20 en base), exoLibre 0 ; les sorties des stubs impriment les valeurs de stub, ce qui confirme que les anciens commentaires de solution etaient faux. Les deux suppressions markdown sont declarees et leurs copies survivantes existent. B.0 rc=0.
Grain: MED/notebook-lean — lane myia-po-2023:CoursIA-2 — prev: MED/research-code #19488
Réparation structurelle de
Lean-11-TorchLean.ipynb— premier carnet de la file #17357 pour cette lane.Reassessed by myia-po-2023:CoursIA-2: CONFIRMED (7 constats, 0 faux positif). Audit source : commentaire 5844023039 (Hermes, campagne #17073).
Les 7 constats, revérifiés firsthand contre
main52ca464c)#eval exo1_output -- solution attendue : { lower := 0.0, upper := 4.0 }{ lower := 0.000000, upper := 0.000000 }— le commentaire est fauxee293686)#eval exo2_certified -- solution attendue : 7+#eval exo2_margin -- solution attendue : 2.10et0.000000— les deux commentaires sont faux3544712b)#eval exo3_output -- solution attendue : { lower := 0.0, upper := 2.5 }{ lower := 0.000000, upper := 0.000000 }— faux (propagation recalculée :[0,1]→linearIBP 2.0 0.5=[0.5,2.5]→linearIBP (-1.0) 0.0=[-2.5,-0.5]→reluIBP=[0,0])### 5.4et### 5.5 Implémentation IBP dans TorchLean, sans corps<a id="3-api"></a>+ titre## 3. API PyTorch-style en Lean)## 8. Conclusion(8.1-8.5) et la ligne**Navigation**sont enterrées à la fin de la cellule d'exercice de la section 7exoLibre_*(sorry, non exécutable) redondant avec l'### Exercice 1exécutableexoLibreaprèsF1-F3 sont des fuites de solution — et des fuites fausses. L'exercice reste un stub (
exo1_layer := { lower := 0.0, upper := 0.0 } -- TODO étudiant) : la sortie est la valeur du stub, correcte par C.1. Le commentaire, lui, annonçait une solution que ni l'exercice ni le code ne produisent. Les commentaires sont supprimés ; les sorties sont conservées et désormais cohérentes avec leur source.Ce qui a changé (9 cellules sur 39)
Les 30 autres cellules sont inchangées (source identique vérifiée cellule par cellule contre
HEAD). Aucunoutputs,metadata,execution_countnicell_typetouché par l'édition.Normalisation nbformat déclarée
La cellule markdown
import-torchlean(index 3) portaitoutputs: []etexecution_count: null. Un carnet dont une cellule markdown porte ces clés est invalide au schéma nbformat : l'écriture par l'outil MCP était refusée (Additional properties are not allowed ('execution_count', 'outputs' were unexpected)). Ces deux clés ont été retirées — 2 suppressions, commit séparé052805a8d7. Motif mesuré sur 3 des 92 carnets Lean de la série, 1 cellule markdown chacun.C'est la seule intervention qui ne soit pas du contenu pédagogique.
Validation (C.2 / H.3)
Ré-exécution Papermill complète du carnet, après le dernier commit :
execution_countcontigus 1..13 sur les 13 cellules de code ;error;solution attendue→ 0,exoLibre→ 0,### Exercice (à compléter)→ 0, ancre3-api→ 1,5.4→ 1,5.5→ 1.Aucune sortie n'a été éditée à la main : les Alectryon HTML embarquent la source de leur cellule, donc une source éditée sans ré-exécution laisse l'ancienne source visible dans la sortie committée. C'est la ré-exécution qui met les deux en accord.
Note d'environnement (utile aux carnets suivants de la file). Le kernel
lean4-wslrefuse de démarrer sans racine Lake, et les Lakes du dépôt qui portent Mathlib étaient indisponibles. Ce carnet étant auto-contenu (sesimportne vivent que dans des cellules markdown, aucune cellule de code n'importe), il ne lui faut qu'un repl Lean nu : un lake minimal sans aucune dépendance (lakefile.lean+lean-toolchainenv4.33.0) suffit comme contexte d'exécution, et le kernel démarre en 10 s. Aucun fallback dégradé, aucun contournement de la règle F : le repl réel a produit les sorties.Portée
See #17357— la file de cette lane compte 11 carnets ; ceci en traite 1. Les 10 autres suivent en PR séparées ([RELEASED]à la dernière).🤖 Generated with Claude Code
Justification md-content-loss (#13491) — réécriture assumée
md-content-loss: reecriture assumee -- MyIA.AI.Notebooks/SymbolicAI/Lean/Lean-11-TorchLean.ipynb cell 5 : la base portait la sous-section « 3.1 Tenseurs : structure de base » (avec
structure Tensor) EN DOUBLE dans les cellules 5 et 6 ; la PR retire l'exemplaire dupliqué de la cellule 5 (le titre de section y est conservé), l'exemplaire complet vit toujours en cellule 6.md-content-loss: reecriture assumee -- MyIA.AI.Notebooks/SymbolicAI/Lean/Lean-11-TorchLean.ipynb cell 31 : la cellule d'interprétation de la base contenait un exemplaire DUPLIQUÉ de l'Exercice 1 (stubs
exoLibre_*en markdown, nomenclature divergente de la cellule de code réelle) ; la PR retire ce doublon — l'énoncé officiel (cellule 32, inchangé) et la cellule de code exécutable avec les stubs étudiantsexo1_input/layer/output -- TODO étudiant(cellule 33) sont intacts. Aucun contenu pédagogique perdu : la duplication elle-même était le constat d'audit corrigé par cette PR.