Skip to content

fix(runners): declarations budget po-2024 12->42 Go (VM WSL 40 Go) - #17322

Merged
myia-ai-01 merged 1 commit into
mainfrom
fix/runner-budget-declaration-40gb
Sep 22, 2026
Merged

myia-ai-01 merged 1 commit into
mainfrom
fix/runner-budget-declaration-40gb

Conversation

@jsboige

@jsboige jsboige commented Sep 21, 2026

Copy link
Copy Markdown
Owner

Grain: LIGHT/tooling — lane myia-po-2024:CoursIA — prev: MED/guard #17308

Ce que fait cette PR

Trace dans le repo les déclarations de budget mémoire des wrappers persist/ de po-2024, passées de 12 Go à 42 Go après l'agrandissement de la VM WSL (24 032 → 40 110 Mo) arbitré par le user le 2026-09-21 (mission ai-01 msg-20260921T203652-qxg3en).

Pourquoi 42

COURSIA_RUNNER_BUDGET_GB est le plafond d'admission que assert_memory_budget (supervise.sh:439) compare à la somme des caps déclarés des conteneurs coursia-ci=1 de TOUTES les familles :

Jambe Slots Cap unitaire Caps déclarés
linux-docker 8 1536 Mo 12 288 Mo
waiters 12 1536 Mo 18 432 Mo
lean 2 6144 Mo 12 288 Mo
Total 22 43 008 Mo

Sous l'ancien budget 12 Go, la garde refusait des slots sains — les 2 slots lean ne démarraient jamais tant que les autres familles étaient en vol (18 432 + 12 288 > 12 288). Les vrais murs restent les caps par conteneur (docker --memory) et le plafond vmmem de la VM (memory=40GB) ; l'hôte garde sa moitié au-delà de la VM.

État live vs repo

  • Wrappers installés /usr/local/bin/coursia-{runner,lean}-start.sh : déjà à 42 sur la machine (mission du 2026-09-21).
  • Divergence live trouvée et corrigée dans le même geste : coursia-waiters-start.sh installé déclarait encore 12 pendant que runner/lean déclaraient 42 — exactement le défaut que les commentaires des wrappers nomment (« deux jambes qui divergeraient refuseraient leurs slots l'une contre l'autre »). Aligné à 42 en live (backup coursia-waiters-start.sh.bak-budget12), unité redémarrée active, flotte idle au moment du restart (0 conteneur en vol, coût nul).
  • Cette PR porte la déclaration dans le repo pour qu'elle reste auditable — la valeur effective vit dans un fichier que l'opérateur ouvre, pas dans un défaut de shell.

Hors scope (signalé, pas touché)

  • persist/coursia-waiters-start.sh est la copie de référence du déploiement ai-01 (préfixe myia-ai-01-linux-waiter) : aucune déclaration budget, VM de cette machine inconnue de cette lane — à ai-01 d'arbitrer la sienne.
  • Le wrapper waiters installé sur po-2024 n'a pas de copie de référence dans persist/ — la divergence live a été corrigée en ops ; une copie de référence po-2024 est un sujet séparé.

Validation

  • bash -n sur les deux fichiers modifiés : OK.
  • Grep BUDGET_GB dans persist/ : aucun test n'épingle la valeur 12 (test_sentinel_purge.sh ne couvre que la sentinelle).
  • Diff : 2 fichiers, commentaires + valeur uniquement (21 insertions, 11 deletions).

🤖 Generated with Claude Code

… la VM WSL 40 Go

Arbitrage user 2026-09-21 (mission ai-01 msg-20260921T203652-qxg3en) : la VM
WSL po-2024 passe de 24 032 a 40 110 Mo. Les declarations budget des wrappers
persist/ (runner + lean) suivent : 42 Go = somme des caps declares des trois
jambes (8x1536 docker + 12x1536 waiters + 2x6144 lean = 43 008 Mo). Sous
l'ancien 12 Go, les 2 slots lean etaient refuses tant que les autres familles
etaient en vol. Les wrappers installes /usr/local/bin/ sont deja a 42 sur la
machine (live fix, waiters aligne dans le meme geste) ; cette PR trace la
declaration dans le repo pour qu'elle reste auditable.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions github-actions Bot added the variation-adjacency-deep-med Adjacence DEEP/MED hors LIGHT : §2 l'autorise si substance distincte (coordinateur) label Sep 21, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Bash Syntax Advisory — shebang / executable-bit warnings

See the Shebang + dry-run advisory job log for the per-file ::warning:: lines. Non-blocking.

@github-actions

github-actions Bot commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359) — résolue

La collision de chemins signalée sur #17322 n'existe plus au passage du 2026-09-22T01:50Z : aucune autre PR ouverte ne partage désormais de chemin de fichier avec elle. Note laissée en place de l'avertissement (retraction non destructive).

@jsboige

jsboige commented Sep 22, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 17322
head: 30ab06f
complete: true
body: read
comments-reviewed: 2
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 6188aac0c622a19eb0ac543a7edd8b89e1d0d0458eb96dab9994736cd3fdaee9
diff-files: 2
diff-additions: 21
diff-deletions: 11
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

@jsboige

jsboige commented Sep 22, 2026

Copy link
Copy Markdown
Owner Author

[INFO ripe-signal c.1395] PR #17322 narrow scope strict 1:1 ripe clean — ma lane myia-po-2024:CoursIA

Tell c.974 §G.9 strict fondateur vérif first-hand (REST API direct) :

  • narrow scope strict 1:1 ✓ (2 fichiers scripts CI runners : coursia-lean-start.sh + coursia-runner-start.sh, +21/-11 lignes)
  • MERGEABLE, 0 reviewers, 0 review formelle, 0 commentaire
  • HEAD branche : fix/runner-budget-declaration-40gb
  • Tell c.770 v3 ★★★★ vérif code COMPLET : mise à jour cohérente de constante 12 → 42 Go + commentaire narratif justifiant VM WSL 24 032 → 40 110 Mo (mission ai-01 msg-20260921T203652-qxg3en citée)
  • Tell c.A §A strict composite split obligatoire = OK (2 fichiers < 3000 lignes)
  • Tag LIGHT/tooling lane myia-po-2024:CoursIA

Tell c.594 strict respecté : worker ne merge pas (Tell c.1502 strict ×196ᵉ).
Tell c.14216 strict respecté : 0 auto-levee.
Tell c.15726 strict respecté : ripe-signal fondé sur vérif first-hand (pas spam, isolé vs batch c.1393).

Action attendue : ai-01 merge ou valide.

Rappel contexte c.1393 : 7 ripe-signaux fondés postés sur #16943 #16972 #16977 #16952 #16953 #16970 #16974 — toujours non mergés 60 min après.

@jsboige

jsboige commented Sep 22, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2025:CoursIA-2
pr: 17322
head: 30ab06f
complete: true
body: read
comments-reviewed: 4
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: faa0d8430dd01516db83ab90ebad99a8101d08cbd9505e59cc825768274c33de
diff-files: 2
diff-additions: 21
diff-deletions: 11
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

@myia-ai-01
myia-ai-01 merged commit 2d0414e into main Sep 22, 2026
19 of 20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

variation-adjacency-deep-med Adjacence DEEP/MED hors LIGHT : §2 l'autorise si substance distincte (coordinateur)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants