Joystream / pioneer

Governance app for Joystream DAO
https://pioneerapp.xyz/
GNU General Public License v3.0
44 stars 69 forks source link

Validator dashboard QA #4743

Open thesan opened 7 months ago

thesan commented 7 months ago

:warning: Dependencies

The QA should start only once #4742 and https://github.com/Joystream/joystream/pull/4933 get merged and dev is merged into validator branch one last time.

Context

Designs

Testing environment :point_right: https://dao-git-validators-joystream.vercel.app

Scope

Dashboard itself

This should be tested at least partially on Mainnet. There has been some back and forth on how to calculate some of the values and it's important to make sure that non what is displayed is misleading to nominators. Also this page should work well in mobile:

  1. Dashboard statistic headers statistic accuracy: image
  2. Dashboard list item accuracy + interaction with the filters/ordering/pagination, etc.. image
  3. Validator cards layout + data accuracy: image
  4. The "Nominate" links: image

Binding validator accounts to memberships

It might be easier to test this on a playground. In that case Atlas dev should be fine: https://dao-git-validators-joystream.vercel.app/#/settings?network-config=https://atlas-dev.joystream.org/network/config.json

Regardless you'll need to create validator accounts on the network used for the tests.

  1. Binding a/multiple validators to a new membership.
  2. Binding a/multiple validators to an existing membership.
  3. Verify and unverifiy validator accounts via the CLI (https://github.com/Joystream/joystream/pull/4933) and check their statuses on the dashboard.
ivanturlakov commented 7 months ago

Dashboard

Tested on https://dao-git-validators-joystream.vercel.app/ Mainnet

✅ Dashboard statistic headers statistic accuracy

⚠️ Dashboard list item accuracy + interaction with the filters/ordering/pagination, etc..

⚠️ Validator cards layout + data accuracy

kdembler commented 7 months ago

No tooltip texts: CleanShot 2024-01-27 at 16 46 31@2x CleanShot 2024-01-27 at 16 46 25@2x

Unclear "Last" in rewards section. I guess it's last era? CleanShot 2024-01-27 at 16 46 36@2x

If "All" is selected in filters, there's no text in the select: CleanShot 2024-01-27 at 16 46 43@2x

Validation message shouldn't appear as I'm typing, only once I submit with Enter:

https://github.com/Joystream/pioneer/assets/12646744/168ffce3-bf87-46e4-be76-edaf4d4ba70b

When I search for something, and then remove it and confirm with Enter, the search isn't cancelled (I press Enter at the end):

https://github.com/Joystream/pioneer/assets/12646744/4ce86660-97a8-425c-a9fc-3d0d8234f8e4

eshark9312 commented 7 months ago

@kdembler @ivanturlakov I fixed most of the issues, please check with this url. https://dao-9pwmfuy5v-joystream.vercel.app/

eshark9312 commented 7 months ago

@ivanturlakov I have not fixed the apr calculation yet. (It looks correct to me.) Could you check again and let me know what the APRs should look? Total staking is about 120M (almost of the staking comes from nominators), the last month reward is about 1M then the annual reward is 12M. When the commission is 10%, then the reward for the nominators is 1.2M so the average apr is about 1%.

ivanturlakov commented 7 months ago

Retested on https://dao-9pwmfuy5v-joystream.vercel.app/ mainnet https://dao-git-fork-eshark9312-validator-dashboard-qa-joystream.vercel.app/#/validators mainnet

✅ tooltips ✅ filters/search ✅ Validator card

@eshark9312 thanks!

Pls add a minor fix for Social links Change Telegram link to "https://t.me/userName"

@kdembler what do you think about the formula for calculating expected Nominator APR? I am a Nominator and have checked my actual average APR and it ranges from 5 to 7% while the expected APR shows 1%

thesan commented 7 months ago

@ivanturlakov thank you for the quick feedback. But the correct environment is: https://dao-git-fork-eshark9312-validator-dashboard-qa-joystream.vercel.app/ (not https://dao-9pwmfuy5v-joystream.vercel.app).

On the APR thanks a lot for checking, it's very important to make sure we are not underestimating those. I'll look some more into it this week. @kdembler @eshark9312 please have look too.

eshark9312 commented 7 months ago

@ivanturlakov You are right. The APR for nominators should be calculated by the following formula: Yearly Reward * (1 - Commission) / Stake cc @kdembler @thesan

ivanturlakov commented 7 months ago

Tested on https://37.27.43.23.nip.io/pioneer/#/settings?network-config=https://37.27.43.23.nip.io/network/config.json

Binding a/multiple validators to a new membership

Trying to add two validators when creating a new user

⚠️ Strange behavior during validation - when adding the first validator, the Create button is inactive.

Screenshot 2024-02-06 at 19 50 00

But if you add an empty field for the second validator, the button is activated.

Screenshot 2024-02-06 at 19 50 09

⚠️ I added the addresses of 2 validators but only one was bound (I suspect the first one on the list). The transaction was also performed for only one validator.

Binding a/multiple validators to an existing membership

⚠️ Strange behavior during validation - when adding the first validator, the Save button is inactive.

Screenshot 2024-02-06 at 20 13 01

But if you add an empty field for the second validator, the button is activated.

Screenshot 2024-02-06 at 20 13 11

⚠️ I added the addresses of 2 validators but only one was bound (I suspect the first one on the list). The transaction was also performed for only one validator.

Screenshot 2024-02-06 at 19 50 23

⚠️ I tried to bind the second validator separately (the first one is already displayed in the profile), but when clicking Save the transaction is not initiated, but immediately shows the success window

eshark9312 commented 7 months ago

@ivanturlakov After you select the validator account(or paste the address), you have to click add button, if not it is not included to the validator accounts to be bound to your membership. And the last issue:

I tried to bind the second validator separately (the first one is already displayed in the profile), but when clicking Save the transaction is not initiated, but immediately shows the success window

I fixed it, in this case the save button should be disabled until click the add button. https://github.com/Joystream/pioneer/pull/4767

ivanturlakov commented 7 months ago

After you select the validator account(or paste the address), you have to click add button, if not it is not included to the validator accounts to be bound to your membership.

Screenshot 2024-02-08 at 10 10 49

This is not obvious logic. Validator address fields should work like a normal form field - if there is an address there, then it is valid. The add button should only be responsible for adding a new validator address field. If we leave everything as it is, we need to add an explanation (after entering the validator, press the plus button). @kdembler @thesan what you think?

ivanturlakov commented 6 months ago

Verify and unverifiy validator accounts via the CLI

Tested on https://37.27.43.23.nip.io/pioneer/#/settings?network-config=https://37.27.43.23.nip.io/network/config.json

Works as expected ✅ Verify tester-6 yarn joystream-cli working-groups:verifyValidator --group=membership 1 ✅ unVerify tester-6 yarn joystream-cli working-groups:verifyValidator --group=membership 1 ✅ Verify tester-5 yarn joystream-cli working-groups:verifyValidator --group=membership 0

Screenshot 2024-02-14 at 20 36 26 Screenshot 2024-02-14 at 20 50 05