Soldes des comptes au genesis v2

Je suis en train de travailler sur le parsing du genesis et notamment à le rendre plus explicite et plus souple.

Notamment, plutôt que de bloquer à la moindre erreur, je log avec différents niveaux (à exécuter avec RUST_LOG=info).

Par exemple, il est possible d’avoir des portefeuilles sous le dépôt minimal (EXISTENTIAL_DEPOSIT), mais c’est non souhaitable car on ne souhaite pas que ce soit le cas (d’où les tests de cohérence du stockage ou “Sanity tests”). Donc je log en mode WARN pour l’instant.

Par contre, pour les identités du genesis, il est possible que le portefeuille associé soit en dessous du dépôt minimal, l’identité étant un facteur suffisant pour les conserver. Mais ça peut être perturbant pour les utilisateurs d’avoir un comportement différent pour les comptes membres et les comptes portefeuille. Donc je log en mode INFO.

[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C5Vg3rVzKrUyhMq9uThAG7k5sP8sKurXr2Mzyucgkb2dTLs has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C5YfjAyZnLPfyMQNreng5knFW87PRTVphRhPUXpWszF7sB9 has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C5cqT627GvKmwLA6De1gagNZN88iEfPt7jqs1L3sosByDuJ has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C5ioA7vY4VK5QrGGWWiAqnH6KxbPiFPBAaE3LPFUz1gZuH4 has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C5vtQgebHMRmbvKe8Y8jPjQkyjMnVysQxyv7Zdmw2kNoGC7 has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C6Fg5QgZAWHiyUiSwpmrcxTa99NQPwJDTcLNrnSd66nyLnG has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C6bhfZBiPoTRx7vbX6KzDZmqbu48V66rVdcmCG37SPLbeZq has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C6mKPNERGCFcgdGeDXs2NvzD2ehgPPhYppyF9oKqXwd7iQB has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C6mgyMRLCaargyEQMHWbHP9L1fh1cxg2XWPBKEmNqq6N4rv has 100 which is below 200
[2022-12-16T10:03:14Z WARN  duniter::chain_spec::gen_genesis_data] 5C6oiwMgxfAKLv13R3QwftnoQH3etSW1D6XdHN41g8kY9vEV has 100 which is below 200
...
[2022-12-16T10:03:15Z WARN  duniter::chain_spec::gen_genesis_data] 5HpsbhTyWorsuCEtdXFTetXzt2dVmSTxLM8JirJ91uR7YSE8 has 100 which is below 200
[2022-12-16T10:03:15Z WARN  duniter::chain_spec::gen_genesis_data] 5HpuPtJHeS4XTbBa6DXahynYp8gkeZTkn5M9He2YcPV4LjNp has 100 which is below 200
[2022-12-16T10:03:15Z WARN  duniter::chain_spec::gen_genesis_data] 5Hq67JJ8r5LGsVSpF8bPzQPLA2Y4XH2aD7hmypM6EGMYEcsy has 100 which is below 200
[2022-12-16T10:03:15Z WARN  duniter::chain_spec::gen_genesis_data] 5HqitxA6F75GXvNRi4MfSYBAsgRt9PCCdTzQ9oM5ne4RzpjD has 100 which is below 200
[2022-12-16T10:03:15Z WARN  duniter::chain_spec::gen_genesis_data] 5HqsTnoeUcYKw6v5s9yCUD1W5Bdr6kTDUvBjm5f8HkDSDjpF has 100 which is below 200
[2022-12-16T10:03:15Z WARN  duniter::chain_spec::gen_genesis_data] 5HqwqD6yodqy56iu6S4LaHZzXvrYRPLCia3tsV6FTAs98Bne has 100 which is below 200
[2022-12-16T10:03:15Z INFO  duniter::chain_spec::gen_genesis_data] Estellea has 0 which is below 200
[2022-12-16T10:03:15Z INFO  duniter::chain_spec::gen_genesis_data] Jerome035 has 0 which is below 200
[2022-12-16T10:03:15Z INFO  duniter::chain_spec::gen_genesis_data] Pier56 has 0 which is below 200
[2022-12-16T10:03:15Z INFO  duniter::chain_spec::gen_genesis_data] reididflorent has 0 which is below 200

Je propos de vider les portefeuilles concernés vers la trésorerie et d’utiliser la trésorerie pour alimenter les comptes membres pour qu’ils atteigent le dépôt existentiel.

2 Likes

Il faudrait peut-être communiquer sur le fait que les compte ayant moins de 2 ğ1 risquent de disparaitre au moment de la migration, pour inciter chacun à faire le nécessaire.

1 Like

Oui, bien sûr, il faut juste choisir ce qu’on en fait avant de communiquer !

1 Like

L’idée, c’est que si on communique, il n’y aura rien à en faire :innocent:

Pas forcément, c’est facile d’envoyer moins de 2 G1 sur une adresse connectée à rien. Et prévoir du code pour 3 ou 200 adresses ça change rien.

1 Like

Voilà en gros à quoi ça pourrait ressembler :

amount_treasury 89704
number_wallets_emptied 880
amount_wallets_emptied 90504
number_identities_filled 4
amount_identities_filled 800

Donc 880 wallets avec moins de 2 Ğ1 sont vidés pour un total de 905.04 ĞDev prélevées.
Cela permettrait d’alimenter les 4 identités qui ont 0 Ğ1 (pas encoure touché leur premier DU) pour un total de 8 ĞDev. Et il reste 897.04 ĞDev en trésorerie.

1 Like

Je reprends ce sujet, parce que le montant existant sur la trésorerie est important : comme la trésorerie sert à collecter les frais de transaction, elle ne doit pas passer en dessous du dépôt existentiel, sinon le système de compte n’est pas content. Donc il faut prévoir d’alimenter la trésorerie au genesis pour ne pas avoir à créer son dépôt existentiel ex nihilo.