You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently Curve has an Address Provider contract on most chains (not all), deployed deterministically at: 0x0000000022d53366457f9d5e68ec105046fc4383. This contract is a simply 'entrypoint' contract that guides integrators to other assets belonging to curve, such that they could use it as an on-chain API of on-chain APIs.
Each new ID added to the AddressProvider cannot be unset.
Challenges
The current deployer used to deploy the AddressProvider is unavailable. This means AddressProvider contracts cannot be deterministically deployed to new chains.
The AddressProvider contract does have a method to unset an address set at a particular ID but not change its description. This means that ID (s) cannot be repurposed.
Proposed Solution
We re-do the AddressProvider with create2 deployer. Optionally, we can mine salts for vanity addresses using CreateXCrunch.
New IDs in the improved AddressProvider contract can be re-purposed entirely such that the description of an existing ID can be changed as well.
The newly deployed AddressProvider IDs shall have the same ID designation across all chains. This could perhaps be achieved by changing the index of the ID hashmap from uint256 to bytes32, where the generated bytes32 is a keccak hash of the name of the contract.
Task List
Add a new method to AddressProvider to change the description of an ID
(optional) mine salts for create2 deployment
deploy across all networks Curve has presence
set AddressProvider IDs to be the same across all chains.
The text was updated successfully, but these errors were encountered:
Background
Currently Curve has an Address Provider contract on most chains (not all), deployed deterministically at: 0x0000000022d53366457f9d5e68ec105046fc4383. This contract is a simply 'entrypoint' contract that guides integrators to other assets belonging to curve, such that they could use it as an on-chain API of on-chain APIs.
New AddressProvider entries are added via
add_new_id
, callable only by the admin, which is currently a thin proxy contract deployed at 0xEdf2C58E16Cc606Da1977e79E1e69e79C54fe242, owned by Curve Core Devs.Each new ID added to the AddressProvider cannot be unset.
Challenges
Proposed Solution
Task List
The text was updated successfully, but these errors were encountered: