Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial pools feedback #7458

Open
jacogr opened this issue Apr 26, 2022 · 16 comments
Open

Initial pools feedback #7458

jacogr opened this issue Apr 26, 2022 · 16 comments

Comments

@jacogr
Copy link
Member

jacogr commented Apr 26, 2022

From #7384 (comment) by @kianenigma

  1. Pools are designed to have pretty much infinite members. While showing the count is great, I think showing the members without pagination is a dead-end.
  2. Showing the pool roles in the pool list page would be an easy addition.
  3. In the accounts -> pooled page, it is a bit hard to distinguish if an account in a pool is the member, or has a special role. For example, if I want to change the nominations of pool 1 below, I have to click the ... of Ferdie. Knowing the in this list, Ferdie is a depositor and Dave and Eve are Members is valuable info.
  4. Each pool has a bonded account and and a reward account. I see that you already "identify" the bonded account if it pops up somewhere. Is there a way to get these accounts in a simple way? They can probably be added to the pools list page.
  5. Pool management and destruction scenarios are not worked on yet. I assume this is intentional for now.
@jacogr
Copy link
Member Author

jacogr commented Apr 26, 2022

  1. When it gets above X amount, happy to swap to entriesPaged
  2. Indeed
  3. Yes, I always get confused as to who added the pool and can do the actual management myself
  4. The accounts are generated and actually used, i.e. as stash and the reward to show the balances. Not sure it is valuable to display them in a table, but will keep an eye out on questions and just add a column with the known ids if required
  5. Indeed, that will possibly be quite a long time since I now need catch-up everywhere else

@Nick-1979
Copy link
Contributor

I see the following numbers on local node:
maxPoolMembersPerPool: 32
maxPools: 16
maxPoolMembers: 512

Are these just for development or will be used for production too?

@kianenigma
Copy link

I see the following numbers on local node: maxPoolMembersPerPool: 32 maxPools: 16 maxPoolMembers: 512

Are these just for development or will be used for production too?

only for development.

@kianenigma
Copy link

Some more stuff, now that we are live on westend:

  • After selecting nominators via a pool, there's no place to see that selection. Who a pool is nominating is an important decision criteria and potential members should be able to see it.
  • Moreover, if you go the page to re-nominate, you don't see your old selection (unlike the normal nominator nomination pop-up), potentially making you think you have not set them to begin with.
  • Similar to crowdloans, your funds are moved out of your account when you join a pool and thus no longer visible in the accounts overview page. I think for both pools and corwdloans, we can have a section in an account's over view of balances (e.g. besting, locks, etc.) as "foreign balances: (tooltip) funds that are outside of your account, but you still have full sovereignty over them.". In this new section, we can show pools and crowdloan funds.

@Nick-1979
Copy link
Contributor

If pool staking is live on Westend, why can’t I find pools menu?
42B1BAE6-8D36-40C1-9591-7560946670A0

@kianenigma
Copy link

do a hard refresh, probably your UI app us cached and not up to date.

@Nick-1979
Copy link
Contributor

I am on iPhone, tried different browsers, even a new phone which never connected to polkadot.js.org before, But the same issue, no pools. Probably cached in the network path somewhere, ISPs, CDNs. But I don’t think this is the issue.

@kianenigma
Copy link

Screen Shot 2022-05-04 at 18 31 23

@Nick-1979
Copy link
Contributor

Thank you. I should try on pc, probably app is not mobile friendly, because doesn’t show bags too.

@jacogr
Copy link
Member Author

jacogr commented May 4, 2022

Unless you have accounts, it won’t show.

@jacogr
Copy link
Member Author

jacogr commented May 4, 2022

Crowdloans wont be shown in accounts - the only way to get them is to traverse the whole map, it is horrible, ineffective and very resource intensive. If that improves, sure - it it logged. Pools may be possible.

The Pool nomination uses the exact dialog as the normal nomination - so it should show the existing. There is probably an issue where they are not being passed correctly.

@kianenigma
Copy link

The Pool nomination uses the exact dialog as the normal nomination - so it should show the existing. There is probably an issue where they are not being passed correctly.

I have not seen your code, but I have a guess: When nominating with account x, Staking.nominators(x) is your old nomination. When nomination as the owner of the pool, you are not the nominator, the bonded account of the pool to which you belong is.

Does that nomination dialog receive the account that it expect to be the nominator as an input? If not, then I don't see how it can know these details.

@jacogr
Copy link
Member Author

jacogr commented May 4, 2022

It does require the stash, but it is indeed incorrect, it is not set to the pool stashId as passed through. (However, not the issue here - the nominators are passed through, so it is something else, stash is actually ignored since it is pools. Weirdly enough, it does show the current nominations on a dev network - since the nominations are not shown in the account -> Pooled, it mens there is a discrepancy between dev & westend, it does show on the former, not on the latter)

Discrepancy here -

  • Westend PalletId(*b"py/nopls");
  • Substrate PalletId(*b"py/npols");

Yes, it should use consts.palletId, but it doesn't since it check for the last one in the overall names - and thought that devs could spell :)

EDIT: Actually palletId is not exposed on consts, the Config doesn't pull through on metadata. So as it stands Westend is not really fixable, unless the new rename will pull through everywhere.

EDIT2: Also the reason the nominations are not showing in the pools list and neither will the rewards since the accounts are different on this runtime.

@Nick-1979
Copy link
Contributor

I can fetch an account's nominations in solo/regular staking using "api.query.staking.nominators", but for pool staking I can not find an api to fetch a pool's nominations. I think something like "api.query.nominationPools.nominators" is needed. right?

Thank you

@jacogr
Copy link
Member Author

jacogr commented May 5, 2022

Happy to help, but let's keep this issue really focussed on feedback relating to pools, not general "howto" queries - please log those seperately. Sadly it detracts from actual working issues and makes this much more noisy than is should be and drowns out the actual work and makes my life more difficult than it should be.

staking.nominators(poolStashId) is what you want. It is just normal staking, no need for anything else.

@kianenigma
Copy link

as per paritytech/substrate#11373, update_roles is added.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants