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

Add a function to pbo_delegation_pool.move that allows the vesting schedule to be changed if there are no principle stakeholders #153

Open
isaacdoidge opened this issue Dec 29, 2024 · 2 comments
Assignees
Labels
enhancement New feature or request

Comments

@isaacdoidge
Copy link
Collaborator

pbo_delegation_pool.move does not currently support modifying the vesting/lockup schedule of a DelegationPool once it has been created. At genesis, we created many pools with the PBO Plan 1 vesting schedule, but only ended up using 10 of them for this purpose. We now need to allocate another 10 (or so) pools for PBO Plan 2, and also need to be able to onboard the nodes of operators who participated in the final investment round before the exchange listing. Both of these requirements involve custom vesting schedules, so the only way to support them at the moment is to retire some of the existing pools and create new ones with the required schedules, which in turn requires enabling new nodes to join the validator set, which in turn requires the admin privileges currently granted by pbo_delegation_pool.move to be greatly restricted (since members of the public who have accumulated enough SUPRA will be able to create their own validators and must not be allowed to abuse any delegators that they manage to recruit). However, if we could update the schedules of pools without principle stakeholders (i.e. stakeholders with stake locked by the vesting schedule), which is the case for most of our pools, then we would be able to use our existing delegation pools for the new allocations, which will greatly simplify the integration process.

@isaacdoidge isaacdoidge added the enhancement New feature or request label Dec 29, 2024
@isaacdoidge
Copy link
Collaborator Author

isaacdoidge commented Dec 30, 2024

There is no way to tell if a delegation pool has no principle stakeholders. If we go ahead with this then we will have to allow the update to occur without this check. This should be fine while the foundation controls all delegation pools as we can manually ensure that we only ever update pools without principle stakeholders, but will need to be removed when the validator set is opened to the public.

@isaacdoidge
Copy link
Collaborator Author

Dr Joshi has clarified that we can use the cumulative_unlocked_fraction to determine whether it is safe to update the vesting schedule. This value will be zero for all delegation pools that do not have locked stakers, as well as for those for which no locked staker has yet tried to unlock their stake.

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

No branches or pull requests

2 participants