Proposing a new Multicall Installation
It’s been 3 months since we installed the initial MultiCall Plugin on Mainnet and it’s a good time to discuss some new requirements for additional protocols to be whitelisted & general ideas for improvements – Let’s use this thread to define a new Multicall installation.
Specific MultiCalls
We currently do use one MultiCall plugin that allows us to connect to a defined list of protocols. While this keeps us secure and makes a lot of things simple, there are some downsides of using the same governance parameters for different use cases – Just one example: Having a 7 days voting period to provide some big chunks of liquidity on Swapr from the DXdao treasury seems reasonable, 7 days to update an ENS domains on the other side? Mhhhh, could go faster!
Why not using different Multicalls that give us some more flexibility and allows us to move faster where needed (@AugustoL was speaking about this idea already months back). Let’s use three specific Multicalls:
-
Quick Multicall (3 days execution time)
Used to execute technical / product-specific proposals -
Safe Multicall (8 days execution time)
Used to execute mature / critical governance proposals -
Open Multicall (14 days execution time)
Allows to interact with any protocol (no whitelist)
Multicall Governance Params:
1.Quick Multicall
Protocol whitelist:
- TokenRegistry: 0x93db90445b76329e9ed96ecd74e76d8fbf2590d8
- ENSRegistrywithFallback: 0x00000000000c2e074ec69a0dfb2997ba6c7d2e1e
- ENSETHRegistry: 0x57f1887a8bf19b14fc0df6fd9b2acc9af147ea85
- ENSPublicResolver: 0x4976fb03c32e5b8cfe2b6ccb31c09ba78ebaba41
- ENSPublicProvider: 0x226159d592e2b063810a10ebf6dcbada94ed68b8
- Radicle Registry (New): 0x37723287Ae6F34866d82EE623401f92Ec9013154
Governance params:
- Boosted Vote Period Limit: 2 days (172800 seconds)
- DAO Bounty Constant: 10
- Proposal Reputation Reward:0 REP
- Minimum DAO Bounty: 250 GEN
- Pre-Boosted Vote Period Limit: 1 day (86400 seconds)
- Queued Vote Period Limit: 7 days (604800 seconds)
- Queued Vote Required: 50%
- Quiet Ending Period: 2 days (172800 seconds)
- Threshold Constant: 1.2
- Voters Reputation Loss:0%
2. Safe Multicall
Protocol Whitelist:
- Bonding Curve: 0xa1d65E8fB6e87b60FECCBc582F7f97804B725521
- DXswapFeeReceiver: 0xc6130400c1e3cd7b352db75055db9dd554e00ef0
- DXswapFeeSetter: 0x288879b3cafa044db6ba18ee638bbc1a233f8548
- GnosisProtocolRelayer: (Waiting for deployment)
- SwaprLiquidityRelayer: (Waiting for deployment)
Governance params:
- Boosted Vote Period Limit: 7 days (604800 seconds)
- DAO Bounty Constant: 10
- Proposal Reputation Reward:0 REP
- Minimum DAO Bounty: 250 GEN
- Pre-Boosted Vote Period Limit: 1 day (86400 seconds)
- Queued Vote Period Limit: 21 days (1814400 seconds)
- Queued Vote Required: 50%
- Quiet Ending Period: 2 days (172800 seconds)
- Threshold Constant: 1.2
- Voters Reputation Loss:0%
3. Open Multicall
Protocol Whitelist:
- No whitelist
Governance params:
- Boosted Vote Period Limit: 13 days (1123200 seconds)
- DAO Bounty Constant: 10
- Proposal Reputation Reward:0 REP
- Minimum DAO Bounty: 250 GEN
- Pre-Boosted Vote Period Limit: 1 day (86400 seconds)
- Queued Vote Period Limit: 21 days (1814400 seconds)
- Queued Vote Required: 50%
- Quiet Ending Period: 2 days (172800 seconds)
- Threshold Constant: 1.2
- Voters Reputation Loss:0%
Uninstallation of old Plugins
There are some plugins that are either not used at all or duplicates with the upcoming, new Multicall installation. Let’s uninstall those plugins:
- DutchX (0xb9812e2fa995ec53b5b6df34d21f9304762c5497)
- GenericSchemeENSETHRegistry (0x57f1887a8bf19b14fc0df6fd9b2acc9af147ea85)
- GenericSchemeENSRegistryWithFallback (0x00000000000c2e074ec69a0dfb2997ba6c7d2e1e)
- GenericSchemeENSPublicProvider (0x226159d592e2b063810a10ebf6dcbada94ed68b8)
- GenericSchemeENSPublicResolver (0x4976fb03c32e5b8cfe2b6ccb31c09ba78ebaba41)
- GenericSchemeDXTokenRegistry (0x93db90445b76329e9ed96ecd74e76d8fbf2590d8)
- MultiCall v1 (0xef9dc3c39ca40a2a3000acc5ca0467ce1c250808)
If we need to interact for some reason in the feature with either of those protocols we could still use the open multicall even though we uninstalled the plugins.
Further research
One essential feature that is currently missing on MultiCall is to approve & transfer tokens and ETH. While nobody is researching or implementing it, we should think on how to move forward there. Having those features in place would allows us for example to bridge tokens to other networks, interact with other DeFi protocols and many more.