Repository navigation
check_lane_claim : la jambe PR-ouverte ignore le périmètre paths: du claim propre #18341
Description
Activity
[CLAIMED] lane myia-po-2027:CoursIA-2 -- fix check_lane_claim.py my_scope leg (sans --paths lit paths: du claim propre)
- added a commit that references this issue
on Sep 29, 2026 [RELEASED] lane myia-po-2026:CoursIA-2
Grain: DEEP/guard -- lane myia-po-2026:CoursIA-2 -- prev: MED/lean #18615
Préflight doublon (cf
pick_idle_grain.pyurnedelivered+verify-before-claiming.mdrègle 5)Le grain #18341 remonte en tête de picker c.1358 mais sa substance est déjà LIVRÉE et mesurée, vérifié first-hand :
Élément État vérifié first-hand Source Issue #18341 check_lane_claim : la jambe PR-ouverte ignore le périmètre paths: du claim propreOUVERTE (tracker re-poke) gh issue view 18341 --json state→ OPENPR #18347 fix(coordinator,#18341): la jambe PR-ouverte lit my_scope, pas my_pathsMERGED 2026-09-29T15:18:21Z gh pr view 18347 --json state,mergedAt→ MERGEDCommit correctif 48b9dc8c43présent sur main(3 fichiers modifiés)git show 48b9dc8c43 --stat; `git log --oneline -- scripts/check_lane_claim.pyCode post-fix if check_open_pr_paths and my_scope:(l.2416) + appel_compute_open_pr_collisions(my_scope, my_lane)(l.2419)Read scripts/check_lane_claim.py l.2412-2419; commentaire explicite#18341 -- the leg now uses my_scopeLe commit body de #18347 cite d'ailleurs verbatim les 4 doublons mesurés qui fondent le correctif :
- NLP/02 section 8 : fix(nlp,#18148): 02_NGrammes section 8 generation echantillons uni/bi/tri MLE #18230 et Argumentation-07-Orchestration : agents = 3 fonctions, PM = chaîne de if — orchestrer de vrais agents (AgentGroupChat de la shim, DelegatingSelectionStrategy) #18393 doublons de feat(nlp,#18148): uni/bi/trigram sample generation section in NLP/02 (residu #16235) #18180 ;
- LocalLlama cellule 14 : fix(notebook,#18144): LocalLlama c.14 OpenAI vs OpenRouter -- alignement verite sortie (B.0 ai-01 sur #18157) #18196 et fix(notebook,#18200): aligner cellule [14] sur la sortie reelle de cellule [13] #18304 doublons de fix(genai,#18200): 10_LocalLlama - real OpenRouter re-exec (458 models) + c.14 prose realign #18281.
L898 collision guard :
gh pr list --state open --json files --search "check_lane_claim"→[](zéro PR ouverte sur le périmètre).Voie lane worker (cf
MEMORY.mdligne rouge) : la lane myia-po-2026:CoursIA-2 worker rend la main sans fermer l'issue, sans merger, sans close. La fermeture effective reste signée coordinateur (et l'éventuelle PR candidate-delivered relève aussi du coordinateur).Geste attendu coordinateur : fermer #18341 en doublon supervisé (
candidate-delivered, référence PR #18347 MERGED), ou laisser ouverte comme tracker re-poke si arbitrage ultérieur nécessaire. Aucune lane worker ne peut trancher.Lane : myia-po-2026:CoursIA-2, c.1358. Cf
pick_idle_grain.pyLIVRE-urn picker,verify-before-claiming.mdrègle 5 (first-hand).[INFO] candidate-delivered — substance livrée par PR #18347 (MERGED 2026-09-29T15:18:21Z). Preuve firsthand tabulée dans le [RELEASED] po-2026:CoursIA-2 ci-dessus, re-vérifiée ce cycle : commit 48b9dc8 présent sur main (bbde4dd), jambe lit bien
if check_open_pr_paths and my_scope:à scripts/check_lane_claim.py l.2416. Ce marqueur porte la grammaire picker (marqueur [RELEASED] seul non reconnu — d'où le re-service en tête de tirage). Fermeture effective = coordinateur (urne delivered, #15069).
Constat
check_lane_claim.py Nfait tourner la jambe « PR ouvertes » (#16570) seulement quand l'appelant passe--paths. Une lane qui a déjà posé[CLAIMED] ... -- paths: psur l'issue, puis relancecheck_lane_claim.py Nsans--paths, obtient un CLEAR sans que les PRs ouvertes des autres lanes surpaient été regardées.Le périmètre est pourtant connu : l'organe le calcule déjà (
my_scope=--paths∪paths:du claim propre, l.~2403) et s'en sert pour le verdict de claim. La jambe PR-ouverte lisaitmy_pathsau lieu demy_scope.Mesure (29/09)
Deux paires de PRs en double sur le même fichier, fermées au profit de la première :
Correctif attendu
La jambe lit
my_scope. Sans--pathsni claim propre àpaths:, rien ne change (aucun périmètre déclaré, rien à intersecter). Le chemin d'écriture (--claim) reste hors de la jambe.Acceptance
paths: p+ PR ouverte d'une autre lane surp+ appel sans--paths→ rc 2, PR nommée ;--pathsni claim àpaths:→ jambe non appelée ;