FeedProjects
Developers
Settings
๐ŸŽ‰ A new chapter begins: Boardroom has joined Agora
Learn more
protocol logo
Explore / Projects
Element DAO

Proposals

Members

Information

Create Proposal

Element DAO

ProposalsMembersInformation
Proposal
Back to Proposals
closedEnded 3 years ago ยท Snapshot (Offchain)

EGP-22: Removal of Non-Contributor Grants from the Vesting Vault

By 0xea17...C96676
EGP#: 22
Title: Removal of Non-Contributor Grants from the Vesting Vault
Author(s): @cpstl
Type: Protocol Proposal
Status: Proposed
Date Proposed: <yyyy-mm-dd>
Date Ratified: <yyyy-mm-dd>

References

  • Element DAO, ELFI Voting Distribution:https://mirror.xyz/0x3fcAf7DDf64E6e109B1e2A5CC17875D4a5993F39/bctuLRkf7oBL4mMJ9lPf0y0blFjBDslTUfUL0CEk1gc
  • Vesting Vault Documentation: https://docs.element.fi/governance-council/council-protocol-smart-contracts/voting-vaults/vesting-vault
  • Vesting Vault Contract: https://github.com/element-fi/council/blob/main/contracts/vaults/VestingVault.sol
  • Deployed Vesting Vault Contract: https://etherscan.io/address/0x716D4e863536aC862AD34bC4eCaCBa07d8831bEA#readContract

Sentence Summary

EGP-22 is for removing the Element Finance team-allocated token grants for those who left Element Finance before their vesting cliffs, for team Members who partially vested, or for team members who left before the vesting dates were reached.

Paragraph Summary

This proposal formalizes a solution for the removal/reclaiming of Element Finance team members-allocated token grants who departed prior to reaching the vesting vault smart contract-defined vesting cliffs, partially vested, and/or before the vesting dates were reached.

These Element Finance team-allocated token grants were distributed during the governance launch of Element DAO on March 31 of 2022. The vesting cliff was defined as 1-year from the launch date and the token vesting schedule defined was as three years after the launch date.

Motivation

The purpose of this EGP is to regain the token allocations that were given to previously employed Element team members, allowing Element Finance to be able to award new token grants to new employees and contributors.

Important note: Neither Element Finance, Inc. nor Element Finance Team members will vote on this proposal. Furthermore, Element engineers will provide purely technical comments only; they will not provide any statements on the wisdom or appropriateness of the proposal.

Specification

The VestingVault contract holds grants for various holders of the ELFI governance token. For reasons stated in the Motivation section, some grants need to be adjusted. This adjustment takes the form of updating two variables: allocation and range. allocation is what it sounds like, the number of tokens awarded after the grants vest. range refers to the specific token range to which the grants apply. As the allocations are reduced, the ranges need to be updated as well. If there is no range specified, it is left unspecified. Furthermore, as allocations are reduced, we update the unassigned value by the amount the allocation is reduced. This proposal makes no assumption about the future use of the now unassigned tokens in the VestingVault will be used.

Proposed Code

As a part of this proposal, a contract will be used to perform the necessary modifications to existing token grants. This contract can be viewed here: https://github.com/sentilesdal/council/contracts/vaults/UnfrozenVestingVault.sol

Only the method that will be called is reduceGrant().

Scripts in the above-mentioned repository will be used to deploy the upgraded contract and create and execute the proposal.

The basic idea of the proposal is that, from the Timelock contract, the following three actions will be performed on the VestingVault:

  1. Upgrade the proxy implementation of the VestingVault.
  2. Update allocation to the new amount. If the new value is zero, delete the grant. If a range is specified, update that value as well.
  3. Reset the proxy implementation of the VestingVault.

You can see the proposed values here for the creation of the proposal, assuming the proposer uses only the locking vault to satisfy the minimum voting power threshold to create the proposal.

