BOB
Search
⌃K

GP 5: Enable Bob Swap on Ethereum Mainnet

See GP#3 for a description of BobVault.

Proposal objective

In order to pursue further expansion, increase brand awareness and explore more integration options, we propose to enable BobVault on Ethereum Mainnet.
BobVault deployed on Ethereum Mainnet differs from the original audited version in that it includes more stricter limits for max collateral balance. The diff of changes can be found HERE.
The contract was pre-deployed at 0x15729Ac1795Fa02448a55D206005dC1914144a9F on 20.02.23 from commit ada425fbb6f29a50d26e89956204fb8b2b32b8d6. The collaterals were configured as described, owner of the BobVault was set to the governance multisig (0xd4a3D9Ca00fa1fD8833D560F9217458E61c446d8) after configuration. See Additional verification for verification.
For the purpose of Mainnet deployment, the internal Bob protocol risk-assessment team approved the BOB issuance limit through BobVault to 2,000,000 BOB, alongside with the following collateral configuration:
USDC:
  1. 1.
    price - 1 (6 decimals)
  2. 2.
    inFee - 0.001% (18 decimals)
  3. 3.
    outFee - 0.01% (18 decimals)
  4. 4.
    yield - address(0) - yield earning disabled
  5. 5.
    buffer - 0 USDC (6 decimals)
  6. 6.
    dust - ****0 USDC (6 decimals)
  7. 7.
    maxBalance - type(uint128).max - unrestricted
  8. 8.
    maxInvested - 0 USDC (6 decimals)
USDT:
  1. 1.
    price - 1 (6 decimals)
  2. 2.
    inFee - 0.001% (18 decimals)
  3. 3.
    outFee - 0.01% (18 decimals)
  4. 4.
    yield - address(0) - yield earning disabled
  5. 5.
    buffer - 0 USDT (6 decimals)
  6. 6.
    dust - ****0 USDT (6 decimals)
  7. 7.
    maxBalance - 1,000,000 USDT (6 decimals)
  8. 8.
    maxInvested - 0 USDT (6 decimals)
DAI:
  1. 1.
    price - 1 (18 decimals)
  2. 2.
    inFee - 0.001% (18 decimals)
  3. 3.
    outFee - 0.01% (18 decimals)
  4. 4.
    yield - address(0) - yield earning disabled
  5. 5.
    buffer - 0 DAI (18 decimals)
  6. 6.
    dust - ****0 DAI (18 decimals)
  7. 7.
    maxBalance - 1,000,000 DAI (18 decimals)
  8. 8.
    maxInvested - 0 DAI (18 decimals)
The main goal behind choosing such parameters - allow BobVault to compete with existing BOB pools on Uniswap. e.g. current slippage for swapping USDC → BOB on Uniswap V3 pool USDC/BOB is 0.001%, for swapping BOB → USDC is 0.019%

Proposal breakdown

The corresponding transaction in the governance safe is transaction #10. The transaction contains 1 action:

Action 1

Allocate 2,000,000 BOB (18 decimals) to the BobVault contract (0x15729Ac1795Fa02448a55D206005dC1914144a9F) by generating BOB token inventory. The action is executed by calling mint on the BOB token contract 0xB0B195aEFA3650A6908f15CdaC7D92F8a5791B0B​

Additional verification

Existing configuration parameters for collaterals can be checked by calling the collateral(address) function in the BobVault contract:
$ cast call --rpc-url https://rpc.ankr.com/eth 0x15729Ac1795Fa02448a55D206005dC1914144a9F 'owner() (address)'
0xd4a3D9Ca00fa1fD8833D560F9217458E61c446d8
​
$ cast call --rpc-url https://rpc.ankr.com/eth 0x15729Ac1795Fa02448a55D206005dC1914144a9F 'admin() (address)'
0xd4a3D9Ca00fa1fD8833D560F9217458E61c446d8
​
$ cast call --rpc-url https://rpc.ankr.com/eth 0x15729Ac1795Fa02448a55D206005dC1914144a9F 'collateral(address) (uint128 balance,uint128 buffer,uint96 dust,address yield,uint128 price,uint64 inFee,uint64 outFee,uint256 maxBalance,uint256 maxInvested)' 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
0
0
0
0x0000000000000000000000000000000000000000
1000000
10000000000000
100000000000000
340282366920938463463374607431768211455
0
​
$ cast call --rpc-url https://rpc.ankr.com/eth 0x15729Ac1795Fa02448a55D206005dC1914144a9F 'collateral(address) (uint128 balance,uint128 buffer,uint96 dust,address yield,uint128 price,uint64 inFee,uint64 outFee,uint256 maxBalance,uint256 maxInvested)' 0xdAC17F958D2ee523a2206206994597C13D831ec7
0
0
0
0x0000000000000000000000000000000000000000
1000000
10000000000000
100000000000000
1000000000000
0
​
$ cast call --rpc-url https://rpc.ankr.com/eth 0x15729Ac1795Fa02448a55D206005dC1914144a9F 'collateral(address) (uint128 balance,uint128 buffer,uint96 dust,address yield,uint128 price,uint64 inFee,uint64 outFee,uint256 maxBalance,uint256 maxInvested)' 0x6B175474E89094C44Da98b954EedeAC495271d0F
0
0
0
0x0000000000000000000000000000000000000000
1000000000000000000
10000000000000
100000000000000
1000000000000000000000000
0