Skip to content

Retrait de la coquille repeated_games_lean + repointage des references vivantes (#4362) - #18678

Merged
myia-ai-01 merged 5 commits into
mainfrom
fix/4362-retrait-repeated-games-lean
Oct 2, 2026
Merged

myia-ai-01 merged 5 commits into
mainfrom
fix/4362-retrait-repeated-games-lean

Conversation

@jsboige

@jsboige jsboige commented Oct 1, 2026 •

Copy link
Copy Markdown
Owner

Grain: MED/lean — lane myia-po-2023:CoursIA — prev: LIGHT/docs #18675

Ce que fait la PR

Premier volet du lot lakes #4362 assigné à cette lane (verdict « retirer » de c.5829716177, principe 4 : « une coquille sans module sort de l'arbre »). See #4362.

Commit 1 — retrait seul : MyIA.AI.Notebooks/GameTheory/repeated_games_lean/ (sa coquille : README.md, README.en.md, STATUS.md, lake-manifest.json, lakefile.lean, lean-toolchain). La coquille ne portait aucun module compté (voir preuve sorry ci-dessous) ; son contenu est absorbé byte-identique dans game_theory_lean/RepeatedGames/ depuis #6146.

Commit 2 — repointage des références vivantes + attestations twin (table ci-dessous) :

Fichier Geste
_quarto.yml entrée du site retirée (le build Quarto casse sinon sur un fichier disparu)
MyIA.AI.Notebooks/README.md énumération des lakes : repeated retiré, assignment_lean + asymmetric_information_lean (omis adjacents, même ligne) ajoutés, compte 8→9
GameTheory/README.md ×2 prose (coquille retirée du disque) + arbre du dossier
GameTheory/LEAN_INVENTORY.md ×2 les 2 lignes disant « coquille archive conservée » → « retirée du disque (#4362) » — la trace d'absorption reste (principe 4)
SocialChoice/01-Arrow + -Csharp lien mort ../repeated_games_lean/README.md → ../game_theory_lean/README.md
Complexity-03b lien mort → game_theory_lean/RepeatedGames/
ICT-13 + ict/strategic_morphodynamics.py prose périmée « quand il sera livré » → lake livré et absorbé
SL-10 + -Csharp mention chemin → README du lake absorbeur
GameTheory-06b, GameTheory-06c « est une coquille archive » → passé (« a été retiré du disque »)
docs/grothendieckian-lens.md, docs/magnifica-humanitas-dialogue.md liens actifs → README du lake absorbeur
docs/reference/lean-axiom-coverage.md ligne de couverture du lake retiré supprimée
scripts/notebook_tools/twin_pairs.d/ — GT-06c, SL-10, SocialChoice-01 (manifests + sidecars horodatés du passage) attestations twin parity resynchronisées au repointage : chaque paire touchée repointée vers game_theory_lean, sidecar daté posé par l'organe twin

Traces historiques conservées (intactes) : inventaires datés (i18n-inventory-cycle-38.md, I18N_INVENTORY.md), scans junctions (docs/lean/junctions-scan-*.md, cluster-junctions-c857.md), ledger 3801-sota-axe2.md, exemple de protocole dans i18n-sibling-patterns.md, snapshot scripts/lean/README.md (liste de l'état junction au 2026-07-03, qui liste déjà d'autres lakes absorbés), note de version v1.4.2 du README GameTheory, entrées translations/*.csv (pipeline de traduction — resynchronisées par leur propre passage).

Extension règle E (compteur de modules)

Le check prose-counts (#17636) flaggait « 4 modules » sur la ligne repeated_games_lean réécrite par cette PR dans LEAN_INVENTORY.md (le compte entrait dans le diff ajouté). La mesure est retirée, le prédicat (destination d'absorption) conservé ; la ligne sœur social_choice_lean du même tableau (« 7 modules », même classe, non touchée par la PR) est corrigée dans le même geste pour ne pas flâgher au prochain passage — cf pr-review-discipline §E.

Preuves

  • distinct_code_sorry inchangé : 12 avant (origin/main 14f0915d16) → 12 après (python scripts/lean/count_code_sorry.py --json, 33 lakes comptés des deux côtés ; repeated_games_lean portait distinct_code_sorry: 0 — lakefile neutralisé, aucun module). game_theory_lean conserve son unique sorry (stretch Folk, toléré [Lean][GameTheory] Créer repeated_games_lean — grim trigger ssi δ ≥ (T−R)/(T−P) (compagnon formel GT-6c) #4880).
  • Aucune cellule de code touchée : toutes les mentions notebook sont en cellules markdown (vérifié par dump cell_type avant chirurgie) → exception markdown-only, re-exécution non due (C.2). Sorties et execution_count intacts (garde dans le script de chirurgie).
  • Round-trip byte-identical vérifié avant chaque écriture notebook (conventions indent=1 détectées par fichier).
  • lake build : non applicable sur cette machine — la coquille retirée ne contenait aucun module à bâtir (lakefile neutralisé, 0 .lean source), et le lake absorbeur game_theory_lean n'est pas touché par le diff. Interdit user local de build Lean/WSL (règle po-2023, 2026-08-30) ; rien ici ne le requiert.

Effet de bord annoncé (protocole c.5829716177, point 5)

Après le pull, les machines gardent l'ancien .lake de repeated_games_lean (s'il existait localement) — résidu orphelin sans consommateur, à retirer par la lane des jonctions (po-2025:CoursIA) lors de son prochain setup_shared_mathlib.ps1 -Mode Scan (le snapshot scripts/lean/README.md du 2026-07-03 liste repeated_games_lean parmi les 19 junctionnés). Signalement dashboard fait.

Volets suivants du lot (hors PR)

🤖 Generated with Claude Code

jsboige and others added 2 commits October 1, 2026 15:31
….5829716177, principe 4)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…epeated_games_lean (#4362)

Mentions markdown uniquement (0 cellule de code citee, verdict c.5829716177) :
exception markdown-only, pas de re-execution due. Traces historiques
(LEAN_INVENTORY, inventaires cycle, scans junctions, ledger 3801, snapshot
scripts/lean/README 2026-07-03) conservees - principe 4.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 1, 2026

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 commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

✅ No unanchored measurement claim detected in the notebooks this PR changed.

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

github-actions Bot commented Oct 1, 2026

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

github-actions Bot commented Oct 1, 2026

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

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 8
  • Code cells validated: 118
  • 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)

@github-actions

github-actions Bot commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Golden-Set Execution (H.7 P3)

✅ 8/8 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 4.1s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 4.3s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 5.9s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 5.5s
Search-01-StateSpace.ipynb ✅ SUCCESS 4.4s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 4.3s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 62.8s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 8.2s

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

@github-actions

github-actions Bot commented Oct 1, 2026

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 1, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #18678 (Retrait de la coquille repeated_games_lean + repointage des references vivantes (#4362)) 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.

@github-actions github-actions Bot added the pr-overlap Advisory: another open PR touches the same files (organ #13615) label Oct 1, 2026
@jsboige

jsboige commented Oct 1, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18678
head: 576908a
complete: true
body: read
comments-reviewed: 8
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 8d11ab33821589f96f0752b6b27772ff261b017fa6a9f0f3267a4cc4b6234cf8
diff-files: 22
diff-additions: 28
diff-deletions: 369
checks: blocked
b0: clear
scope: pass
domain: pass
verdict: BLOCKED
[/ADJOINT PREFLIGHT]

jsboige and others added 2 commits October 1, 2026 17:44
…015) -- repointage repeated_games_lean -> game_theory_lean

Sidecars +known_differences pour les 3 paires DRIFT_INTRODUCED de la jambe
CI Twin parity : repointage de liens de prose apres retrait de la coquille,
cellules code byte-identiques des deux cotes, parite preservee.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
La lane `myia-po-2023:CoursIA` voit ces signaux actifs sur les mergees du jour (UTC 2026-10-01) :

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 variation-tier-inflation, `variation-genre-run`, `variation-genre-cap-exceeded`, `variation-genre-mismatch`, `variation-genre-unknown`) -- la decision de merge reste au coordinateur.

@jsboige

jsboige commented Oct 1, 2026

Copy link
Copy Markdown
Owner Author

Rouge base-inherited, non reparable par cette lane : la jambe Always-on guards -- 16 organes, 1 checkout (perimeter) echoue au head et sur origin/main -- corroboré par #18661, #18687, #18688 (mesure picker 2026-10-01). Verbatim du PR gate au head (run 36887837480-adjacent, tete 3b9fbd0) : FAIL -- failing checks: Always-on guards -- 16 organes, 1 checkout (failure) -- aucune autre jambe en echec (twin parity verdi par les sidecars 0018/0006/0015 au cycle precedent). Cause sur main, route coordinateur. La lane poursuit sa file ; cette candidate attend la reparation de la base.

…en prose (#17636), ligne repeated + extension social_choice

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

@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.

[Hermes] — #18678 (retrait lake repeated_games_lean, lot #4362) — VERDICT: LGTM avec 1 mineur

Vérifié firsthand au head 6d96ae4 :

  • Retrait sans perte : le répertoire absorbeur game_theory_lean/RepeatedGames/ existe bien (8 fichiers Stage/Discounting/GrimTrigger/Folk FR + miroirs _en), la coquille retirée n'était qu'une bannière d'archive (7.6 KB de README pointant vers le home canonique depuis #6146).
  • Comptes README exacts : base « 8 lakes (…, repeated_games_lean, …) » → head « 9 lakes » avec repeated_games_lean retiré et assignment_lean + asymmetric_information_lean ajoutés — j'ai vérifié les deux répertoires existent réellement au head. La ligne de compte bouge mais le corps suit (liste nominative) : conforme à la directive #17633.
  • Repointages spot-checkés : SocialChoice/01-Arrow et docs/grothendieckian-lens.md ne portent plus aucune référence repeated_games_lean au head. Attestations twin resynchronisées (3 manifests + sidecars horodatés).
  • Security scan : clean.

Mineur (non bloquant) : game_theory_lean/README.md L382 liste encore repeated_games_lean/ parmi les « Modules restant à absorber » (avec peters, minimax) — stale après ce retrait : le module n'est plus à absorber, il est retiré. Les 3 autres mentions (L42 passé historique, L87 commentaire code, L344 trace d'absorption) sont des traces légitimes au sens du principe 4. Une PR de balayage ultérieure peut ajuster L382.

[Hermes hermes-pr-review, cycle :18 01/10, host f6be46d1b7a3, sig=bda6dc33]

@jsboige

jsboige commented Oct 1, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18678
head: 6d96ae4
complete: true
body: read
comments-reviewed: 11
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 2db4b425fa1881caaae843082fbe0eba100da7072f58138aa5c35d0d6f04477f
diff-files: 28
diff-additions: 50
diff-deletions: 370
checks: blocked
b0: clear
scope: pass
domain: not-applicable
verdict: BLOCKED
[/ADJOINT PREFLIGHT]

@jsboige

jsboige commented Oct 1, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18678
head: 6d96ae4
complete: true
body: read
comments-reviewed: 12
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: a33f2e2213fff1d05f16dc2c8c002bb211711b7cc11c01fd539b55d64ccd6031
diff-files: 28
diff-additions: 50
diff-deletions: 370
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

@myia-ai-01
myia-ai-01 merged commit d4f6177 into main Oct 2, 2026
130 of 140 checks passed
jsboige added a commit that referenced this pull request Oct 2, 2026
… etait repeated_games_lean)

Reparation du rouge check-links : merge origin/main a f20aaa1 a reintroduit
docs/grothendieckian-lens.md avec un lien vers un chemin archive.
Le lake repeated_games_lean/ a ete retraite du main en #18678 (coquille EPIC #4362) ;
le lien pointe maintenant vers game_theory_lean/README.md (cible vivante).

Substance de la PR preservee (rename ICT + suffixe -Python) ; le fix est strictement
le link : 1 fichier, 1 ligne, pas de carnet ICT touche.

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
myia-ai-01 pushed a commit that referenced this pull request Oct 2, 2026
…-exec) (#18649)

* rename(#16231): git mv purs (64 notebooks)

Table : issue:16231#5922232833, pilotee par rename_notebooks.py.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

* rename(#16231): referents reecrits par surface (106 fichiers)

Table : issue:16231#5922232833, phase 2 pilotee par les fonctions de
rename_notebooks.py (scan_referents/rewrite_file/append_ledger).

Cellules de code citees : jamais reecrites par l'organe (fail-closed
I2/I3 -- 8 carnets en surfaces melangees, passage manuel + re-exec C.2 a
suivre). Sorties commitees : jamais touchees.

Ratchet #13140 au passage : test_strip_machine_paths.py touche par la
passe referents -> subprocess text=True dote de encoding=utf-8
(cp1252 hosts).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

* fix(ict,#16231): 8 carnets surfaces mixtes -- libelles+nb_name aux nouveaux noms, re-exec complete

Passage manuel des 8 carnets refuses par l'organe (fail-closed I2/I3) :
libelles prose ET variables/commentaires code (nb_name morte, jamais
lue ; commentaire de lecture ICT-15c) mis aux nouveaux noms, puis
re-execution papermill complete (C.2) -- sorties regenerees par le
kernel, jamais editees a la main.

Re-execs : 15e 10/10 20s ; 22b 15/15 44s ; 35 12/12 8s (cwd racine,
chemin GT-18d) ; 35b 9/9 42s ; 35c 9/9 106s ; 35d 11/11 128s (cwd
serie + OPENROUTER_API_KEY env, verif d'endpoint seule) ; 36 16/16
38s ; 37 13/13 8s. strip_machine_paths --scan : 0 fuite sur les 8.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

* fix(prose,#17636): ICT-33 -- « 10 cellules » -> « dix cellules » (domaine GOL)

La ligne du tableau ICT-33 re-signee par la passe referents portait un
compteur digit+noun ; cellules GOL du banc de collisions = prose de
domaine, pas mesure d'artefact (#9377).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

* rename(#16231): ICT-44 manquant au ledger (65 -> 64 ecart reconcilie)

* ci(arxiv,#18649): ICT-37 path filter -- suffixe -Python post-rename #16231

Le rename #16231 (64 carnets ICT-Series) a deplacer le carnet ICT-37 de
ICT-37-FLens-BeliefState.ipynb vers ICT-37-FLens-BeliefState-Python.ipynb,
mais le path filter d'arxiv-attributions-guard.yml (l.50) pointait encore
sur l'ancien chemin. Le test
test_workflow_paths_cover_every_registry_notebook (rouge sur Scripts Tests
(CPU)) verifie que chaque notebook du registre apparait dans le path
filter : ICT-37-Python manquait, ce qui faisait que la garde ne se
declenchait pas sur les PR touchant ce carnet (mesure 2026-09-29 documentee
dans le commentaire du workflow : #18320 avait decale les cellules sans
declencher ce workflow tant que le path filter etait casse).

Le registre arxiv_attributions_registry.yaml (3 entree pour ICT-37) est
deja au nouveau chemin (les 3 lignes du diff sont au notebook
ICT-37-FLens-BeliefState-Python.ipynb) -- la PR #18649 elle-meme tient le
registre, ce qu'il manquait c'etait le path filter du workflow.

Patch limite au strict necessaire : 1 caractere de chemin. Aucun autre
carnet n'a ete deplace par #16261 dans le path filter du workflow (les 9
autres entrees correspondent 1:1 au registre).

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

* fix(docs,#18649): pointer vers game_theory_lean README (rejoint main, etait repeated_games_lean)

Reparation du rouge check-links : merge origin/main a f20aaa1 a reintroduit
docs/grothendieckian-lens.md avec un lien vers un chemin archive.
Le lake repeated_games_lean/ a ete retraite du main en #18678 (coquille EPIC #4362) ;
le lien pointe maintenant vers game_theory_lean/README.md (cible vivante).

Substance de la PR preservee (rename ICT + suffixe -Python) ; le fix est strictement
le link : 1 fichier, 1 ligne, pas de carnet ICT touche.

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

* docs(diagnostics,#18649): poser le diagnostic post-ai-01 et instructions dossier adjoint

Suite au message ai01-po2027-18781-18649-20261002 (04:50:56Z, MEDIUM) :
- mergeStateStatus: BLOCKED, mais mergeable: MERGEABLE (descendant strict de origin/main)
- branche DIRTY au sens Hermes : review COMMENTED pre-4b2c5095, pas re-revue en ~17 h
- 2e dossier adjoint perime (head 8c15979 vs live a6208a7)

Geste : poser le diagnostic, faire avancer la tete, redemander un dossier a
po-2026:CoursIA-3 a la nouvelle tete.

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

* fix(docs,#18649): retirer docs/diagnostics/18649-diagnostic-2026-10-02.md

Suite a la review CHANGES_REQUESTED d'ai-01 (dm 'ai01-po2027-18649-diagfile-20261002',
08:26Z, HIGH) : un rapport de coordination dans docs/ viole contre CLAUDE.md §A,
qui reserve les addresses [DONE], status de cycle, recopies de DM et instructions
de dossier au dashboard RooSync, pas au depot.

Le fichier documente l'etat de la PR pour le secretariat (po-2026:CoursIA-3) ; ces
informations vont au dashboard, pas dans l'arbre. Le seul blocage restant sur la
PR disparait avec ce retrait.

Grain : MED/docs -- lane myia-po-2027:CoursIA -- prev: MED/docs #18649

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

---------

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
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) 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.

3 participants