proposalId 4
votingVaults [ '0x02Bd4A3b1b95b01F2Aa61655415A5d3EAAcaafdD' ]
extraVaultData [ '0x00' ]
targets [ '0x81758f3361A769016eae4844072FA6d7f828a651' ]
callDatas [
'0x88b49b8323a321f19d23a56e2a186b370738326477c0d9a5c6e7ecbdf1416455964e61b9'
]
proposalHash '0x80b54ecedfb8f4bddb77eda29bea0fe077ad1dfdd10be1e92f75f3e08b6a2869'
targetsTimeLock [
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A',
'0x6De73946eab234F1EE61256F10067D713aF0e37A'
]
calldatasTimeLock [
'0x74474d280000000000000000000000001d13ff25b10c9a6741dfdce229073bed652197c7',
'0xf9c251a7000000000000000000000000561c1693fd7c874763f99d0f456c0d2353c85e26000000000000000000000000000000000000000000002e69aae2e8c354700000',
'0xf9c251a70000000000000000000000007c9c99a9c0bb31c054de1bd9af546db10e35785b000000000000000000000000000000000000000000000f50f3528cc0b22d0000',
'0xf9c251a70000000000000000000000003a543655e484d9ad9ada138170254f5880b695ce0000000000000000000000000000000000000000000000000000000000000000',
'0xf9c251a70000000000000000000000009814ca52e5235e9ea7709475893645bed9a9cf430000000000000000000000000000000000000000000000000000000000000000',
'0xf9c251a7000000000000000000000000b603613b9e3f76ab26ce2a259f1db8ea5e9dc5950000000000000000000000000000000000000000000000000000000000000000',
'0xf9c251a700000000000000000000000046aa35190959c7a639ada37a99068b6740a0a5ed0000000000000000000000000000000000000000000000000000000000000000',
'0xf9c251a700000000000000000000000008627fcb1edd7006b9f71fbd5b0ec91b4d8dd50a0000000000000000000000000000000000000000000000000000000000000000',
'0xf9c251a70000000000000000000000002592998309c9a89d9eaaf7cf7cfa94db8ba877030000000000000000000000000000000000000000000000000000000000000000',
'0xf9c251a7000000000000000000000000b0ad0eea2061d1b699e6c0d353fdee59f40262bb000000000000000000000000000000000000000000006517c1dfd2e9bfce0000',
'0xf9c251a7000000000000000000000000cf0fb739fb119b4e41e872a2a1223832900f036100000000000000000000000000000000000000000000137e4cd7a1d1cd270000',
'0x74474d28000000000000000000000000716d4e863536ac862ad34bc4ecacba07d8831bea'
]
callHashTimelock '0x23a321f19d23a56e2a186b370738326477c0d9a5c6e7ecbdf1416455964e61b9'
lastCall 15964852
ballot 0

Test Cases

The code will be dry-run using Ethereum mainnet forks. Values will be inspected to make sure that they make sense and yield the intended results.

The following should be true AFTER the proposal is executed:

  • All the targeted grants have expected allocations
  • All targeted grants with range values have updated the range as expected
  • Allocations that are now zero are deleted from storage
  • NO other values should change except allocation and range

Security Considerations

  • There are several security considerations with this proposal. Most importantly, this proposal will make changes to existing token grants in the vesting vault and is therefore very sensitive. Extra care should be taken to make sure that updated values in the created proposal align with intentions.
  • The other security concern is with the smart contract used to perform the modifications to the token grants. This contract should go under audit and review to ensure that it only performs the desired changes to the smart contract and that it has no unintended consequences.

Technical Review Plan or Audit Information (If already available)

The code for this proposal is publicly available for the community to review at https://github.com/sentilesdal/council. Engineers at Element Finance, Inc have conducted internal reviews of both the smart contract updates and the code used to generate the proposal. After the proposal is made public, there should be ample time to allow the community to audit the code.

Next Steps (Voting Outcome Summary)

  1. This proposal is currently a Draft.
    1. We welcome all questions and comments over the next week, but please be advised that Element Team Members will not be able to provide comments beyond formatting and technical commentary.
  2. Once the feedback has been addressed, this will move to be officially Proposed.
  3. Once Proposed, there will be a 1 week review period before it moves to the next stage, Off-Chain Poll (Snapshot).
  4. On Snapshot, the governance community will vote for:
    1. Yes: You agree that the token grants for departed team members should be removed/reclaimed.
    2. No: You disagree that the token grants for departed team members should be removed/reclaimed.
    3. Abstain: formally decline to vote either YES or NO.
  5. If this proposal passes the Off-Chain Poll, it will proceed to the On-chain Vote, where the vote options will remain the same as on Snapshot.
  6. If this proposal passes, the proposal will officially be Accepted and the code will proceed to the Execution stage where the previously allocated token grants will be removed/reclaimed.
Continue Reading
Connect Wallet to Add Note
0
Votes 114
VoterCast PowerVote & Rationale
StableNode
372,809

Yes

0x54Be...2A7Ab6
292,932

Yes

0x9F85...285a68
247,344

Yes

0xcAb6...Dda130
230,089

Yes

elbagococina.eth
219,401

Yes

SHOW MORE
VOTE POWER
0
Connect Wallet
Proposal Status
  • Tue February 21 2023, 03:00 pmVoting Period Starts
  • Sun February 26 2023, 03:00 pmEnd Voting Period
Current Results

1-Yes

1.652M

2-Abstain

69.985

0%
Quorum 1.652M/1.1M
DocumentationBrandingContact Us
Home
This Project is Currently Disabled

If you would like to enable it, please checkout below.

Boardroom Subscription

Sign up for an individual subscription (access all projects on the platform)

Subscribe
Enable Project

Enable the entire project for every user

Enable Project
Contact Us