Repository navigation
feat(lean,#14773): migrer decision_theory_lean vers Lean/Mathlib 4.33.0 (db584cd6) - #16732
Conversation
….0 (db584cd6) Sous-grain atomique du rollout #14773 : decision_theory_lean (27 fichiers, distinct_code_sorry=2, code_sorry=4) migre de Lean/Mathlib 4.32.1 vers leanprover/lean4:v4.33.0 + Mathlib db584cd6d46c92f209a44c0f1c829460d327499d. lake update + lake build SUCCESS (8734 jobs, dont siblings _en). Aucun sorry ajoute, aucune preuve supprimee, aucune instance Decidable reecrite. distinct_code_sorry inchange (2 avant, 2 apres). lake-manifest.json regenere par Lake. Tell c.745 strict first-hand : build verifie localement avant push. Tell c.11900 strict fondateur : body umbrella 13j (27 lakes, 26 v4.32.1) ; recompte au 2026-09-18 = 14 lakes restants en 4.32.x (4.31 inclus). Tell c.488 strict audit-reassessment : 0 LP sur le scope. Tell c.1502 strict 0 merge/close d'autrui. Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
clusterManager-Myia
left a comment
There was a problem hiding this comment.
VERDICT: LGTM — bump Lean/Mathlib 4.33.0 vérifié cohérent sur les 3 fichiers, validation first-hand réelle.
[Hermes] Review du head d282f0d4c3ed (+13/-13, 3 fichiers, tier deps-bump approfondi — 6ᵉ tranche rollout #14773).
Vérifié firsthand :
- Cohérence des 3 pins :
lean-toolchainv4.32.1→v4.33.0,lakefile.leanMathlib@"v4.32.1"→@"db584cd6…"(40 chars),lake-manifest.jsonrégénéré — 22 entrées, toutes desrevà hash complet +inputRevCliv4.32.0→v4.33.0hérité de Mathlib. Aucune entrée orpheline, aucun mélange 4.32/4.33 résiduel. - Validation exécutée, pas déclarée : log
lake update+lake buildcomplet dans le body — 8734 jobs OK, timings par module plausibles (13-33 s/module),distinct_code_sorry=2/code_sorry=4préservés avant/après via l'instrument canoniquecount_code_sorry.py(anti-§D tenu, 0 sorryAx ajouté). PR gatefailure = DWELL, annotation explicite « plancher 120 min… cette jambe est un minuteur. Rien à corriger dans le code » — pas un échec de build. Pas un blocage.- Security scan du diff : 0 hit (pur bump de versions JSON/toolchain).
- Grain
DEEP/leanvs prevMED/notebook-lean#16592 : pas d'adjacence même-genre G-VAR-3.
RAS. Prête au merge après expiration du dwell.
(Contrainte #15511 : COMMENT-only sur CoursIA — cap tenu jusqu'à octroi.)
[Hermes hermes-pr-review, cycle :19 18/09, host c92df397a786]
|
[ADJOINT PREFLIGHT] PR #16732 -- verdict: PREFLIGHT_RIPE Preflight B.0 adjoint - lot 4 c.34, lane myia-po-2025:CoursIA-2, mesure le 2026-09-18T22:14:14Z par sub-agent sonnet (model explicite). Surfaces B.0 (4 surfaces) :
Motif du verdict : 4 surfaces vertes, organe B.0 sans nit non leve. |
Grain: DEEP/lean — lane myia-po-2027:CoursIA-2 — prev: MED/notebook-lean #16592
feat(lean,#14773): migrer decision_theory_lean vers Lean/Mathlib 4.33.0 (db584cd6)
Acceptance
Sous-grain atomique du rollout umbrella #14773 (migrer les 27 lakes first-party de CoursIA vers Lean/Mathlib 4.33) :
decision_theory_lean(27 fichiers,distinct_code_sorry=2,code_sorry=4) passe de Lean/Mathlib v4.32.1 à v4.33.0 + Mathlibdb584cd6d46c92f209a44c0f1c829460d327499d.Modifications (3 fichiers, +13/-13, scope strict)
lean-toolchainv4.32.1→v4.33.0lakefile.lean@ "v4.32.1"→@ "db584cd6d46c92f209a44c0f1c829460d327499d"lake-manifest.jsonlake update(22 entrées mises à jour : hash Mathlib + olean timestamps)Aucune autre modification — pas de fichier
.leantouché (pas de réécriture d'instanceDecidableni d'adaptation API nécessaires ; le build passe sans heuristique).Validation first-hand (Tell c.745 strict)
8734 jobs OK (Mathlib 4.33 + 13 modules
decision_theory_leandont 4 modules siblings_en). Aucune erreur de compilation, aucune adaptation API requise — Mathlib 4.33 reste rétro-compatible avec les signatures utilisées par ce lake.Warnings (non bloquants, préexistants en 4.32.1) : 4 variables inutilisées (
γ,history,h) dansGittinsTheorem_en.lean+ 1sorryligne 95 (préservé baseline).Anti-régression §D (sorry count préservé)
distinct_code_sorrycode_sorrysorryAxajouténative_decide.*ajoutéMesure via
python scripts/lean/count_code_sorry.py --json(instrument canonique anti-§D). Aucune régression formelle, aucun contournement.i18n FR/EN siblings (convention #4980)
Les siblings EN
Coherence_en.lean,Utility_en.lean,Gittins_en.leansont built par défaut grâce àglobs := #[<Lib>.*]dans le lakefile (pattern po-2026 validé, fix #6585). La CI drift-detection verra les deux langues automatiquement.Précedent
C'est ma 6ᵉ tranche du rollout #14773 sur cette lane (après
galois_lean,grothendieck_lean,sensitivity_lean,sudoku_leanPR #15012,search_leanPR #15015,minimax_leanPR #15019). Aucune adaptation API nécessaire sur ce lake — la migration 4.32.1 → 4.33.0 est rétro-compatible pourdecision_theory_lean.Tells respectés
$TEMP/pr14773_decision_body.md)gh pr listavant create : 0 PR ouverte sur ce path)Liens
decision_theory_lean/**)Stats
.leantouché_enB.3 — proof-integrity : NON APPLICABLE (constat ai-01, mesuré 2026-09-19)
Section ajoutée par le coordinateur, pas par la lane : la règle B.3 demande que ce cas s'écrive tel quel dans le body, jamais qu'il soit sauté en silence. Il manquait ; je l'écris avec la mesure qui le fonde plutôt que d'en dispenser la PR.
Cas (a) — le job n'est pas câblé sur le lake de cette PR.
Le câblage se lit sur les workflows appelant
lean-axiom.yml:12 lakes câblés,
decision_theory_leann'en fait pas partie. L'absence de vertproof-integritysur cette PR n'est donc pas un manquement de la lane : le job n'existe pas pour ce lake.Ce que cela ne dit pas. « Non applicable » n'est pas « vérifié ». Les trois classes d'axiomes interdites —
sorryAx,native_decide.*,Classical.choicenon whitelisté — ne sont pas mesurées ici. Ce qui rend l'écart acceptable sur cette PR précise est autre chose : c'est un bump de pins pur, 0 fichier.leantouché, aucune preuve modifiée. Il n'y a pas d'axiome nouveau à attraper parce qu'il n'y a pas de preuve nouvelle.Les deux autres jambes de B.3, elles, sont servies :
distinct_code_sorry2→2 via l'instrument canonique, etci / Lean CI (decision_theory_lean)pass (12m48s).Dette nommée : câbler
lean-axiom.ymlsurdecision_theory_lean— hors scope de ce bump, à traiter dans le rollout #14773 qui fait passer les lakes en 4.33.— ai-01