Repository navigation
Conversation
…ku-Modes 1172->1502 Fournee g85-symbolicai-1, markdown-only, aucune re-execution. Argument_Analysis_Agentic-4-capstone : 3 lectures NOUVELLES (segmentation des 7 phrases et son role de systeme de coordonnees ; smoke test des value-gates ou VG-3 echoue sans que la cellule le signale ; pont vers l'etat partage, 5 sophismes pour 5 detections M1) et 3 lectures REECRITES (les trois perspectives chiffrees 5/3/5 = 13 et l'exclusivite de S4 ; la distribution des forces de convergence, un seul verdict a 3 ; l'isolement du temoin baseline sur VG-3). Z3-18-Sudoku-Modes-Python : 2 lectures NOUVELLES (resultat Constants, givens verifies contre la grille imprimee ; resultat Array, deux solveurs independants et indices non contraints) et 2 REECRITES, dont la correction d'une prose fausse — la section 2 annoncait « trois givens » pour un dictionnaire GIVENS de QUATRE entrees, ce que corrobore l'exercice 1 (« ajouter un 5e given »). Batterie : pedagogie_density 0 sous le plancher ; check_split_reading_cells clean ; detect_solution_leaks 0 HIGH / 0 MEDIUM ; cellules de code et sorties byte-identiques ; enrich_quality_ci rc=0 avec controle positif vivant. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
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: |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
|
Fermée au titre du veto #17040 (campagne de densité #13410 gelée). Face à Elle avait échappé au filtre du gel parce que ni son titre ni son body ne citent #13410 : c'est un relais g-XX de la campagne. La branche est conservée, donc la PR peut être rouverte. Une lecture qui apporte une information qu'aucune cellule existante ne porte peut revenir hors campagne, réécrite et placée juste après sa cellule (point 4 de #17040). Les cellules que la PR modifie sans en ajouter peuvent revenir sous la forme d'une PR de correction pure. |
Grain: MED/notebook-python — lane myia-po-2025:CoursIA — prev: MED/notebook-dotnet #17227
Objet
Relever les deux carnets de la fournée
g85-symbolicai-1au-dessus du seuil de densité pédagogique (1200 caractères de prose par cellule de code), en ancrant chaque lecture sur une sortie déjà committée — sans ré-exécution, sans cellule de remplissage. La règle 2 durcie de #13410 est appliquée à la lettre : une sortie de cellule a UNE cellule de lecture ; on ajoute une lecture seulement là où il n'y en a pas, on RÉÉCRIT celle qui existe.Argument_Analysis_Agentic-4-capstone.ipynbZ3-18-Sudoku-Modes-Python.ipynbpython scripts/notebook_tools/pedagogy_density.py <les deux>→Below 1200 c/cell: 0· All judged notebooks meet the density floor.Substitution à déclarer : le dispatch nommait
Z3-Python-18-Sudoku-Modes.ipynb, qui n'existe pas dans l'arbre. Le fichier réel estZ3-18-Sudoku-Modes-Python.ipynb(suffixe de kernel canonique) : c'est celui-ci qui est traité, et c'est bien la cible visée.Classification des gestes (règle 2 de #13410)
python scripts/notebook_tools/check_split_reading_cells.py <chaque carnet>→cleansur les deux, avant et après édition : aucune lecture orpheline, aucun doublon de lecture. Le champ était donc libre pour desNOUVELLE, et j'ai vérifié cellule par cellule lesquelles portaient déjà une lecture.NOUVELLES (5) — la sortie n'avait aucune lecture
[3](sortie « 7 phrases : S1…S7 »)S1..S7imprimés ici sont lesentence_index(base 0) qui sert de système de coordonnées à toutes les méthodes et à la convergence ; et S5 (« le reglement n est pas si urgent ») s'oppose frontalement à S6 (« la catastrophe est certaine »)[14](smoke test des value-gates)VG-2; la lecture relève queVG-3échoue aussi, en silence, et pourquoi — la chaîne de démonstration cite deux artefacts mais ne porte aucun des quatre titres requis, c'est le conjonct de sections qui cède, pas la densité de citations ; et queVG-4passe avec un seul paragraphe[27](pont vers l'état partagé)5: l'état ne porte pas les 13 détections mais exactement les 5 de M1 (un sophisme par finding dem1_results) ; M2 et M3 ne créent aucun sophisme ; la force de convergence n'entre que comme texte dans la justification, omise quand elle vaut 1[5](modeConstants)## 3.précède la cellule et ne lit pas sa sortie. La lecture vérifie les quatre givens contre la grille imprimée ((0,0)=1en tête de[1, 3, 4, 2],(1,3)=3en fin de[4, 2, 1, 3],(2,2)=2,(3,1)=4) et lit les quatre colonnes[7](modeArray)s_constets_arrsont deuxSolver()indépendants : l'égalité mesurée plus loin compare deux résolutions distinctes, pas deux lectures du même modèle. Etgridn'est contraint que sur les indices0..15(aucunStore) — écart avecConstantsqui deviendrait visible sur un indice arbitraireRÉÉCRITES (5) — une lecture existait, elle est remplacée
[9]1b0c6e85(328 → 1117)ad_hominem) comme détections non corroborées, et constate que M3 ne détecte jamais seule[12]346aba37(536 → 967)[19]f068425e(1051 → 1598)VG-3la laisserait passer ; c'est son conjonct de citations (0) qui la classe boilerplate.VG-3ne détecte donc pas « sections manquantes » mais « la forme sans la traçabilité »[3]3d797c4f(794 → 926)[10]c0cd9a69(1202 → 1490)Truemesurés et l'égalité entre deux solveurs indépendants, et borne explicitement la portée du résultat : le carnet n'établit pas l'unicité de la solutionUne prose fausse corrigée (Z3, section 2)
La section 2 annonçait :
Le dictionnaire
GIVENSen porte quatre —(0,0)=1,(1,3)=3,(2,2)=2,(3,1)=4— et la grille ASCII affichée juste au-dessus en montre quatre. Une troisième source corrobore le compte sans ambiguïté : l'exercice 1 du même carnet demande d'en « ajouter un 5e ». La phrase est corrigée et nomme les quatre positions.C'est le même genre de défaut que celui relevé sur
Search-07au cycle précédent (un nombre de prose contredit par le code) — sauf qu'ici le code et un exercice concordent, donc la prose est seule en tort.Preuves
+83 / −6(git diff --numstat) —capstone+53 / −3(3 insertions de cellule, 3 sources réécrites),Z3+30 / −3(2 insertions, 2 réécritures). Ce sont des lignes de JSON ; les cellules de code n'en portent aucune.HEAD, pas seulement l'assertion du script) : cellules de code14 → 14et7 → 7, byte-identiques ; sorties14 → 14et7 → 7;execution_count[1..14]et[1..7]inchangés ;metadatanotebook etnbformat 4.5inchangés.3nouvelles +3réécrites +0supprimée (capstone),2+2+0(Z3).sourceen forme liste sur toutes les cellules,struniquement, aucunidmanquant ni dupliqué (les 5 cellules neuves reçoivent un id déterministe ; les deux carnets sont en nbformat 4.5, où l'id est requis).check_split_reading_cells.py:cleansur les deux carnets (avant et après).detect_solution_leaks.py --scan:0 HIGH (leaks), 0 MEDIUM (duplicates), 0 errorssur les deux. Aucune cellule d'exercice n'est narrée : les trois blocs### Exercice Ndu capstone et les trois du carnet Z3 restent intacts.enrich_quality_ci.py(invocation CI reproduite :--base <fichier base> --head <chemin dans l'arbre>) :rc=0sur les deux, contrôle positif effectué — la même commande sur une copie où j'injecte20 x 10 = 2125rend[ARITH_WRONG] stated '20 x 10 = 2125' is false: 20 x 10 = 200etrc=1. L'instrument mesure réellement, son silence est une mesure.json.dumps(nb, indent=1) + "\n" == rawvérifié sur les deux fichiers avant édition, donc le diff ne porte aucun bruit de format).Signalé, non traité ici (sujet séparé)
Le carnet Z3 compare les deux encodages sur un Sudoku 4x4, où les deux modes se résolvent instantanément — la section 5 le dit honnêtement (« verdict honnête Prong-B : la différence de performance est invisible ») et l'exercice 3 propose une comparaison empirique, mais celle-ci se limite au 4x4. Une comparaison discriminante demanderait le 9x9 de l'exercice 2 mesuré dans les deux modes, ce qui sort du périmètre markdown-only de cette fournée. Rien n'est maquillé : le carnet déclare lui-même la limite.
See #13410
🤖 Generated with Claude Code