-
Notifications
You must be signed in to change notification settings - Fork 838
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
(fix) allow full EVM access to unlocked tokens #1268
Conversation
ENG-1117 EVM transactions fail on vesting account for unlocked tokens when account has locked tokens
ImpactOn a vesting account, unlocked tokens can't be used on the EVM at all, meaning
Since vesting accounts are still increasing in adoption and we have a vesting UI being worked on, we should consider working on a fix soon to improve the vesting accounts implementation and fix all of its bugs. What should be happening insteadUnlocked tokens that are vested, those are free to do whatever and shouldn't be bound by the EVM or restricted. Why it happensCurrently, EVM transactions are blocked on Evmos if the account has any locked tokens, rather than if the tokens in question are locked. This is problematic because it delays access to unlocked tokens for much longer than is necessary (in many cases, this means multiple years). Possible Solution
Slack thread for context: |
… into austinchandra/ENG-1117
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## main #1268 +/- ##
==========================================
+ Coverage 72.27% 72.38% +0.10%
==========================================
Files 259 259
Lines 17640 17658 +18
==========================================
+ Hits 12750 12781 +31
+ Misses 4321 4308 -13
Partials 569 569
|
… into austinchandra/ENG-1117
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like there are a lot of duplicated test utils. Please reuse existing functions
This reverts commit af80525.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK
Description
Grant full EVM access to unlocked tokens, which by definition have no restrictions—and enable a user to make full use of their spendable balance.
By removing the
AnteHandler
locked token check, we allow thebank
module to apply its accounting logic to every EVM state-change. See the spec for more details on how this solution works.We include additional
AnteHandler
checks to make sure that if a transaction would fail because it attempts to spend unlocked tokens, we reject it and don't process it.Edits
Closes #XXX
All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.
PR review checkboxes:
I have...
Unreleased
section inCHANGELOG.md
Code maintenance:
I have...
godoc
and code comments.docs/
) or specification (x/<module>/spec/
)Reviewers Checklist
All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.
I have...
-->