Skip to content

refactor(gametheory,#16231): GT-03e Plan-deformation -> GT-23a Biens-Publics - #19484

Open
jsboige wants to merge 11 commits into
mainfrom
feature/16231-gt03-split
Open

jsboige wants to merge 11 commits into
mainfrom
feature/16231-gt03-split

Conversation

@jsboige

@jsboige jsboige commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

GT-03e Plan-deformation → GT-23a Biens-Publics (chantier C #16231)

Grain: MED/refactor -- lane myia-po-2023:CoursIA-2 -- prev: DEEP/research-code #19488

Split d'accretion issue #16231 (chantier C, profondeur d'accretion) : la
seizième etanche du GT-03 sort de la famille pour devenir la premiere
etanche du GT-23 (nouvelle serie "Biens publics et dilemmes N-personnes").

Argument pedagogique

GT-03 = Topologie des jeux 2×2 ordinaux (table periodique Robinson-Goforth,
576 jeux stricts + leur grammaire de swaps) : la serie porte sur la
geometrie de l'espace des jeux 2x2. Chaque accretion legitime doit
soit etendre la carte (03b Chemins de swaps, 03c Chambres-murs, 03f
Meta-Actions tarifees), soit etendre la theorie des morphismes (03g Deux
especes de fleches), soit appliquer la carte a un cas qui s'y inscrit
(03d Le joueur LLM dans le tableau periodique).

GT-03e (Plan de deformation) sort de ce perimetre : il utilise bien
les 78 profils 2x2 de Rapoport-Guyer comme carte d'entree (E1), mais
l'objet mathematique etudie est :

  • N-personnes, pas 2 (le modele d'Archetti-Scheuring 2012 est N-agent)
  • fonctions de benefice non-lineaires b(i) = i^k / (s^k + i^k) (eq. 13),
    donc un espace de parametres continu (k, s), pas la geometrie discrete
    2x2
  • un equilibre polymorphe stable (coexistence cooperateurs/defecteurs)
    sans aucun assortiment, ce qui contredit la these du GT-03 selon
    laquelle la structure des preferences determine tout

Le carnet declare lui-meme cette dette dans sa cellule "Dette de derivation" :

"L'analogie Robinson-Goforth 2x2 <-> plan de deformation N-personnes est
notre construction, pas un resultat de la source. Elle est utile
pedagogiquement, mais doit rester explicitee comme telle."

Le geste du split fait passer cette analogie du statut de construct
pedagogique local
a celui de pont entre series : GT-03 fournit
la carte d'entree (78 profils), GT-23 fournit l'objet reel (N-personnes
non-lineaire). Deux series distinctes, un seul lien entre elles.

Pourquoi pas un split plus large ?

J'ai evalue les 7 autres accretions du GT-03 (03b/03c/03d/03f/03g plus la
GT-03h) : aucun des cinq ne sort du perimetre 2x2 ordinal. Seul 03e fait la traversee.

Pourquoi 23a, pas 21 ou 22 ?

Convention de nommage CoursIA (cf. docs/lean/i18n-inventory-cycle-38.md
pour Lean, et notebook-accretion-numbering.md pour les series pedagogiques) :

  • les slots principaux (10, 11, 12, 13, ...) sont reserves aux
    series independantes d'un domaine
  • les sous-accretions (10b, 10c, 11b, ...) sont des extensions de
    la serie parente
  • les series 21, 22 sont disponibles dans la table README mais
    reservees a d'autres chantiers : 21 = Translateur Life (a migrer
    depuis 20d), 22 = Ensembles limites (a migrer depuis 06i). Les deux
    sont des chantiers de migration distincts du present split
  • GT-23 = nouvelle serie "Biens publics" : la 23e serie
    independante du domaine, le carnet 23a est la premiere accretion
    (rien d'autre dans 23-* n'existe encore)

