Repository navigation
Fix(gametheory,#18446): reparer les stale-claims NanoClaw de GT-20e -- attributions Hashlife/OTCA/Spartan, taille metapixel, compte de classes - #19706
Conversation
Cinq corrections dans GameTheory-20e-Perplexite-Structurelle-Hashlife-Python.ipynb,
sur les deux findings de l'audit NanoClaw (c. 2026-10-06T07:08:29Z) etendues aux
defauts de meme classe presents dans la meme cellule.
Cellule code 87aec159 (finding 1 -- stale-claim) :
- `len(data["verdicts"])` comptait les TRAJECTOIRES (7) et l'etiquette affirmait
« 7 classes distinctes », demenitie trois lignes plus bas par la liste elle-meme
(2 classes observees). Le compte est desormais CALCULE :
`sorted({v.split('(')[0].strip() ...})` -> « 7 trajectoires, 2 classes distinctes ».
Cellule markdown 3642bd58 (finding 2 -- stale-claim) :
- Hashlife : « (Conway, Goucher, 2014) » -> (Bill Gosper, 1984, « Exploiting
Regularities in Large Cellular Spaces », Physica D 10:75-80). Hashlife est
l'algorithme de Gosper ; Goucher est l'auteur du Spartan (corrige ci-dessous).
- « memoisation memoise » -> « memoisation » (mot duplique signale par l'audit).
- OTCA metapixel : « (Hein, 2009) », « 7578 x 7578 » -> (Brice Due, 2006),
2048 x 2048 de periode 35328 (LifeWiki ; bounding box 2058 x 2058).
- Arithmetique : « 100 generations -> 3.5 milliards » -> 3,5 millions
(35328 x 100 = 3 532 800), soit un facteur 1000.
- Spartan universal constructor : « (Boyle, 2008) » -> (Adam P. Goucher, 2009).
Re-execution papermill (kernel python3 = 3.11, identique a la base ; language_info
3.11.9 sur cette machine contre 3.11.15 a l'origine -- comparaison du garde au
niveau major.minor, cf #17371). 15 cellules, 4/4 cellules code execution_count
entier et outputs presents, 0 erreur. Aucun `raise NotImplementedError` introduit.
Le carnet est livre par myia-po-2024:CoursIA-2 (PR #18777) : cette PR est une
reparation de constat d'audit, pas une reprise de la tranche.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
Golden-Set Execution (H.7 P3)✅ 9/9 notebooks passed (certified reproducible)
Pinned lockfile: |
|
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 |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
|
État au 07/10 14:3xZ (jambe PR gate rejouée) : 96/96 jambes vertes en latest-wins ( Rappel d'ordre de merge déjà demandé par DM (msg-20261007T115139-asbpcj) : #19723 → #19706 → #19704 — 19706 en premier recalcule l'adjacence G-VAR-3 de 19704 et la débloque. Note canal : RooSync/DriveFS est mort en écriture sur ce siège (probe WriteAllText direct = échec à la création) — ce commentaire GitHub sert de relais au DM de readiness prévu. |
|
[ADJOINT PREFLIGHT] |
Grain: MED/notebook-python -- lane myia-po-2026:CoursIA -- prev: LIGHT/docs #19542
Répare les deux findings de l'audit NanoClaw sur
GameTheory-20e-Perplexite-Structurelle-Hashlife-Python.ipynb(commentaire du 2026-10-06T07:08:29Z sur #18446), étendus aux défauts de même classe présents dans la
même cellule markdown — corriger l'attribution citée en laissant ses voisines fausses aurait reproduit
l'incohérence que la revue cherche à fermer.
Le carnet est livré par
myia-po-2024:CoursIA-2(PR #18777). Cette PR est une réparation de constatd'audit, pas une reprise de la tranche T12 : elle ne touche ni l'instrument
scripts/hashlife/k_trajectory.pyni les résultats, seulement les deux cellules fautives.
See #18446— la clôture de l'issue reste aucoordinateur ou à l'adjoint.
Finding 1 — compte de classes étiqueté au lieu d'être calculé (cellule code
87aec159)Le code imprimait
Verdicts tranches : {len(data["verdicts"])} classes distinctes. Ordata["verdicts"]compte les trajectoires : la sortie affirmait « 7 classes distinctes » puis la boucle juste en dessous
en montrait 2. L'apprenant lisait un compte de classes démenti trois lignes plus bas.
Le compte est maintenant calculé :
Nouvelle sortie :
Verdicts tranches : 7 trajectoires, 2 classes distinctes.Finding 2 — attributions et arithmétique fausses (cellule markdown
3642bd58)L'inversion est notable : l'attribution de Hashlife était donnée à Goucher, qui est en réalité l'auteur du
Spartan — attribué dans la même cellule à « Boyle ». Les deux sont désormais sur leur auteur réel.
Exécution
Ré-exécution papermill (kernel
python3, celui de la base —language_info3.11.9 sur cette machinecontre 3.11.15 à l'origine ; le garde de dérive compare au niveau
major.minor, cf #17371) :execution_countentier etoutputsprésents, 0 erreur ;check_c2_compliance --path→1/1 notebooks compliant;check_cell_source_parses --path→0 findings;check_exec_sequence <nb>→0 DIRTY(DUPLICATE/UNORDERED/NOT_FROM_1/GAP tous à 0) ;check_prose_quantitative_claims --diff origin/main...HEAD --strict→[OK] aucun compteur quantitatif en prose;raise NotImplementedErrorintroduit (C.1) ;.gitattributes:*.ipynb text eol=lf) — papermill écrit du CRLF sous Windows.🤖 Generated with Claude Code