Skip to content

[Lean][infra] Appliquer les junctions NTFS sur le cluster Mathlib 520045ab (15 lakes, ~90 Go) — Scan d'abord #13962

Description

@myia-ai-01

Enfant de #4362. Les trois phases historiques de cet EPIC sont CLOSED (#4363 junctions, #4364 convergence, #4365 regroupements) — mais la mesure du 2026-09-01 montre que l'application des junctions n'a jamais eu lieu, et que la convergence l'a rendue 2,3x plus rentable qu'en juin.

Mesure firsthand (ai-01, machine myia-ai-01, 2026-09-01)

Mesure Valeur
Checkouts Mathlib reels 17
Jonctions NTFS actives 0
Taille d'un checkout (echantillon) 6,46 Go (115 287 fichiers)
Empreinte totale ~110 Go
Checkouts sur la meme rev 520045ab / v4.32.1 15
Economie d'un cluster de jonctions ~90 Go

En juin, le plus gros cluster homogene faisait 9 lakes (~40 Go estimes). Il en fait 15 aujourd'hui parce que la convergence des revisions est faite. L'outillage existe et est ferme depuis le 2026-07-03 (scripts/lean/setup_shared_mathlib.ps1, #2611) : seule l'application manque.

Effet prospectif : 8 lakes sont deja pinnes 520045ab mais pas encore construits (assignment_lean, discrepancy_lean, galois_lean, game_theory_lean, mimo_lean, search_lean, social_choice_lean_peters, ...). Chacun ajoutera +6,46 Go a son premier lake build. Poser les jonctions maintenant ne recupere pas seulement l'existant : cela plafonne la croissance.

Perimetre

Inclus : les lakes dont le lake-manifest.json porte Mathlib 520045ab et dont .lake/packages/mathlib est un repertoire reel.

Exclus, explicitement :

Acceptance (falsifiable, dans cet ordre)

  1. Scan d'abord : scripts/lean/setup_shared_mathlib.ps1 en mode Scan. Le cluster doit etre reconnu manifest-identique, pas seulement « meme rev Mathlib » — la mesure d'ai-01 n'a compare que la rev Mathlib. Deux manifests qui divergent sur batteries/aesop/plausible ne se jonctionnent pas.
  2. Apply -> re-mesurer : nombre de mathlib en jonction/lien != 0.
  3. Anti-regression (HARD, bloquant) : pour chaque lake jonctionne, lake build SUCCESS apres la jonction, et python scripts/lean/count_code_sorry.py --json -> distinct_code_sorry inchange avant/apres. Jamais grep -c sorry.
  4. Rapporter l'espace effectivement recupere — mesure, pas estimation.

Prudence — action difficilement reversible

Remplacer un checkout reel par une jonction supprime ~6,5 Go dont la reconstitution coute un lake exe cache get + build (des heures par lake). Le mode Rollback du script existe mais ne restaure pas ce qui a ete efface : il defait le lien. Faire le Scan et le rapporter AVANT tout Apply, et n'appliquer qu'apres accord explicite dans ce fil.

Portee multi-machine

La mesure ci-dessus est celle de myia-ai-01. Chaque machine porte son propre parc de checkouts : le grain est a rejouer par lane, avec sa mesure. Une lane qui trouve 0 checkout reel n'a rien a faire et le dit.

Lie

#4362 (parent) · #2611 (outillage, CLOSED) · #4363 (phase 1-2, CLOSED sans application) · #13146 (reconciliation inventaire GameTheory) · #6116 / #6432 (pin transitif conway_cgt_lean)

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestleanLean 4 formalization (proofs, ports, theorem mining)

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions