Skip to content

fix(search,#13841): minimal rename Lean-18 -> Search-03e + README attribution fix - #14250

Merged
jsboige merged 1 commit into
mainfrom
fix/13841-minimal-rename-search03e
Sep 2, 2026
Merged

jsboige merged 1 commit into
mainfrom
fix/13841-minimal-rename-search03e

Conversation

@jsboige

@jsboige jsboige commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Cycle c.868 — minimal-PR rename Lean-18 → Search-03e + fix résidu README

Grain : MED/notebook-python (REPAIR — PR #14080 obsolète post-#13685)
Lane : myia-po-2026:CoursIA-2
prev : LIGHT/refactor #13951 CLEAN (c.866)

PR #14080 (ouverte par jsboige self-bot le 2026-09-01T15:23Z, commit bb6bca7f3) a tenté de compléter PR #13685 (descent de Lean-18 vers Search/Part1-Foundations/) avec un rename + réécriture de 648 lignes du SymbolicAI/Lean/README.md et 709 lignes du production-scope.md. Le rebase sur main 44cb92406 (87 commits de décalage) génère 2 conflits massifs qui ne sont pas résolvables trivialement (réécritures sémantiques complètes, pas du rename pur).

Cette PR est une alternative minimale qui fait uniquement ce que le titre annonce :

  1. git mv du fichier (historique préservé via --follow)
  2. Mise à jour des 10 références au nom dans : 4 notebooks .ipynb (refs markdown) + 4 fichiers markdown (refs) + 2 docs/ (refs et production-scope.md fix)
  3. Fix résidu attribution fausse dans MyIA.AI.Notebooks/SymbolicAI/README.md ligne 231 :
    • Lake : planners_lean → search_lean (le notebook cite search_lean 38 fois, planners_lean 0 fois dans le source)
    • Kernel : Lean 4 / WSL → Python 3 (metadata.kernelspec.name = python3, confirmé par python -c "import json; print(json.load(open(...))['metadata']['kernelspec']['name'])" → python3)
  4. Mise à jour de production-scope.md:296 qui pointait vers un chemin inexistant depuis PR Fix(notebooks,13488): descent Lean-18 to Search/Part1-Foundations (issue 13662) #13685 (SymbolicAI/Lean/Lean-18-... au lieu de Search/Part1-Foundations/Search-03e-...).

Diff résumé

11 fichiers / +32 / -34 lignes — scope minimal strict, rebaseable sans conflit lourd.

Vérifications first-hand (Tell c.1356 ★★★ sustained ×104ᵉ cas)

Résidu hors-périmètre (issue de suivi à ouvrir)

scripts/enrich_lean18.py + scripts/verify_lean18.py (helpers one-shot c.8257, 2 fichiers / 4 occurrences) réfèrent l'ancien chemin SymbolicAI/Lean/Lean-18-Search-AStar-Optimality.ipynb qui n'existe plus depuis PR #13685. Ces scripts sont BRISÉS au runtime. Tell c.853-L2 ★★ : archivage sous convention _archive/ (preuve de préservation, pas suppression). Hors scope de cette PR — issue de suivi à ouvrir pour archivage propre.

scripts/notebook_tools/pedagogy_density_baseline.json (1 occurrence) sera régénéré par le catalog-cron (.github/workflows/catalog-cron.yml).

Clôture associée

Plancher G-VAR-1

TENU ✓ (genre notebook-python CONTENU, MED tier) après 5 cycles META sustained c.852-L2 ★★. Sortie sécheresse META + rename minimal LIVRÉ.

— lane myia-po-2026:CoursIA-2

…ribution fix

Grain: MED/notebook-python -- lane myia-po-2026:CoursIA-2 -- prev: LIGHT/refactor #13951

PR #14080 (open, DIRTY, 87 commits de décalage) a tenté le rename + réécriture
complète de SymbolicAI/Lean/README.md (648 lignes) + production-scope.md
(709 lignes), créant 2 conflits massifs au rebase. Cette PR propose une
alternative minimale qui fait uniquement le rename + fix du résidu README :

1. git mv MyIA.AI.Notebooks/Search/Part1-Foundations/Lean-18-Search-AStar-Optimality.ipynb
   -> Search-03e-AStar-Optimality.ipynb (historique préservé via --follow)
2. Mise à jour de 10 références (4 notebooks + 4 markdown + 2 docs)
3. Fix attribution fausse SymbolicAI/README.md ligne 231 :
   lake planners_lean -> search_lean (notebook cite search_lean 38x, planners_lean 0x),
   kernel Lean 4/WSL -> Python 3 (kernelspec.name=python3, vérifié first-hand)
4. Fix production-scope.md:296 (chemin inexistant depuis PR #13685)

Diff : 11 fichiers / +32 -34 lignes.

pre-commit Passed. Hors scope : scripts/enrich_lean18.py + verify_lean18.py
(helpers c.8257 pointant ancien chemin, à archiver via issue de suivi) ;
pedagogy_density_baseline.json (régénéré par catalog-cron).
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

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

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 Sep 2, 2026

Copy link
Copy Markdown
Contributor

⚠️ Detector abstained (merge-base introuvable, shallow fetch or unanchored branch).

c.415 (#11873): scope = notebooks CHANGED in this PR, not the whole corpus.
See python scripts/check_markdown_claims_output.py --help for re-running locally.
Detector rationale: c.290 / c.331 / PR #11435 pathologie.

@github-actions

github-actions Bot commented Sep 2, 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 5.3s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 4.0s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 4.9s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 4.7s
Search-1-StateSpace.ipynb ✅ SUCCESS 3.9s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 2.7s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 25.9s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 3.3s

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

@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 4
  • Code cells validated: 43
  • 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 Sep 2, 2026

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #14250 (fix(search,#13841): minimal rename Lean-18 -> Search-03e + README attribution fix) 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 Sep 2, 2026
jsboige added a commit that referenced this pull request Sep 2, 2026
- `git mv scripts/enrich_lean18.py` → `scripts/_archive/c8257-lean18-enrichment/`
- `git mv scripts/verify_lean18.py` → `scripts/_archive/c8257-lean18-enrichment/`
- README explicatif (préservation + refs #13685/#14250)

Contexte : ces helpers référencent l'ancien chemin
`MyIA.AI.Notebooks/SymbolicAI/Lean/Lean-18-Search-AStar-Optimality.ipynb`,
qui n'existe plus depuis PR #13685 (descent) + PR #14250 (rename).
Tell c.853-L2 ★★ : archivage plutôt que suppression pour préserver la preuve
de travail (cf. CLAUDE.md global « Consolider != Archiver »).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Sep 2, 2026
…s preservant valeur, 3 retraits) (#14257)

Issue : #13815 -- le baseline de densite pedagogique (scripts/notebook_tools/
pedagogy_density_baseline.json) portait 48 cles orphelines a `git ls-files
*.ipynb` : des chemins de notebooks qui n'existaient plus sur disque, laisses
par la campagne de renumerotation/reclassement (zero-pad GameTheory-2 -> -02,
zero-pad PyMC-2 -> -02, deplacements AI-Engine-WordPress sous sous-dossiers,
descent Lean-11-TorchLean -> Lean-11b).

Mesure : `len(d['notebooks']) - len(intersection(d, tracked))` = 48.
Cause structurelle : le seul workflow qui touche ce fichier
(.github/workflows/pedagogy-density-advisory.yml) est `contents: read`, donc
le refresh ne peut pas se faire tout seul -- le rattrapage necessite une PR.

Acceptance #13815 #1 (rattrapage, partie 1/3) :

- 45 cles orphelines renommees vers leur chemin actuel **en preservant la
  valeur de densite** (ratio prose_chars / code_cells est invariant par
  `git mv`, le contenu des cellules ne change pas avec un rename pur) :
  - 28 GameTheory (zero-pad) : GameTheory-2..9 -> GameTheory-02..09
  - 8 PyMC (zero-pad) : PyMC-2..9 -> PyMC-02..09
  - 8 AI-Engine-WordPress (deplacement) : racine -> 03-Functional/0X-Y/...
  - 1 SymbolicAI/Lean : Lean-11-TorchLean-Python -> Lean-11b-TorchLean-Python
- 3 cles orphelines retirees (notebooks reellement disparus, valeur perdue) :
  - `SemanticKernel/Créateur de mail personnalisé.ipynb` : supprime en
    commit `56ec9751` (mass cleanup i18n), aucun renommage ailleurs
  - `QuantConnect/Python/QC-Py-Cloud-06-VolTargeting.ipynb` : supprime en
    PR #14093 (collision resolution, le notebook final est PCA-StatArb,
    densite non-transferable)
  - `SymbolicAI/Lean/Lean-18-Search-AStar-Optimality.ipynb` : supprime en
    PR #13685 (descent vers Search/Part1-Foundations). Le renommage arrive
    avec PR #14250 (OPEN, pas mergée). Coherence preservee : la PR #14250
    reintroduira la cle avec le bon chemin lors de son merge.

Acceptance #13815 #2 (prevention) et #3 (doc) : hors scope de cette PR-ci.
Sortie en issues de suivi separees pour eviter de gonfler la PR (catalog-pr-hygiene
R3 : un seul sujet par PR). La prevention (advisory qui compte les orphelines
sur la PR de renum) et la doc (mention du caractere MANUEL du refresh) peuvent
atterrir dans une PR dediee.

Verification post-fix :
- Orphelines residuelles : 0 (avant 48)
- count : 811 (avant 814, -3 retraits)
- Diff JSON : 45 lignes ajoutees + 48 lignes supprimees (3 retraits + 45 renames),
  valeurs numeriques preservees (chacun des 45 renames : meme float, juste la
  cle change)
- Aucune cle cible n'etait deja dans le baseline (pas de doublon cree)
- CRLF : ecriture forcee en LF (`open(NB, 'wb') + bytes(utf-8) + b'\n'`),
  conforme au fichier d'origine (LF), sinon le diff faisait +818/-821 a cause
  du `\r\n` Windows par defaut

Refs : #13815, #13797 (Search-15/16 zero-pad parent), #13685 (Lean-18 descent),
#14093 (QC collision), #14250 (Lean-18 vers Search-03e, OPEN), #13838 (review
Hermes initiale qui a signale la classe).

Co-authored-by: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
@jsboige
jsboige merged commit 55d2eb3 into main Sep 2, 2026
59 of 60 checks passed
myia-ai-01 added a commit that referenced this pull request Sep 3, 2026
…ify_lean18.py (#14274)

Cause structurelle : les scripts référencent en dur le chemin d'avant PR #13685
(descent Search/Part1-Foundations) -- `MyIA.AI.Notebooks/SymbolicAI/Lean/`
n'existe plus. PR #14250 (rename minimal Lean-18 -> Search-03e) n'a pas
touché les scripts. Cause du bug : Path string littéral, pas de résolution
runtime, pas de wildcard.

Préservation (Consolider != Archiver) :
- git mv (pas rm) : historique git complet préservé (blobs + trees)
- Blobs accessibles via `git show 2836765:scripts/enrich_lean18.py`
- Aucun hit `git grep` ailleurs dans le repo : archivage sans risque
  d'import cassé
- Convention _archive/<cycle>-<context>/ README (cf one_shot_fixes,
  one_shots_post_463, recycle_csp)

Co-authored-by: myia-ai-01 <myia.ai.01.myia@gmail.com>
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.

1 participant