Skip to content

Commit

Permalink
On-chain proposal v3 USDT market on Polygon (compound-finance#858)
Browse files Browse the repository at this point in the history
Co-authored-by: dmitriy-bergman-works <[email protected]>
Co-authored-by: GitHub Actions Bot <>
Co-authored-by: Mikhailo Shabodyash <[email protected]>
Co-authored-by: dmitriy-woof-software <[email protected]>
  • Loading branch information
4 people authored Jul 2, 2024
1 parent 8108fa6 commit 760352d
Show file tree
Hide file tree
Showing 12 changed files with 499 additions and 11 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/run-scenarios.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
strategy:
fail-fast: false
matrix:
bases: [ development, mainnet, mainnet-weth, goerli, goerli-weth, sepolia-usdc, sepolia-weth, fuji, mumbai, polygon, arbitrum-usdc.e, arbitrum-usdc, arbitrum-weth, arbitrum-usdt, arbitrum-goerli-usdc, arbitrum-goerli-usdc.e, base-usdbc, base-weth, base-usdc, base-goerli, base-goerli-weth, linea-goerli, optimism-usdc, optimism-usdt, scroll-goerli, scroll-usdc]
bases: [ development, mainnet, mainnet-weth, goerli, goerli-weth, sepolia-usdc, sepolia-weth, fuji, mumbai, polygon, polygon-usdt, arbitrum-usdc.e, arbitrum-usdc, arbitrum-weth, arbitrum-usdt, arbitrum-goerli-usdc, arbitrum-goerli-usdc.e, base-usdbc, base-weth, base-usdc, base-goerli, base-goerli-weth, linea-goerli, optimism-usdc, optimism-usdt, scroll-goerli, scroll-usdc]
name: Run scenarios
env:
ETHERSCAN_KEY: ${{ secrets.ETHERSCAN_KEY }}
Expand Down
76 changes: 76 additions & 0 deletions deployments/polygon/usdt/configuration.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
{
"name": "Compound USDT",
"symbol": "cUSDTv3",
"baseToken": "USDT",
"baseTokenAddress": "0xc2132D05D31c914a87C6611C10748AEb04B58e8F",
"baseTokenPriceFeed": "0x0A6513e40db6EB1b165753AD52E80663aeA50545",
"borrowMin": "1e6",
"governor": "0xCC3E7c85Bb0EE4f09380e041fee95a0caeDD4a02",
"pauseGuardian": "0x8Ab717CAC3CbC4934E63825B88442F5810aAF6e5",
"storeFrontPriceFactor": 0.6,
"targetReserves": "20000000e6",
"rates": {
"supplyKink": 0.9,
"supplySlopeLow": 0.075,
"supplySlopeHigh": 3.6,
"supplyBase": 0,
"borrowKink": 0.9,
"borrowSlopeLow": 0.0833,
"borrowSlopeHigh": 4.3,
"borrowBase": 0.015
},
"tracking": {
"indexScale": "1e15",
"baseSupplySpeed": "92592592592e0",
"baseBorrowSpeed": "46296296296e0",
"baseMinForRewards": "1000e6"
},
"rewardTokenAddress": "0x8505b9d2254A7Ae468c0E9dd10Ccea3A837aef5c",
"assets": {
"WMATIC": {
"address": "0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",
"priceFeed": "0xAB594600376Ec9fD91F8e885dADF0CE036862dE0",
"decimals": "18",
"borrowCF": 0.65,
"liquidateCF": 0.80,
"liquidationFactor": 0.85,
"supplyCap": "5000000e18"
},
"WETH": {
"address": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619",
"priceFeed": "0xF9680D99D6C9589e2a93a78A04A279e509205945",
"decimals": "18",
"borrowCF": 0.80,
"liquidateCF": 0.85,
"liquidationFactor": 0.95,
"supplyCap": "2000e18"
},
"MaticX": {
"address": "0xfa68FB4628DFF1028CFEc22b4162FCcd0d45efb6",
"priceFeed": "0x5d37E4b374E6907de8Fc7fb33EE3b0af403C7403",
"decimals": "18",
"borrowCF": 0.60,
"liquidateCF": 0.70,
"liquidationFactor": 0.80,
"supplyCap": "2600000e18"
},
"stMATIC": {
"address": "0x3A58a54C066FdC0f2D55FC9C89F0415C92eBf3C4",
"priceFeed": "0x97371dF4492605486e23Da797fA68e55Fc38a13f",
"decimals": "18",
"borrowCF": 0.60,
"liquidateCF": 0.70,
"liquidationFactor": 0.80,
"supplyCap": "1500000e18"
},
"WBTC": {
"address": "0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6",
"priceFeed": "0xDE31F8bFBD8c84b5360CFACCa3539B938dd78ae6",
"decimals": "8",
"borrowCF": 0.75,
"liquidateCF": 0.85,
"liquidationFactor": 0.90,
"supplyCap": "90e8"
}
}
}
39 changes: 39 additions & 0 deletions deployments/polygon/usdt/deploy.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import { Deployed, DeploymentManager } from '../../../plugins/deployment_manager';
import { DeploySpec, deployComet } from '../../../src/deploy';

export default async function deploy(deploymentManager: DeploymentManager, deploySpec: DeploySpec): Promise<Deployed> {
const trace = deploymentManager.tracer()
const ethers = deploymentManager.hre.ethers;

// pull in existing assets
const USDT = await deploymentManager.existing('USDT', '0xc2132D05D31c914a87C6611C10748AEb04B58e8F', 'polygon');
const WBTC = await deploymentManager.existing('WBTC', '0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6', 'polygon');
const WETH = await deploymentManager.existing('WETH', '0x7ceb23fd6bc0add59e62ac25578270cff1b9f619', 'polygon');
const WMATIC = await deploymentManager.existing('WMATIC', '0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270', 'polygon');
const MaticX = await deploymentManager.existing('MaticX', '0xfa68FB4628DFF1028CFEc22b4162FCcd0d45efb6', 'polygon');
const stMATIC = await deploymentManager.existing('stMATIC', '0x3A58a54C066FdC0f2D55FC9C89F0415C92eBf3C4', 'polygon');
const COMP = await deploymentManager.existing('COMP', '0x8505b9d2254A7Ae468c0E9dd10Ccea3A837aef5c', 'polygon');

const fxChild = await deploymentManager.existing('fxChild', '0x8397259c983751DAf40400790063935a11afa28a', 'polygon');

const cometAdmin = await deploymentManager.fromDep('cometAdmin', 'polygon', 'usdc');
const cometFactory = await deploymentManager.fromDep('cometFactory', 'polygon', 'usdc');
const $configuratorImpl = await deploymentManager.fromDep('configurator:implementation', 'polygon', 'usdc');
const configurator = await deploymentManager.fromDep('configurator', 'polygon', 'usdc');
const rewards = await deploymentManager.fromDep('rewards', 'polygon', 'usdc');
const bulker = await deploymentManager.fromDep('bulker', 'polygon', 'usdc');
const localTimelock = await deploymentManager.fromDep('timelock', 'polygon', 'usdc');
const bridgeReceiver = await deploymentManager.fromDep('bridgeReceiver', 'polygon', 'usdc');

// Deploy Comet
const deployed = await deployComet(deploymentManager, deploySpec);

return {
...deployed,
bridgeReceiver,
bulker,
fxChild,
rewards,
COMP
};
}
Loading

0 comments on commit 760352d

Please sign in to comment.