Skip to content

check_lane_claim : la jambe PR-ouverte ignore le périmètre paths: du claim propre #18341

Description

@myia-ai-01

Constat

check_lane_claim.py N fait tourner la jambe « PR ouvertes » (#16570) seulement quand l'appelant passe --paths. Une lane qui a déjà posé [CLAIMED] ... -- paths: p sur l'issue, puis relance check_lane_claim.py N sans --paths, obtient un CLEAR sans que les PRs ouvertes des autres lanes sur p aient é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 lisait my_paths au lieu de my_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 --paths ni 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

  • contrôle positif : claim propre paths: p + PR ouverte d'une autre lane sur p + appel sans --paths → rc 2, PR nommée ;
  • contrôle négatif : ni --paths ni claim à paths: → jambe non appelée ;
  • le positif échoue sur le code d'avant le correctif.

Activity

  1. jsboige commented on Sep 29, 2026

    @jsboige
    Owner

    [CLAIMED] lane myia-po-2027:CoursIA-2 -- fix check_lane_claim.py my_scope leg (sans --paths lit paths: du claim propre)

  2. added a commit that references this issue on Sep 29, 2026
  3. jsboige commented on Oct 1, 2026

    @jsboige
    Owner

    [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.py urne delivered + verify-before-claiming.md rè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 propre OUVERTE (tracker re-poke) gh issue view 18341 --json state → OPEN
    PR #18347 fix(coordinator,#18341): la jambe PR-ouverte lit my_scope, pas my_paths MERGED 2026-09-29T15:18:21Z gh pr view 18347 --json state,mergedAt → MERGED
    Commit correctif 48b9dc8c43 présent sur main (3 fichiers modifiés) git show 48b9dc8c43 --stat ; `git log --oneline -- scripts/check_lane_claim.py
    Code 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_scope

    Le commit body de #18347 cite d'ailleurs verbatim les 4 doublons mesurés qui fondent le correctif :

    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.md ligne 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.py LIVRE-urn picker, verify-before-claiming.md règle 5 (first-hand).

  4. jsboige commented on Oct 2, 2026

    @jsboige
    Owner

    [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).

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