Skip to content

fix(gametheory,#16792): port du residu de la PR supplantee GT-22 — titres de lecture qualifies - #17238

Merged
myia-ai-01 merged 1 commit into
mainfrom
fix/16792-gt22-residue-lecture-titles
Sep 22, 2026
Merged

myia-ai-01 merged 1 commit into
mainfrom
fix/16792-gt22-residue-lecture-titles

Conversation

@jsboige

@jsboige jsboige commented Sep 21, 2026

Copy link
Copy Markdown
Owner

Grain: LIGHT/notebook-python — lane myia-po-2023:CoursIA — prev: MED/guard #17236

Porte sur main le résidu de la PR #16792, supplantée. See #16762.

Pourquoi cette PR

La PR #16792 (feature/16762-lecture-fusion-gt22, ouverte le 2026-09-19) fusionnait les paires « Lecture » / « Lecture chiffrée » de GameTheory-22. Elle est supplantée : le commit 6a700a04d4 sur main a livré la même fusion pour la même issue #16762, dans une autre réalisation ; origin/main porte désormais 27 cellules et l'organe check_split_reading_cells.py y rend clean. La PR est CONFLICTING depuis.

Conformément à la doctrine de supplantation, le résidu est extrait et porté sur main dans la conception retenue : la PR n'est ni résolue ni rebasée.

Mesure du résidu

La branche énumérait 6 apports « uniques » (commits b2dfafb8b1 et c0bcd707a9, audit adjoint fc1b2f5). Sondage des deux versions, apport par apport :

Apport annoncé unique par la branche branche origin/main verdict
règle pratique seuil ~0,1 d'amplitude oui oui (cellule 7) déjà sur main
coordonnée terminale 6,02e-41 oui oui (cellule 9) déjà sur main
note test régression t_max = 200 oui oui (cellule 9) déjà sur main
lecture géométrique trois portraits oui non résidu
paroi codimension 1 / deux chambres oui oui (cellule 11) déjà sur main
« la linéarisation décrit le voisinage du centre, pas l'orbite entière » oui oui (cellule 7) déjà sur main

5 des 6 sont donc déjà sur main : les deux réalisations ont réécrit les mêmes passages. Sur plusieurs points main est même plus riche que la branche (il ajoute l'invariant x(1-x)y(1-y) et les temps de séjour par sommet).

Le résidu réel est de deux ordres :

  1. 3 titres de lecture qualifiés, là où main laisse ### Lecture du résultat nu (cellules 7, 9, 11). Chaque qualification nomme ce que la lecture montre, et colle mot pour mot au contenu déjà présent dans main — respectivement « la période dérive avec l'amplitude », « le ralentissement hétéroclinique, auto-accéléré », « le mur ne change que le sens radial ».
  2. La lecture géométrique des trois portraits (cellule 11). main porte « Un paramètre du jeu déplace l'équilibre entre les deux axes du plan, pas la géométrie de la rotation. » ; la branche portait à la place « Les trois portraits disent la même chose géométriquement : en traversant le mur $w = l$, l'$\omega$-limite saute du barycentre aux orbites fermées, puis au cycle de la frontière. » Les deux phrases sont conservées : elles sont complémentaires, pas concurrentes.

Preuves

  • check_split_reading_cells.py : clean (rc=0) après modification.
  • detect_md_content_loss.py --base origin/main : 0 finding, cellules markdown stables (16 = 16), 10439 → 10694 caractères normalisés.
  • nbformat.validate : OK. 11 cellules code, toutes avec execution_count et outputs intacts — changement markdown-only, aucune ré-exécution due (exception C.2).
  • Diff : un seul fichier, 4 insertions / 4 suppressions (git diff --stat).

🤖 Generated with Claude Code

…tres de lecture qualifies

La PR #16792 (fusion des paires Lecture/Lecture chiffree de GameTheory-22,
issue parapluie #16762) est supplantee par le commit 6a700a0 sur main.

Mesure du residu : sur les 6 apports que la branche declarait uniques, 5 sont
deja sur main (cellules 7 et 9, dont main est meme plus riche — invariant
x(1-x)y(1-y), sejours par sommet). Ce commit porte les 2 restants dans la
conception retenue par main :
- 3 titres de lecture qualifies (cellules 7, 9, 11), chacun collant mot pour
  mot au contenu deja present ;
- la lecture geometrique des trois portraits (cellule 11), complementaire de
  la phrase que main porte deja.

Markdown-only : aucune cellule code modifiee, execution_count et outputs
intacts (exception C.2). Organes : check_split_reading_cells clean,
detect_md_content_loss 0 finding, nbformat.validate OK.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@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 Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #17238 (fix(gametheory,#16792): port du residu de la PR supplantee GT-22 — titres de lecture qualifies) 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

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 variation-tag-missing PR sans tag Grain: <TIER>/<GENRE> (variation-protocol) label Sep 21, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Grain tag obligatoire (#10045, bloquant).

Grain tag absent (no Grain: / in body).

Pour passer ce gate, le body doit porter en tete une ligne de la forme :

Grain: <DEEP|MED|LIGHT>/<genre> -- lane <machine:workspace> -- prev: <TIER>/<GENRE> #<PR>

Le <genre> doit figurer dans l'enumeration §1 de variation-protocol.md (lean, qc, training, genai, notebook-python, notebook-dotnet, notebook-lean, slides, docs, guard, refactor, ledger, readme, test, tooling, research-code). Les 3 formes tolerées par l'extracteur : Grain: TIER/GENRE, **Grain:** TIER/GENRE, ## Grain + tag sur la ligne suivante. La lane doit suivre le format <machine>:<workspace> (cf. lane-claim-protocol.md).

@github-actions

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 10.0s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 9.7s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 12.6s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 9.3s
Search-01-StateSpace.ipynb ✅ SUCCESS 7.2s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 5.5s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 62.8s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 6.4s

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

@github-actions

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 1
  • Code cells validated: 11
  • 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

Copy link
Copy Markdown
Contributor

Grain tag obligatoire (#10045, bloquant).

Grain tag absent (no Grain: / in body).

Pour passer ce gate, le body doit porter en tete une ligne de la forme :

Grain: <DEEP|MED|LIGHT>/<genre> -- lane <machine:workspace> -- prev: <TIER>/<GENRE> #<PR>

Le <genre> doit figurer dans l'enumeration §1 de variation-protocol.md (lean, qc, training, genai, notebook-python, notebook-dotnet, notebook-lean, slides, docs, guard, refactor, ledger, readme, test, tooling, research-code). Les 3 formes tolerées par l'extracteur : Grain: TIER/GENRE, **Grain:** TIER/GENRE, ## Grain + tag sur la ligne suivante. La lane doit suivre le format <machine>:<workspace> (cf. lane-claim-protocol.md).

@jsboige

jsboige commented Sep 22, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 17238
head: 9b24e53
complete: true
body: read
comments-reviewed: 7
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: b0851f3bd09a4098b63befdeef163f139048cab97eb5a560066506a770bddfe2
diff-files: 1
diff-additions: 4
diff-deletions: 4
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

@myia-ai-01
myia-ai-01 merged commit 7aa85a6 into main Sep 22, 2026
84 of 88 checks passed
jsboige pushed a commit that referenced this pull request Sep 22, 2026
…main

Deux fichiers touchés en parallèle sur main depuis la base de la branche :

- GameTheory-22 (3 blocs) : main porte la fusion Lecture/Lecture chiffrée
  (6a700a0) et le résidu de #16792 (#17238), avec des titres qualifiés
  et un contenu au moins équivalent (invariant x(1-x)y(1-y), temps de
  séjour par sommet). La conception retenue est celle de main ; les deux
  qualifications de titre propres à P03 (Dilemme du Prisonnier, Matching
  Pennies), hors conflit, sont conservées.
- FallacyDetection 01 (1 bloc) : P03 supprimait « Attendus et anti-pièges »,
  que #16950 a modifié entre-temps sur main. La cellule est conservée
  (côté main) : un contenu retouché par une autre lane après la passe ne
  se supprime pas sans nouvelle lecture. Ce fichier sort donc du diff.

Cellules code des deux fichiers identiques à main (source, outputs,
execution_count), aucune re-exécution due.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants