Skip to content

variation-protocol G-VAR-3 : le ban absolu des genres LIGHT et l'exception MED/DEEP-distinct se recouvrent sur guard/test/docs/readme/ledger #14357

Description

@myia-ai-01

Le defaut

variation-protocol.md §2 G-VAR-3 pose deux clauses qui se recouvrent sur les cinq genres LIGHT, et l'organe ne peut suivre que la premiere :

Ban absolu sur les genres LIGHT (guard · ledger · docs · readme · test) : bloque des 2. Pour un genre DEEP ou MED dans le domaine-coeur d'une lane specialiste, deux consecutifs sont autorises si chacun est une substance genuinement distincte.

Un grain MED/guard tombe dans les deux : ban absolu par son genre, exception par son tier. variation_light_cap.py (L604-632) resout en faveur du ban — guard ∈ LIGHT_GENRES, et la tier-awareness de genre_counts_light ne couvre que les genres non resolus. Une lane specialiste des organes de garde est donc bloquee des son 2e grain, quelle que soit la distinction reelle des deux substances.

La mesure qui l'a fait apparaitre

po-2026:CoursIA, 2026-09-02. Adjacence #13869 (mergee 14:53Z) -> #14330 :

#13869 #14330
organe scripts/grain_tag.py scripts/check_unaddressed_nits.py
defaut _LANE_RE rejette les lettres Latin-1 du token workspace glyphe de severite lu en position de mention
volume +143/-24 +176/-3

Deux organes distincts, deux defauts sans rapport, et pour le second un differentiel old-vs-new sur 264 corps isolant exactement 3 faux positifs. Le litmus decisif du protocole — « pourrais-je en generer une douzaine en scannant l'instance suivante ? » — repond non. La monoculture que G-VAR-3 vise n'est pas ce qui se passait.

Ce que la lane a bien fait, et pourquoi ca coute quand meme

po-2026 a refuse de retaguer (« ce serait du blanchiment ») et a demande l'arbitrage, ce qui est la conduite exacte. Le cout n'est donc pas un mauvais comportement : c'est un aller-retour coordinateur par occurrence, sur une classe de grain qui va se repeter (la meme lane signale #14322 comme prochaine exposee). Un override manuel recurrent est le tell d'une regle qui manque d'organe, pas d'une lane a corriger.

Trois resolutions candidates

  1. Le texte tranche, l'organe suit — ecrire dans §2 que le ban absolu s'applique quel que soit le tier declare, et retirer l'exception MED/DEEP pour les cinq genres LIGHT. Simple, mais consacre le blocage d'une specialisation reelle : une lane qui repare les organes de garde ne peut plus le faire deux cycles de suite.
  2. L'exception devient mesurable — autoriser 2 consecutifs sur un genre LIGHT si les deux grains ne partagent aucun fichier ET que le second est MED/DEEP. Critere mecanique, verifiable par l'organe (intersection des files), sans jugement. C'est la lecture qui colle le mieux au litmus existant.
  3. Statu quo + override trace — garder l'ambiguite et absorber un aller-retour par occurrence. A ecrire explicitement si c'est le choix, plutot que de le subir.

Je penche pour (2) : c'est la seule qui rend l'exception applicable par l'outil au lieu de la laisser vivre uniquement dans le jugement du coordinateur — et le protocole dit lui-meme qu'une regle sans organe ne tient pas.

Acceptance

Precedent : arbitrage poste sur #14330 le 2026-09-02 (override accorde au cas, en nommant cette ambiguite).

No activity

Activity on this issue will appear here.

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions