From 267082f3c3ab222fd1c87244d32c50a7b3c30c48 Mon Sep 17 00:00:00 2001 From: Agora Governance Bot <138238379+agora-gov-bot@users.noreply.github.com> Date: Tue, 17 Dec 2024 21:39:56 -0700 Subject: [PATCH] Add EP 5.29 (#377) Co-authored-by: Greg Skriloff <35093316+gskril@users.noreply.github.com> --- app/local/config/navigation/protocol.ts | 12 ++-- docs/dao/proposals/5.29.mdx | 73 +++++++++++++++++++++++++ 2 files changed, 81 insertions(+), 4 deletions(-) create mode 100644 docs/dao/proposals/5.29.mdx diff --git a/app/local/config/navigation/protocol.ts b/app/local/config/navigation/protocol.ts index c2702c18..0c6a9925 100644 --- a/app/local/config/navigation/protocol.ts +++ b/app/local/config/navigation/protocol.ts @@ -405,6 +405,10 @@ export const navigation: SectionData[] = [ { title: 'Proposals Term 5', links: [ + { + title: '5.29 - [Executable] Funding request for Unruggable to build and operate a network of gateways', + href: '/dao/proposals/5.29', + }, { // eslint-disable-next-line quotes title: "5.28 - [Executable] Reimbursement of eth.limo's ongoing legal fees", @@ -537,8 +541,8 @@ export const navigation: SectionData[] = [ href: '/dao/proposals/5.4.1', }, { - // eslint-disable-next-line prettier/prettier - title: '5.3 - [Social] Determine ENS Labs\' next steps in eth.link litigation', + // eslint-disable-next-line quotes + title: "5.3 - [Social] Determine ENS Labs' next steps in eth.link litigation", href: '/dao/proposals/5.3', }, { @@ -735,8 +739,8 @@ export const navigation: SectionData[] = [ href: '/dao/proposals/0.3', }, { - // eslint-disable-next-line prettier/prettier - title: '0.2 - [Executable] Retrospective airdrop for accounts that owned another account\'s primary ENS 1', + // eslint-disable-next-line quotes + title: "0.2 - [Executable] Retrospective airdrop for accounts that owned another account's primary ENS 1", href: '/dao/proposals/0.2', }, { diff --git a/docs/dao/proposals/5.29.mdx b/docs/dao/proposals/5.29.mdx new file mode 100644 index 00000000..2426c01c --- /dev/null +++ b/docs/dao/proposals/5.29.mdx @@ -0,0 +1,73 @@ +export const meta = { + description: + "Fund Unruggable to build and operate a network of gateways supporting the rollout of ENSIP 19.", + emoji: "📖", + contributors: ["brantly.eth"], + proposal: { + tally: "13214174724111749338017943143826453367599509196993220699255450633508989705578", + type: "executable", + }, +}; + +# [EP 5.29] Funding request for Unruggable to build and operate a network of gateways supporting the rollout of ENSIP-19: EVM-chain Reverse Resolution + +[Temp Check Discourse link](https://discuss.ens.domains/t/temp-check-ep-x-x-funding-request-for-unruggable-to-build-and-operate-a-network-of-gateways-supporting-the-rollout-of-ensip-19-evm-chain-reverse-resolution/19902) + +## Summary + +We are requesting funding from the ENS DAO to build a production network of gateways. These gateways will support the rollout of reverse resolution for **Arbitrum, Base, Linea, Optimism, and Scroll.** We also plan to continue our research and development on the ENS protocol and actively contribute to the ENS ecosystem with a focus on resolving names from L2s. Our funding request focuses on infrastructure, talent acquisition and retention, and ongoing development to sustain this critical ENS infrastructure. + +## Request + +We are requesting **$1,200,000 USDC annually and 24,000 ENS tokens (vested over 2 years with a one year cliff).** + +This request gives consideration to the feedback on our [Temp Check](https://discuss.ens.domains/t/temp-check-ep-x-x-funding-request-for-unruggable-to-build-and-operate-a-network-of-gateways-supporting-the-rollout-of-ensip-19-evm-chain-reverse-resolution/19902) on the ENS DAO forum. + +## Executable Code + +This proposal constitutes two streams: + +- A stream of **$1,200,000 USDC** **per year** (12 months). +- A stream of **24,000 ENS** tokens over **2 years** (24 months) with a **1 year cliff** (12 months). + +![hedgey-vesting-graph.png](https://raw.githubusercontent.com/unruggable-labs/unruggable-stream/9af745ca74b3daf3b87f55014c7f4e4e307c4ffb/images/hedgey-stream-graph.png) + +Both streams are controlled directly by the ENS DAO Wallet. They can be cancelled at any time with a DAO vote should Unruggable not fulfil their promises. + +This calldata has been generated using thIs codebase: [](https://github.com/unruggable-labs/unruggable-stream/tree/dce44e0fc3a461f4f250c436101231e553829e03)[https://github.com/unruggable-labs/unruggable-stream/tree/3d3c49980defbab315b6e09385b22946dd9729b0](https://github.com/unruggable-labs/unruggable-stream/tree/3d3c49980defbab315b6e09385b22946dd9729b0), which generates and simulates execution of the below listed transactions. + +Tenderly simulation links are listed below. + +### Stream 1 - $1,200,000 USDC. + +**Platform:** [Superfluid](https://www.superfluid.finance/). + +Superfluid is a tried and tested platform for streaming funds. It has been used for nearly a year now for [**[EP5.2] [Executable] Commence Streams for Service Providers.**](https://www.tally.xyz/gov/ens/proposal/63865530602418424570813160277709124551851041237648860550576561576702951975816) + +Initialising the Superfluid stream involves **4 transactions**: + +| Description | Target Name | Target Address | Function Signature | Function Arguments | Calldata [1] | Simulation | +| --------------------------------------------------------------------------------------------------------------------------------------- | ----------- | --------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------- | +| This function approves the Super USDCx contract to spend $100,000 of USDC on behalf of the sender, the ENS DAO wallet. | USDC | [0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48](https://etherscan.io/address/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48) | `function approve(address spender, uint256 amount) external returns (bool)` | `["0x1BA8603DA702602A8657980e825A6DAa03Dee93a", 100000000000]` | `0x095ea7b30000000000000000000000001ba8603da702602a8657980e825a6daa03dee93a000000000000000000000000000000000000000000000000000000174876e800` | [Simulation](https://www.tdly.co/shared/simulation/7a33ba80-767d-4764-891f-b93690ad7b25) | +| This function 'upgrades' $100,000 USDC from the ENS DAO wallet/'Timelock' to USDCx. | USDCx | [0x1BA8603DA702602A8657980e825A6DAa03Dee93a](https://etherscan.io/address/0x1BA8603DA702602A8657980e825A6DAa03Dee93a) | `function upgrade(uint256 amount)` | `[100000000000]` | `0x45977d03000000000000000000000000000000000000000000000000000000174876e800` | [Simulation](https://www.tdly.co/shared/simulation/d564e4b9-3c5d-4e90-91f7-9ae78e32fbd1) | +| This function sets up the stream to the Unruggable multisig wallet. [2] | Superfluid | [0xcfA132E353cB4E398080B9700609bb008eceB125](https://etherscan.io/address/0xcfA132E353cB4E398080B9700609bb008eceB125) | `function setFlowrate(address tokenAddress, address receiverAddress, int96 amountPerSecond)` | `["0x1BA8603DA702602A8657980e825A6DAa03Dee93a", "0x64Ca550F78d6Cc711B247319CC71A04A166707Ab", 38026517538495352]` | `0x57e6aa360000000000000000000000001ba8603da702602a8657980e825a6daa03dee93a00000000000000000000000064ca550f78d6cc711b247319cc71a04a166707ab000000000000000000000000000000000000000000000000008718ea8ded5b78` | [Simulation](https://www.tdly.co/shared/simulation/725d872b-8174-4fa5-a60b-5d45eea1812f) | +| This function increases the amount of USDC (owned by the ENS DAO wallet/Timelock) that the Autowrap strategy contract is able to spend. | USDC | [0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48](https://etherscan.io/address/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48) | `function increaseAllowance(address spender, uint256 increment)` | `["0x1D65c6d3AD39d454Ea8F682c49aE7744706eA96d", 1100000000000]` | `0x395093510000000000000000000000001d65c6d3ad39d454ea8f682c49ae7744706ea96d000000000000000000000000000000000000000000000000000001001d1bf800` | [Simulation](https://www.tdly.co/shared/simulation/d94d705b-0025-4500-b5d0-e4eba5221abe) | + +### Stream 2 - 24,000 ENS + +Platform: [Hedgey](https://hedgey.finance/) + +Hedgey has been utilised by the ENS DAO for allocating delegateable ENS tokens to deserving ecosystem participants. + +Initialising the Hedgey stream involves **2 transactions**: + +| Description | Target Name | Target Address | Function Signature | Function Arguments | Calldata [1] | Simulation | +| --------------------------------------------------------------------------------- | -------------------- | --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | +| Approve the `BatchPlanner` to spend 24,000 ENS tokens owned by the ENS DAO Wallet | ENS Token | [0xC18360217D8F7Ab5e7c516566761Ea12Ce7F9D72](https://etherscan.io/address/0xC18360217D8F7Ab5e7c516566761Ea12Ce7F9D72) | `function approve(address spender, uint256 amount) external returns (bool)` | `[ "0x3466EB008EDD8d5052446293D1a7D212cb65C646", 24000000000000000000000 ]` | `0x095ea7b30000000000000000000000003466eb008edd8d5052446293d1a7d212cb65c6460000000000000000000000000000000000000000000005150ae84a8cdf000000` | [Simulation](https://www.tdly.co/shared/simulation/82838efa-2dda-4660-abf7-991f2787388a) | +| Create the Vesting Plan. Tokens vested over 24 months, with a 12 month cliff. [3] | Hedgey Batch Planner | [0x3466EB008EDD8d5052446293D1a7D212cb65C646](https://etherscan.io/address/0x3466EB008EDD8d5052446293D1a7D212cb65C646) | `function batchVestingPlans(address locker, address token, uint256 totalAmount,(address recipient, uint256 amount, uint256 start, uint256 cliff, uint256 rate)[], uint256 period, address vestingAdmin, bool adminTransferOBO, uint8 mintType)` | `["0x1bb64AF7FE05fc69c740609267d2AbE3e119Ef82", "0xC18360217D8F7Ab5e7c516566761Ea12Ce7F9D72", 24000000000000000000000, [["0x64Ca550F78d6Cc711B247319CC71A04A166707Ab", 24000000000000000000000, 1735065935, 1766601935, 380517503805175]], 1, "0xFe89cc7aBB2C4183683ab71653C4cdc9B02D44b7", true, 4]` | `0x94d37b5a0000000000000000000000001bb64af7fe05fc69c740609267d2abe3e119ef82000000000000000000000000c18360217d8f7ab5e7c516566761ea12ce7f9d720000000000000000000000000000000000000000000005150ae84a8cdf00000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000fe89cc7abb2c4183683ab71653c4cdc9b02d44b700000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000100000000000000000000000064ca550f78d6cc711b247319cc71a04a166707ab0000000000000000000000000000000000000000000005150ae84a8cdf00000000000000000000000000000000000000000000000000000000000000676b014f00000000000000000000000000000000000000000000000000000000694c34cf00000000000000000000000000000000000000000000000000015a1422a526f7` | [Simulation](https://www.tdly.co/shared/simulation/d33f9323-8ec0-4402-a458-265b7fa546f7) | + +[1] You can deep dive into this calldata at the following link: [https://ethtools.com/calldata-collections/unruggable-executable-proposal](https://ethtools.com/calldata-collections/unruggable-executable-proposal) + +[2] `38026517538495352` represents $0.038.. USDC per second noting that USDC has 18 decimals and there are `31556926` seconds in a year. + +[3] `period`, and `mintType` arguments are taken from the Hedgey documentation: [https://hedgey.gitbook.io/hedgey-community-docs/for-developers/technical-documentation/token-vesting/integration-and-direct-contract-interactions](https://hedgey.gitbook.io/hedgey-community-docs/for-developers/technical-documentation/token-vesting/integration-and-direct-contract-interactions)