smith-members
Compare changes
- Cédric Moreau authored
@@ -4,7 +4,6 @@ use pallet_authority_members::SessionIndex;
Closes #168 (closed).
Nouvelle palette visant à remplacer l'implémentation actuelle de la WoT Smith.
Avancement :
// TODO
sImpacts si adoptée :
duniter-wot
n'est plus instanciée (ni membership
ni certification
) : réalisé dans cette MRmembership
, exploitée seulement pour la WoT principale, pourrait disparaître (voir explication ici) : non réalisé dans cette MRLa palette s'intercale entre la palette membership
et authority-members
.
Son rôle est de définir qui est Smith, c'est-à-dire qui fait partie du groupe de personnes capables d'interagir avec la palette authority-members
et plus spécifiquement la méthode go_online()
.
La palette :
authority-members
pour avoir un contrôle sur go_online()
OnSmithDelete
qui notifie authority-members
qu'un Smith a perdu son statut et donc qu'une autorité, éventuellement online, doit être exclue (via OutgoingAuthorities)IsWoTMember
implémenté par la palette membership
qui fournit qui est membre de la WoT (car seuls les membres peuvent devenir Smith)OnIdtyChange
de la palette identity
afin de retirer le statut Smith à qui perd le statut membre de la WoT
Je suis parti de l'idée que nous souhaitions conserver une toile Smith à peu près sur les mêmes règles que l'actuelle, à savoir :
J'ai toutefois changé quelques éléments :
authority-members
)go_online()
Pour devenir Smith un membre de la WoT doit :
Et c'est tout. A partir du moment où l'étape 3 est atteinte, le Smith peut :
go_online()
Un Smith ne peut pas rester éternellement Smith et offline. Le but d'être Smith est de mettre en place un nœud validateur.
De ce fait, un Smith expire au bout de SmithInactivityMaxDuration
sessions. Dans ce cas, le Smith arbore un statut Excluded
et perd toutes ses certifications.
Toutefois, les certifications valides (c-à-d celles dont le bénéficiaire est Smith) restent comptabilisées au cas où le smith exclu redevenait Smith par la suite : il ne faudrait pas qu'il puisse artificiellement gonfler son stock par entrée/sortie du cercle des smiths.
Un Smith exclu peut redevenir Smith. Mais il doit recommencer tout le processus et recevoir des certifications en repartant de zéro.
Chaque Smith dispose d'un stock de MaxByIssuer
certifications valides qu'il peut émettre.
Les certifications n'ont plus de date d'expiration : celles-ci sont données "à vie de Smith non exclu". L'idée est de récompenser le comportement de Smith actif, c'est-à-dire qui est online de façon stable (ou devient offline pendant de courtes durées).
Un Smith exclu peut redevenir Smith. Ce processus d'entrée/sortie n'influe pas sur le stock d'émission MaxByIssuer
qui reste le même peu importe le nombre d'entrée/sortie de la toile Smith effectuées. Ce qui augmente ou diminue son stock de certification est uniquement lié à l'émission des certifications réalisées, ou à la perte de statut Smith des autres membres forgerons.