Ancien membre de retour avec seulement 4 certifications

Mon intuition s’est vue confirmée par l’analyse suivante :

:information_source: N.B.: Opérations à réaliser depuis l’environnement de développement, c’est-à-dire après

git clone https://git.duniter.org/nodes/typescript/duniter.git -b dev
yarn
  1. Lancer une synchro jusqu’au bloc précédent l’anomalie :

    bin/duniter sync g1.cgeek.fr 284604
    
  2. Puis mettre un point d’arrêt sur la ligne suivante #888 :
    image
    Ce code est la partie que je soupçonnais de mal compter le nombre de certifications lors de l’entrée / le renouvellement de l’adhésion du membre. Ce code reflète le protocole (regarder la règle BR_G27).

  3. Et enfin exécuter la commande qui “pull” (tire vers le nœud local) le bloc suivant #285605 :

    bin/duniter pull g1.cgeek.fr 285605
    
  4. Que voit-on ? Le protocole compte 2 certifications existantes :
    image
    Et 3 certifications entrantes :
    image
    Et bien entendu si j’évalue l’expression :
    image
    Bingo ! GerardSiegle rentre parce que le protocole compte 2 fois la même certification (celle entrante existe déjà dans la blockchain). On obtient 2 + 3 >= 5 => true.

Bref, tout cela est parfaitement conforme au protocole. De ce point de vue il n’y a pas de bug.

Oui mais, relativement à la licence, il y a bien un soucis. Manifestement GerardSiegle est rentré avec 4 certifications.

Du coup, des avis pour patcher le protocole ? :slight_smile:

5 Likes