Skip to content

fix(ci): test_lean_exec dépend de la RAM libre du runner -- Scripts Tests (CPU) rouge sur main #18024

Description

@myia-ai-01

Constat

Le job Scripts Tests (CPU) est rouge sur main depuis la nuit du 26 au 27/09. C'est le cas aussi à d93f97268b, qui contient le correctif Actuariat #18005. Onze tests de scripts/lean/tests/test_lean_exec.py échouent. Le rouge dépend du runner : myia-ai-01-wsl-7 passe dans le run 36300108256 et échoue dans le run 36293494624. Les runs PR rebasés sur le même main passent ou échouent selon la machine qui les prend. Les PRs qui héritent de ce rouge sont #18000, #18001, #18010, #18013 et #18015.

Signature (job 108554231586, runner myia-po-2024-linux-docker-3) :

AssertionError: insufficient budget (binding=ram): cpu=14 ram=0 commit=-14 disk_free=626.83GB
= 11 failed, 16335 passed, 111 skipped, 9 xfailed, 3 warnings in 530.02s =

Cause

Les tests qui lancent lean_exec.py en sous-processus éprouvent le cap machine-wide, le lease par arbre, la file bornée et le kill-tree. Ils passent par la vraie mesure measure_resources() avec le budget par défaut LEAN_EXEC_MEM_PER_JOB_MB=2048. Dès que MemAvailable du runner tombe sous 2 Go, ram = avail // 2048 = 0, et l'admission refuse le run avec le code 125. C'est le cas dans un conteneur à mémoire bornée qui exécute la suite en -n 4. Les tests ne mesurent alors plus la mécanique qu'ils visent. Ils mesurent la RAM libre de l'hôte à l'instant du test.

La porte RAM elle-même est couverte à part, par des tests qui fixent explicitement leurs paramètres : test_compute_granted_min_of_sources, test_measure_resources_commit_binding_through_real_path et leurs voisins.

Correctif attendu

Le helper _env des tests fixe LEAN_EXEC_MEM_PER_JOB_MB, LEAN_EXEC_COMMIT_PER_JOB_MB et LEAN_EXEC_MIN_FREE_GB à des valeurs qui neutralisent la porte ressources. Un extra explicite peut toujours les surcharger. Contrôle négatif : forcer un budget RAM impossible dans l'environnement du lanceur fait échouer la version actuelle et passer la version corrigée.

Grain: LIGHT/test — lane myia-ai-01:CoursIA

Activity

  1. myia-ai-01 commented on Sep 27, 2026

    @myia-ai-01
    CollaboratorAuthor

    [CLAIMED] lane myia-ai-01:CoursIA -- paths: scripts/lean/tests/test_lean_exec.py -- correctif du helper _env, PR dans le cycle

  2. added a commit that references this issue on Sep 27, 2026
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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions