curve-contract
curve-contract copied to clipboard
feat: add 4pool
New Pool Checklist
Pool Info
- Name: 4pool
- Base template: Factory plain-4-basic
4pool can not be created via factory since using USDC and USDT. Supports factory/plain-4/basic abi, except admin functions which are made for PoolProxy.
Tokens
FRAX
General Info
- Deployment address: 0x853d955aCEf822Db058eb8505911ED77F175b99e
- Link to the token source code: etherscan
- Link to the developer documentation:
Behaviours
- On a successful transfer this token: returns True
- On a failed transfer this token: reverts
- Are there any special approval behaviors? No
- Is there a transfer fee, or the capability to add a transfer fee in the future? No
- [ ] I have reviewed the documentation and source code for this token, checking for unexpected behaviours that could affect the pool.
USDC
General Info
- Deployment address: 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
- Link to the token source code: etherscan
- Link to the developer documentation:
Behaviours
- On a successful transfer this token: returns True
- On a failed transfer this token: reverts
- Are there any special approval behaviors? No
- Is there a transfer fee, or the capability to add a transfer fee in the future? No
- [ ] I have reviewed the documentation and source code for this token, checking for unexpected behaviours that could affect the pool.
UST
General Info
- Deployment address: 0xa693B19d2931d498c5B318dF961919BB4aee87a5
- Link to the token source code: etherscan
- Link to the developer documentation:
Behaviours
- On a successful transfer this token: returns True
- On a failed transfer this token: reverts
- Are there any special approval behaviors? No
- Is there a transfer fee, or the capability to add a transfer fee in the future? No
- [ ] I have reviewed the documentation and source code for this token, checking for unexpected behaviours that could affect the pool.
USDT
General Info
- Deployment address: 0xdAC17F958D2ee523a2206206994597C13D831ec7
- Link to the token source code: etherscan
- Link to the developer documentation:
Behaviours
- On a successful transfer this token: returns None
- On a failed transfer this token: reverts
- Are there any special approval behaviors? Approval must be zeroed before a new one
- Is there a transfer fee, or the capability to add a transfer fee in the future? Fees won't be set.
- [ ] I have reviewed the documentation and source code for this token, checking for unexpected behaviours that could affect the pool.
Fees
-
Does this pool include tokens that are already handled by the fee burning process? LPBurner could be used to remove USDT/USDC or MetaBurner for FRAX.
-
Does this pool include tokens that are not currently being burned, but which can be handled by an already deployed burner? UST
-
Does this pool require deployment of any new burners? Removing both USDC and USDT could lower slippage.
Pre-review Checklist
- [x] I have included a
pooldata.json
with accurate token addresses - [x] I have included a
README.md
with accurate token addresses - [x] I have added a workflow targetting this pool, and confirmed that all tests are passing within the CI
- [x] I have run
brownie test tests/forked --network mainnet-fork
locally and confirmed that all tests are passing - [x] I have verified the fee burning process for this pool and opened a related pull request on
curve-dao-contracts
if needed
Reviewer Pre-deployment Checklist
- [ ] This PR contains a new workflow file, and the entire test suite is passing
- [ ] I have verified the success / failure behaviours for each token in this pool
- [ ] I have run
brownie test tests/forked --network mainnet-fork
locally and confirmed that all tests are passing - [ ] I have verified the fee burning process for this pool and any related pull requests
- [ ] This pool makes no significant modifications to the core math OR has been reviewed personally by @michwill
Post-deployment Checklist
- [ ] I have deployed a
LiquidityGaugeV4
contract for this pool - [ ] I have deployed any required fee burner contracts
- [ ] I have added pool and gauge deployment addresses to the
pooldata.json
andREADME.md
files within this PR - [ ] I have opened a pull request on
curve-docs
to add the new deployment addresses to the documentation - [ ] I have created a DAO vote to add the new gauge and enable/configure fee burning