Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Stakes will likely be traded in secondary markets at some point, even if DXDStake is not transferrable, and that's ok. Taking into account that it's not possible to enforce at the smart contract level the non-transferability of stakes, it could be a good feature to add transfer and approval functions to stakes.
With or without this feature, we should also reconsider if permissionless withdrawals are needed or not (see #322). I think that using, selling or lending DXD influence and immediately withdrawing is a security risk, especially if there is a chance that a big percentage of DXD influence end up having this property. The DXD influence someone gets by owning locked DXD is not just a reward for having staked, but it's a way to incentivize long-term decision making. If at some point most stakers end up having DXD influence that is not attached to locked DXD but to liquid DXD, governance might weaken and the incentive that new holders have to stake will decrease (why would you lock a significant amount of DXD for years if most of the voting power can exit immediately anytime?).
Waiting for feedback before implementing these features further (approvals and tests were not implemented yet).