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

[Epic]: Vesting #18782

Open
3 of 4 tasks
tac0turtle opened this issue Dec 18, 2023 · 2 comments
Open
3 of 4 tasks

[Epic]: Vesting #18782

tac0turtle opened this issue Dec 18, 2023 · 2 comments

Comments

@tac0turtle
Copy link
Member

tac0turtle commented Dec 18, 2023

Summary

Currently vesting accounts are part of auth. This design was picked due to the reason that a vesting account is a baseaccount which is wrapped with extra features. Auth has too many functionalities and is already being worked on to reduce the entire scope of what is being done.

This issue proposes using the new x/accounts module to define vesting accounts. We would migrate the existing vesting accounts to x/accounts accounts. The vesting account would have an owner, this owner would be an address which is associated with a public and private key. For now we wont make things complicated with different forms of authentication.

Problem Definition

Auth is overloaded, removing vesting functionality from auth would help reduce overall complexity

Work Breakdown

@tac0turtle
Copy link
Member Author

We just need to handle vesting account creation in genesis.

@testinginprod any idea how to do this

@testinginprod
Copy link
Contributor

@tac0turtle we can add vesting creation as an init msg of an x/account which is run in genesis, eg:

{
    "bank" : { .. }
    "accounts": {
          "init_msgs": [
              {"type": "/lockup.MsgInit", "value": {"owner": "cosmos1234", "duration": ..., "amount": ...}}
          ]
    }
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: 🤸‍♂️ In Progress
Development

No branches or pull requests

2 participants