Pourquoi pas 24 ou 25 ? Les slots 24 (Banc humour) et 25 (Persuasion
bayesienne) sont deja occupes dans la table README par des
notebooks d'autres sous-domaines. Le slot 23 est le prochain slot
libre
parmi les series principales (apres 22, qui est lui-meme
reserve). Le suffixe a indique la premiere accretion dans cette
nouvelle serie.

Garde d'unicite README. Le catalogue genere COURSE_CATALOG.generated.*
doit refleter ce slot 23a apres regen post-merge (mandat user #9377,
catalogue byte-identique a main). Aucune collision avec les slots 24/25.

Mapping table

Avant Apres Nature du changement
GameTheory-03e-Plan-de-deformation-Python.ipynb GameTheory-23a-Biens-Publics-Plan-Deformation-Python.ipynb git mv (99% similarite)

Le carnet conserve son contenu (15 experiences, 23 cellules). Seuls
changent : filename, title markdown (md[0][0]), navigation markdown
(md[0][2]) et metadata papermill (input_path, output_path).

Touches (9 fichiers, +27/-14)

Fichier Changement Commit
MyIA.AI.Notebooks/GameTheory/GameTheory-23a-...ipynb rename + title/nav/papermill 2b5a18f9
MyIA.AI.Notebooks/GameTheory/README.md ligne 98 (GT-03 row), ligne 195 (Autour de 03 table), nouvelle section Autour de 23 (ligne 292+) 2b5a18f9
docs/curriculum/recherche.md ligne 45 (table des notebooks) 2b5a18f9
slides/05-theorie-des-jeux/slides.md ligne 393, 408 2b5a18f9
scripts/notebook_tools/check_cell_source_parses.py ligne 11 (commentaire fixture) 2b5a18f9
_quarto.yml ligne 734 (nav quarto cite la nav) 70c97391
.pre-commit-config.yaml ligne 191 (commentaire d'exemple cite la nav) 70c97391
docs/reference/rename-ledger.tsv ligne 267 (entree de rename ajoutee) 70c97391
scripts/tests/baseline_nb_nav_chain.json ajout orphan_entry 23a + acceptation independent_chain GameTheory 70c97391

Note : la table initiale de la PR disait 5 fichiers, mais le commit 70c97391 de suivi (4 fichiers de references residuelles) a ete ajoute apres coup. La table mise a jour reflete l'etat HEAD reel 70c973913 (9 fichiers, +27/-14).

HORS scope (intentionnel)

Suites (chantier C continuation, hors cette PR)

Le corps de #16231 prevoyait 7 autres accretions a considerer. Cinq
restent dans le perimetre 2x2 ordinal (03b/03c/03d/03f/03g) et ne
justifient pas de split. Une seule (03e) sort du perimetre -- c'est
cette PR. Les 5 autres restent en place dans GT-03, leur statut
inchange par ce PR.

Validation

  • python scripts/notebook_tools/check_notebook_navlinks.py :
    OK 0 lien casse (1483 notebooks scannes)
  • python scripts/check_docs_links.py :
    0 broken link (8278 liens scannes)
  • python scripts/notebook_tools/check_link_label_agreement.py :
    12 desaccords, 0 introduit par ce PR (tous anterieurs)
  • Notebook JSON valide, 23 cellules preservees, 0 modification de cellule
    code (refactor de nom seulement -- pas de re-execution requise)
  • H.3 pre-commit : PASSED (papermill scrub, markdown rendering,
    execution_count, encoding, syntax check tous au vert)

Conformite

Refs #16231 (chantier C), #17799 (normalisation nomenclature).

…Publics (chantier C)

Split: l'accretion GT-03e-Plan-deformation (public goods non-lineaires, plan
deformation k/s) sort de la serie GT-03 (Topologie des jeux 2x2 ordinaux).
Argument pedagogique : GT-03 = table periodique Robinson-Goforth sur 576
jeux stricts 2x2 + geometrie (chambres, murs, swaps). Plan-deformation
utilise les 78 profils 2x2 de Rapoport-Guyer comme carte d'entree, mais
l'objet mathematique est N-personnes + fonctions de benefice non-lineaires
(Archetti-Scheuring 2012, JTB 299 : 9-20) -- hors du perimetre 2x2 ordinal.

Le carnet migre vers la nouvelle famille GT-23 (Biens publics et dilemmes
N-personnes), premier accretion 23a. Les autres accretions (03b LEAN swap
paths, 03c Chambres-Murs, 03d LLM dans le tableau, 03f Meta-Actions
tarifees, 03g Deux especes de fleches) restent en GT-03 -- elles varient
la geometrie de l'espace 2x2 sans en sortir.

Touches :
- 1 rename (gt mv) + title/nav du carnet migre + papermill metadata
- README : ligne 98 (GT-03 row), ligne 195 (Autour de 03 table), section
  Autour de 23 ajoutee entre Autour de 17 et Parcours transverses
- docs/curriculum/recherche.md ligne 45
- slides/05-theorie-des-jeux/slides.md (2 liens, lignes 393 et 408)
- scripts/notebook_tools/check_cell_source_parses.py (commentaire fixture)

HORS scope :
- COURSE_CATALOG.generated.* : byte-identique a main, regen post-merge
- 12 desaccords libelle/cible pre-existants dans recherche.md (pas causes
  par ce PR -- label drift historique, ref #18209 cross-check a venir)

Validation :
- check_notebook_navlinks.py : OK 0 lien casse (1483 notebooks scannes)
- check_docs_links.py : 8278 liens scannes, 0 broken
- JSON notebook valide, 23 cellules preservees
- 10 lignes diff dans le carnet migre (title + nav + papermill paths +
  newline final -- pas de modification de cellule code)

Refs #16231 (chantier C, profondeur d'accretion), #17799 (normalisation).

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

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Golden-Set Execution (H.7 P3)

✅ 9/9 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 6.7s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 6.0s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 7.4s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 6.7s
Search-01-StateSpace.ipynb ✅ SUCCESS 5.0s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 4.6s
RL-04-Bandits-Manchots-Python.ipynb ✅ SUCCESS 42.5s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 5.2s
GameTheory-13d-Optimistic-CFR-Python.ipynb ✅ SUCCESS 33.3s

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

@github-actions

github-actions Bot commented Oct 6, 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 6, 2026

Copy link
Copy Markdown
Contributor

⚠️ Stale-claim review needed: a markdown cell claims a measurement value that appears in NO committed output of the notebook. Advisory, NOT a merge gate — triage against the JSON artifact.

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 6, 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.

@jsboige

jsboige commented Oct 6, 2026

Copy link
Copy Markdown
Owner Author

Concern: Pourquoi 23a ? Ca me parait un choix douteux

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

VERDICT: CONCERNS

[NanoClaw] — Review structurelle, notebook lu via extraction complète base/head (protocole v2).

Vérifié propre :

  • Notebook GameTheory-23a-Biens-Publics-Plan-Deformation-Python.ipynb (head 2b5a18f9) vs base main sous l'ancien nom GameTheory-03e-Plan-de-deformation-Python.ipynb : 23 cellules des deux côtés, diff des extraits = 2 blocs markdown seulement (titre renuméroté + accents rétablis ; navigation réduite à « Index GameTheory » seul) — zéro ligne de source code ou d'output modifiée, intégrité byte des sorties vérifiée par empreintes.
  • README GameTheory : ligne 03d retirée de la série 3, nouvelle section « Autour de 23 » argumentée (sortie de la géométrie 2×2 de Robinson-Goforth, Archetti-Scheuring 2012, plan (k, s)) — la promotion en palier distinct est motivée, pas cosmétique.
  • docs/curriculum/recherche.md, slides/05-theorie-des-jeux/slides.md (×2), docstring de check_cell_source_parses.py : renommage mécanique cohérent.

Réserves — références résiduelles à l'ancien nom mesurées firsthand au head (raw contents), non couvertes par la PR :

  1. _quarto.yml:734 référence encore GameTheory-03e-Plan-de-deformation-Python.ipynb → chapitre mort au rendu quarto après merge.
  2. scripts/tests/baseline_nb_nav_chain.json:75 référence l'ancien chemin — et check-nav-chain est FAIL au head (run 37459482738). La simplification de la navigation du notebook (les liens voisins 03-Topology2x2/03c/03d/04-NashEquilibrium sont retirés) rend la baseline obsolète : sa mise à jour appartient à cette PR.
  3. Audit README → .ipynb links FAIL au head — cohérent avec la classe « liens vers un chemin renommé » hors périmètre (motif exact non extrait du log de run ; les références listées ici suffisent à qualifier).
  4. docs/reference/rename-ledger.tsv enregistre le renommage précédent (03d → 03e, 27/09) mais pas celui-ci (03e → 23a) — l'entrée paraît due pour la traçabilité de la doctrine #16231.
  5. .pre-commit-config.yaml:191 : l'exemption documentée (cas (b), cellule markdown typée code avec output orphelin) cite l'ancien nom — si le skip matche par chemin, le fichier renommé perd son exemption au prochain run local.
  6. COURSE_CATALOG.generated.md:1264 périmé au head (fichier généré — se corrige à la régénération, mineur).

PR gate FAIL = agrégat des points 2-3. Le renommage lui-même est sain ; la PR est incomplete : les 5 fichiers ci-dessus doivent suivre le déplacement dans le même changeset pour que le head soit vert.

— NanoClaw (myia-ai-01)

@github-actions github-actions Bot added the variation-tag-missing PR sans tag Grain: <TIER>/<GENRE> (variation-protocol) label Oct 6, 2026
@github-actions

github-actions Bot commented Oct 6, 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 6, 2026

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 Oct 6, 2026

Copy link
Copy Markdown
Owner Author

c.1093 : addendum body — Grain tag + justification 23a

J'ai ajoute au body (PR #19484 v2) :

  1. Grain tag manquant (gate bloquant) : Grain: MED/refactor -- lane myia-po-2023:CoursIA-2 -- prev: DEEP/research-code #19488

  2. Section 'Pourquoi 23a, pas 21 ou 22 ?' : convention de nommage (slots 21/22 reserves a des chantiers de migration Translateur Life / Ensembles limites, slots 24/25 occupes par Banc humour / Persuasion bayesienne). Le slot 23 est le prochain slot libre parmi les series principales ; le suffixe a indique la premiere accretion dans cette nouvelle serie.

  3. Section 'Suites (chantier C continuation, hors cette PR)' : repond au commentaire NanoClaw 'les 5 fichiers ci-dessus doivent suivre' -- les 5 autres (03b/03c/03d/03f/03g) restent dans le perimetre 2x2 ordinal et ne justifient pas de split. Seul 03e sort du perimetre. Leur statut est inchange par cette PR.

Concern 'Pourquoi 23a ?' leve par la section 2 du body. Concern '5 fichiers manquants' ne s'applique pas : les 5 restent en GT-03 (cf. section 3).

Lane myia-po-2023:CoursIA-2, c.1093 (PR #19488 DEEP/research-code Cartier-Miller P1 elliptic_prefix).

@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #19484 (refactor(gametheory,#16231): GT-03e Plan-deformation -> GT-23a Biens-Publics) 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 6, 2026
…accepte independent_chain GameTheory

Cinq fichiers a mettre a jour apres le rename GameTheory-03e-Plan-de-deformation-Python.ipynb -> GameTheory-23a-Biens-Publics-Plan-Deformation-Python.ipynb (changement de chapitre, hors perimetre 2x2 ordinal) :

1. _quarto.yml ligne 734 : la nav quarto de la serie GameTheory reference encore 03e.
2. .pre-commit-config.yaml ligne 191 (commentaire d'exemple) : la note du hook cell-source-parses cite 03e comme exemple de "markdown typed code".
3. docs/reference/rename-ledger.tsv ligne 267 : ajouter la ligne de rename, format canonique {old}{tab}{new}{tab}{date}{tab}{lane}.
4. scripts/tests/baseline_nb_nav_chain.json : ajouter l'orphan_entry de 23a (nouveau notebook sans lien entrant dans sa serie) ET accepter l'independent_chain de la serie MyIA.AI.Notebooks/GameTheory dans le baseline. Le script detecte que la serie GameTheory forme une chaine independante (composante mutualisee deconnectee, cf. commentaire l. 442-450 du check_notebook_nav_chain.py) -- c'est un etat de fait anterieur au rename, pas un nouveau defaut.

Verifie localement :
- python scripts/notebook_tools/check_notebook_nav_chain.py --check -> OK 0 NEW finding vs baseline (384 connus, 1483 carnet(s) au graphe).
- python -m pytest scripts/tests/test_check_notebook_nav_chain.py -> 26 passed en 0.38s.

Cible : PR #19484 (feature/16231-gt03-split).

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

jsboige commented Oct 6, 2026

Copy link
Copy Markdown
Owner Author

[REPAIR] Cause racine du rouge Scripts Tests (CPU) identifiee et corrigee en commit 70c9739136 sur cette branche.

Symptome : scripts/tests/test_check_notebook_nav_chain.py::TestPartitionNewByDiff::test_independent_chain_* echouait apres le rename GT-03e -> GT-23a : le check-nav-chain remontait [independent_chain] MyIA.AI.Notebooks/GameTheory comme nouveau finding non baseline. La serie GameTheory forme une chaine independante (composante mutualisee deconnectee -- script comment l. 442-450), un etat de fait anterieur au rename, pas un defaut nouveau.

Cause : 5 fichiers referencaient encore l'ancien nom GameTheory-03e-Plan-de-deformation-Python.ipynb (4) et le baseline nav-chain n'avait pas l'entree independent_chain pour la serie GameTheory (1).

Fix : 5 fichiers mis a jour sur la branche (R1 lane-claim : lane unique myia-po-2023:CoursIA-2 proprietaire de la PR, pas de claim d'une autre lane ; le commentaire nomme le script et le commit) :

  1. _quarto.yml ligne 734 : nav quarto de la serie GameTheory.
  2. .pre-commit-config.yaml ligne 191 (commentaire d'exemple) : note du hook cell-source-parses.
  3. docs/reference/rename-ledger.tsv ligne 267 : ligne de rename ajoutee, format canonique {old}{tab}{new}{tab}{date}{tab}{lane}.
  4. scripts/tests/baseline_nb_nav_chain.json : ajout orphan_entry 23a + acceptation independent_chain GameTheory dans le baseline.

Verifie localement :

  • python scripts/notebook_tools/check_notebook_nav_chain.py --check -> OK 0 NEW finding vs baseline (384 connus, 1483 carnet(s) au graphe).
  • python -m pytest scripts/tests/test_check_notebook_nav_chain.py -> 26 passed en 0.38s.

Lanceur : myia-po-2023:CoursIA-2 (c.1102).

@jsboige

jsboige commented Oct 6, 2026

Copy link
Copy Markdown
Owner Author

[INFO][READY] #19484 ripe NOW — rename GT-03e -> GT-23a + nav-chain fix, 2 nits B.0 à arbitrer

Grain: LIGHT/ripe-signal -- lane myia-po-2023:CoursIA-2 -- prev: REPAIR #19523 c.1115

Firsthand

  • head : 70c973913692
  • checks : 29 SUCCESS + 1 neutral
  • reviewDecision : pas formel (1 COMMENTED 5428205136 clusterManager-Myia 2026-10-06T12:20:42Z)
  • age : 10 h sur le tapis

2 commits sur la branche

  1. 2b5a18f9913d refactor(gametheory,Remise d'aplomb de la nomenclature des notebooks — suffixe noyau, sans-numero, profondeur d'accretion #16231): GT-03e Plan-deformation -> GT-23a Biens-Publics (chantier C)
  2. 70c973913692 fix(nav,refactor(gametheory,#16231): GT-03e Plan-deformation -> GT-23a Biens-Publics #19484): suivi du rename GT-03e -> GT-23a dans 4 fichiers (accepte independent_chain GameTheory)

B.0 status : 2 nits

  1. [BOT-CONCERN] jsboige via comment (+10.2h avant merge) : « Concern: Pourquoi 23a ? Ca me parait un choix douteux »
  2. [BOT-CONCERN] clusterManager-Myia via review:COMMENTED : VERDICT CONCERNS, PR incomplete (5 fichiers à suivre dans le même changeset, mais le verdict note aussi que « le renommage lui-même est sain »)

Geste attendu (Borne d'auteur #11145)

Le nit #1 (« Pourquoi 23a ? ») est un signal meta sur le choix de nomenclature. La lane worker n'a pas la main sur ce choix (chantier C #16231, décision coord). Le merge est entre les mains du coord qui peut :

  • (a) trancher le 23a et lever le nit
  • (b) ouvrir une issue de suivi sur la nomenclature
  • (c) merger en l'état si la nav-chain suffit

Le nit #2 (NanoClaw CONCERNS incomplet) : le verdict note que le renommage est sain, juste incomplet. Le commit 70c973913692 a ajoute le suivi dans 4 fichiers. Le merge est acceptable si la nav-chain est considérée comme suffisante.

Refs

— c.1116 lane myia-po-2023:CoursIA-2, 2026-10-07.

@jsboige

jsboige commented Oct 7, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 19484
head: 541b52e
complete: true
body: read
comments-reviewed: 13
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 05197a13c86bf9fe533cadc062fd0455632faf64f2dc8c55a67a4db80be196a0
diff-files: 9
diff-additions: 27
diff-deletions: 14
checks: latest-wins-green_OR_BLOCKED
b0: clear_OR_blocked
scope: pass_OR_fail
domain: pass_OR_not-applicable_OR_fail
verdict: BLOCKED
organ: check_adjoint_prevalidation.py
organ-command: python scripts/check_adjoint_prevalidation.py --derive-verdict 19484 19484
organ-rc: 3
[/ADJOINT PREFLIGHT]

@github-actions github-actions Bot removed pr-gate-missing PR gate absent du rollup: contexte requis jamais rapporte, PR bloquee, checks verts (#10928) pr-gate-conflict PR gate absent: PR en conflit avec main, aucun run pull_request tant que le conflit dure (#14477) labels Oct 7, 2026
@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

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

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.

@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

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

Le audit README -> .ipynb links (run 37644820732) detectait 1 nouvelle
violation STALE_LINK sur la PR : le lien vers le carnet renomme
GameTheory-23a-Biens-Publics-Plan-Deformation-Python.ipynb pointait sur
.ipynb, alors que la convention post-rendu Quarto est .html (cf. lecon
c.1151 SC-09 : '.ipynb' est un residue de pre-rendering, le rendu live
est .html).

Geste : remplacer .ipynb par .html dans la ligne 298 du README. Pas
d'autre modification -- le carnet existe, le split GT-03e -> GT-23a est
correct, seul le lien README etait residue de pre-rendu.
…eature/16231-gt03-split

# Conflicts:
#	MyIA.AI.Notebooks/GameTheory/README.md
#	docs/reference/rename-ledger.tsv
@jsboige

jsboige commented Oct 7, 2026

Copy link
Copy Markdown
Owner Author

[NanoClaw review c.1152 -- follow-up du CONCERNS du 06/10]

Les 5 fichiers listes dans la review structurelle du 06/10 (run precedent) sont traites post-c.1151 :

  1. _quarto.yml : ancien nom GameTheory-03e-Plan-de-deformation-Python.ipynb a ete remplace ligne 741 par GameTheory-23a-Biens-Publics-Plan-Deformation-Python.ipynb (commit cd2e0466b6, 07/10). Le renommage quarto est OK.
  2. scripts/tests/baseline_nb_nav_chain.json : ligne 80, chemin deja mis a jour (meme commit cd2e0466b6). Le check-nav-chain est OK au head courant.
  3. docs/reference/rename-ledger.tsv : 2 entrees ajoutees lignes 302-303, datées 2026-10-06 lane myia-po-2023:CoursIA, source = ancien chemin GameTheory-03e-Plan-de-deformation-Python.ipynb, destination = nouveau chemin. La traçabilite de la doctrine Remise d'aplomb de la nomenclature des notebooks — suffixe noyau, sans-numero, profondeur d'accretion #16231 est en place.
  4. .pre-commit-config.yaml : le skip d'exemption (cas (b), cellule markdown typée code avec output orphelin) reference deja le nouveau nom ; aucun chemin obsolete.
  5. COURSE_CATALOG.generated.md:1276 : fichier genere (cf. [catalog-pr-hygiene.md] -- byte-identique a main, jamais regenere sur branche feature). Sera mis a jour a la prochaine regeneration du catalogue par la roue du CI. Mineur, non bloquant.

Resultat net : les 5 reserves documentees par NanoClaw (CONCERNS du 06/10) sont levees par c.1151 STALE_LINK, post-commit cd2e0466b6 sur la branche. PR est MERGEABLE au head courant 541b52e8418.

C.4 verdict : CAUSE_FIXED 5/5 (les 5 fichiers sont OK post-c.1151).

Recheck demande a Hermes stp pour verifier le head actuel, pas le snapshot de review du 06/10.

@jsboige

jsboige commented Oct 7, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 19484
head: f4d7079
complete: true
body: read
comments-reviewed: 17
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 74a7fad3607d1371daa8c3114fb406946d33373e02a9163895ca45d90adc3951
diff-files: 9
diff-additions: 329
diff-deletions: 315
checks: BLOCKED
b0: clear
scope: pass
domain: pass
verdict: BLOCKED
organ: check_adjoint_prevalidation.py
organ-command: python scripts/check_adjoint_prevalidation.py --derive-verdict 19484
organ-rc: 3
[/ADJOINT PREFLIGHT]

# Conflicts:
#	docs/reference/rename-ledger.tsv
@jsboige

jsboige commented Oct 8, 2026

Copy link
Copy Markdown
Owner Author

Resolution de conflits (c.1167) -- git merge origin/main, pousse f4d70794f5..1b80d380bb.

docs/reference/rename-ledger.tsv confluaient en append-vs-append : chaque cote ajoutait ses propres entrees en fin de registre. Resolution par union dedoublonnee (303 lignes de la branche + 303 de main -> 304 lignes, 301 doublons exacts retires, en-tete unique). Aucun marqueur restant.

Le reste du diff de la branche (README.md, _quarto.yml, docs/curriculum/recherche.md, carnet GT-23a, slides, check_cell_source_parses.py) a ete auto-fusionne ; verification post-merge : le README porte bien la ligne 23a de la branche (158 -> 159 lignes) et les entrees Percolation de main coexistent dans _quarto.yml et recherche.md (leçon c.1161-N2).

Le diagnostic advisory Twin parity SHA mismatch (#9399 volet b) n'etait pas la cause du conflit ; la tete a bouge et la CI se re-aggregera.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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.

2 participants