Skip to content

[COORD] 23 PRs bloquees et orphelines : sans tag Grain, invisibles au garde de reparation de chaque lane #13086

Description

@myia-ai-01

Constat

Au 2026-08-26T08:20Z, 23 PRs ouvertes et bloquees echouent toutes sur le meme check requis — Require Grain tag (block on absent, ...) de variation-tag-guard.yml — parce qu'aucune ne porte de ligne Grain: dans son body.

Mesure, avec son controle positif (le zero d'un detecteur ne vaut rien sans lui) :

#12627 (mergee, check SUCCESS) -> ligne 1 : "Grain: MED/notebook-python — lane myia-po-2025:CoursIA — prev: MED/qc #12611"
23 PRs bloquees               -> `grep -ic grain` sur le body = 0  (zero occurrence, pas zero ligne conforme)

Le garde n'est pas en cause et n'est pas neuf : il vit depuis fee88b166 (2026-08-19), corrige jusqu'a a8f96fafb (2026-08-24), et rend SUCCESS sur les PRs correctement taguees mergees ce matin. L'omission est reelle.

Le defaut structurel — un piege qui se referme

Ces 23 PRs ne sont pas simplement rouges : elles sont orphelines, et par le meme mecanisme qui les rend rouges.

  1. Le tag Grain: porte la clause lane <machine:workspace> — c'est le seul rattachement d'une PR a une lane, la flotte poussant massivement sous jsboige.
  2. Le garde « une lane repare son propre rouge d'abord » (proactive-coordination.md R5) selectionne les PRs bloquees par lane.
  3. Une PR sans tag n'appartient donc a aucune lane, n'apparait dans le rouge de personne, et n'est jamais reprise.

pick_idle_grain.py le dit deja explicitement en pied de sortie (« ne sont imputables a aucune lane -- ce garde ne les voit pas. Leur tag manquant est lui-meme le defaut a corriger ») : l'outil sait, mais l'information n'atteint aucun acteur qui agisse. C'est un signal sans destinataire.

Le resultat est un residu qui grossit en silence : 23 PRs sur ~48 h (creees du 08-24T21:44 au 08-26T02:40), soit du travail ecrit, pousse, et perdu de vue.

Ce qui manque — un organe, pas de la vigilance

Le rappel « n'oubliez pas le tag » a deja ete fait et ne tient pas. Deux pistes, non exclusives :

  • (a) Rendre l'omission visible a son auteur au moment ou elle se produit. Le garde echoue deja, mais son message se noie dans un rollup de dizaines de checks en file. Un commentaire sticky nommant explicitement le geste (« ajoute Grain: <TIER>/<GENRE> — lane <machine:workspace> — prev: <...> #<PR> en tete de body ») serait lu.
  • (b) Router les orphelines vers un destinataire. Soit vers l'auteur GitHub quand il est discriminant (ici : 11 des 23 sont de myia-po-2023, directement attribuables), soit vers le coordinateur comme file explicite — le harnais dit deja que « le rouge sans lane est a ai-01 », mais rien ne la lui presente : il faut la deriver a la main depuis --json unattributed_blocked.

La piste (b) a un cout nul cote lane et rend le residu adressable ; la (a) previent sa formation. Les deux ensemble ferment la boucle.

Liste au 2026-08-26T08:20Z

myia-po-2023 (11) : #13062, #13035, #13027, #13026, #13019, #13017, #13016, #12882, #12876, #12875, #12866
jsboige (12) : #13007, #13006, #13001, #12999, #12997, #12994, #12980, #12979, #12951, #12949, #12849, #12829

Les 11 premieres sont attribuables par auteur et repartent vers leur lane. Les 12 secondes exigent une derivation (claim d'issue liee, nom de branche) — c'est precisement le travail que le tag existe pour eviter.

Note

Deux de ces PRs (#12951 « levee narree ne leve plus », #12949 « close-the-loop Hermes ») corrigent le merge-gate lui-meme, et se trouvent bloquees par ce piege. Meme famille que #13083 et #13022 : un ecart entre ce que la prose prescrit et ce que les organes voient.

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

    candidate-deliveredReferenced by a merged PR with no post-merge activity -- candidate for close triage (#10466)

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions