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

Remove staking controller account logic from pallets & runtimes #5449

Draft
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

rossbulat
Copy link

@rossbulat rossbulat commented Aug 23, 2024

This PR removes controller logic from pallets & chain specs. Tracking issue: #2500

Prerequisites before merging

This PR should be merged once the following tasks have been completed:

  • restore_ledger has been executed on Polkadot, that fixes corrupt ledger state items. Polkadot Forum tracking thread here
  • update_payee has been executed on Polkadot, migrating all RewardDestination::Controller entries to RewardDestination::Account(controller) entries.
  • deprecate_controller_batch calls have been executed on Kusama and Polkadot, that updates all unique controllers to the corresponding stash address.

Once these prerequisites have been completed, it will be safe to bump the staking pallet with the updates of this PR.


Pre-merge checklist

  • Update prdoc with more detailed changes.
  • Re-generate staking benchmarks.
  • Notify CI team of changes.

Controller deprecation

  • Remove deprecate_controller_batch call from staking pallet and MaxControllersInDeprecationBatch across codebase.
  • Remove set_controller call from staking pallet.
  • Update staking calls that require controller as origin to be stash instead.
  • Remove update_payee call from staking pallet.
  • Remove maybe_controller param from restore_ledger.
  • Tidy up testing_utils to not provide controller accounts.
  • Update tests to not consider controller accounts. ddb8256
  • Remove controller account associated data from mocks and chain specs. 714f2f9, ce82d98
  • Update fast-unstake calls that require controller as origin to be stash instead.
  • Ensure high level pallet docs no longer mention controller accounts, but mention proxies.
  • Draw down usage of Bonded storage.
  • Remove controller related tests (restore ledger tests).
  • Remove StakingAccount::Controller from staking ledger.
  • Explore migration to remove Bonded storage.

@rossbulat rossbulat requested review from acatangiu and a team as code owners August 23, 2024 11:30
@paritytech-cicd-pr
Copy link

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable 1/3
Logs: https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/7207451

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

Successfully merging this pull request may close these issues.

2 participants