Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
d149ec7
nits
supercontracts Jan 16, 2025
cf0e7f7
Fixed strategy balanceOf to crosschain accounting and added crosschai…
0xumarkhatab Jan 16, 2025
4b62f05
Fixed strategy crossBalance accounting & added multichain withdraw test
0xumarkhatab Jan 17, 2025
e8579c4
fmted changes
0xumarkhatab Jan 17, 2025
d76c16e
adding borrow test
0xumarkhatab Jan 17, 2025
6bf6d27
Added borrow test
0xumarkhatab Jan 17, 2025
a789463
Migrated from custom errors to Standard Error codes
0xumarkhatab Jan 17, 2025
17eb8e9
Fixed modifier check in vdebt for router
0xumarkhatab Jan 18, 2025
b33e18a
[Add] Repay test
0xumarkhatab Jan 18, 2025
04d12ba
nits
supercontracts Jan 18, 2025
be87b4c
Adding Liquidation tests
0xumarkhatab Jan 19, 2025
baa7ce1
Adding liquidation tests fmted changes
0xumarkhatab Jan 19, 2025
9b71777
adding liquidation tests resolving conflicts
0xumarkhatab Jan 19, 2025
cac2f91
Added liquidation test
0xumarkhatab Jan 20, 2025
d52d585
nits
supercontracts Jan 22, 2025
132eef7
Added Flashloan tests
0xumarkhatab Jan 23, 2025
aee26b2
Merge branch 'fixes/post-audit' of https://github.com/RiftLend/contra…
0xumarkhatab Jan 23, 2025
f9498ca
Added crosschain balances update for liquidator
0xumarkhatab Jan 23, 2025
928faa3
changed aToken convention to rToken
0xumarkhatab Jan 23, 2025
7fe695a
preparing deploy script
0xumarkhatab Jan 26, 2025
631ba3b
Added fix for incorrect excess repayment in lendingpool
0xumarkhatab Jan 26, 2025
79a51e9
Fixed correct corsschain balance update in repay for onBehalfOf
0xumarkhatab Jan 27, 2025
362d8e2
migrated foundry source to foundry-rs toolchain
0xumarkhatab Jan 27, 2025
65f4be2
migrated from errors file to custom errors
0xumarkhatab Jan 28, 2025
cb50b26
Merge branch 'fixes/post-audit' of https://github.com/RiftLend/contra…
0xumarkhatab Jan 28, 2025
e1e9236
Decreased contract size of router and LP configurator
0xumarkhatab Jan 28, 2025
514e20a
nits
0xumarkhatab Jan 29, 2025
3e88427
changing to structs for optimizer-build
0xumarkhatab Jan 30, 2025
3ac7331
Fixed stack stack too deep errors & prepared deploy script
0xumarkhatab Feb 3, 2025
5623641
added batch deployment scripts
0xumarkhatab Feb 7, 2025
737e03a
Added deployment.json output to batch Deployment script
0xumarkhatab Feb 7, 2025
412f95d
Added post audit fixes
0xumarkhatab Feb 17, 2025
b92c04f
removed lib/devtools from history
0xumarkhatab Feb 17, 2025
ddb6054
resolved lpWithdraw test error for caller not pool admin
0xumarkhatab Feb 17, 2025
a7fcfe5
Merge branch 'fixes/post-audit' of https://github.com/riftlend/contra…
0xumarkhatab Feb 17, 2025
0bf2048
added lz/devtools
0xumarkhatab Feb 17, 2025
116f88c
[Add] updated code from monorepo
0xumarkhatab Mar 2, 2025
ac57014
fix: #7
supercontracts Mar 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
4 changes: 2 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# Deployment Config
DEPLOYER_PRIVATE_KEY=
PRIVATE_KEY=
CATAPULTA_API_KEY=
10 changes: 3 additions & 7 deletions .github/workflows/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,7 @@ jobs:
node-version: 16.x.x

- name: Install Foundry
uses: onbjerg/foundry-toolchain@v1
with:
version: nightly
uses: foundry-rs/foundry-toolchain@v1

- name: Run Forge build
run: "forge build"
Expand All @@ -52,12 +50,10 @@ jobs:
node-version: 16.x.x

- name: Install Foundry
uses: onbjerg/foundry-toolchain@v1
with:
version: nightly
uses: foundry-rs/foundry-toolchain@v1

- name: Run Forge build
run: "forge build"

- name: Run Forge test
run: "forge test"
run: "forge test -vvv"
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,5 @@ node_modules/
.gitpod.yml
pnpm-lock.yaml
count_lines.py
lib
lib/
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,13 @@ To get started with RiftLend:

---

### Contracts libraries

```bash
forge install @openzeppelin/openzeppelin-contracts Vectorized/solady layerzero-labs/devtools layerzero-labs/layerzero-v1 layerzero-labs/layerzero-v2 GNSPS/solidity-bytes-utils --no-commit

```

## Contributing

We welcome community contributions! Here's how to get involved:
Expand Down
182 changes: 128 additions & 54 deletions configs/deploy-config.toml
Original file line number Diff line number Diff line change
@@ -1,51 +1,72 @@
[deploy_config]
salt = "ethers phoenix"
chains = ["op_chain_a","op_chain_b"]

[token]
salt = "ethers phoenix"
owner_address = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
name = "TestSuperchainERC20"
symbol = "TSU"
chains = ["eth_mainnet","op_mainnet","sepolia-eth"]
[owner]
address = "0x34b13101802b97cbfbC33a4eb597017dd20dd31C"

[underlying]
# riftlendUnderlying
salt = "riftlendUnderlying"
name = "TestUSDC"
symbol = "TUSDC"
decimals = 18

[rTokenImpl]
salt = "ethers phoenix rTokenImpl"
[super_token]
# riftlendSuperToken
salt = "riftlendSuperToken"
name = "superTestUSDC"
symbol = "STUSDC"
decimals = 18

[stableDebtTokenImpl]
salt = "ethers phoenix stableDebtTokenImpl"
[rvault_asset]
# riftlendRVaultAsset
salt="riftlendRVaultAsset"
max_deposit_limit="1000000000000000000000" # 1000 ether
withdraw_cool_down_period=86400
name = "rVaultAsset-TUSDC"
symbol = "rVaultAsset-rTUSDC"

[rToken]
# riftlendRToken
salt = "riftlendRToken"
name = "rToken-TestUSDC"
symbol = "rTUSDC"
decimals = 18

[variableDebtTokenImpl]
salt = "ethers phoenix variableDebtTokenImpl"
[variable_debt_token]
# riftlendVdebt
salt = "riftlendVdebt"
name = "variableDebt-TUSDC"
symbol = "vdebt-TUSDC"

[lending_pool_addresses_provider]
salt = "ethers phoenix lpap"
owner_address = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
marketId = "TSU Market"
# riftlendLpAddressesProvider
salt = "riftlendLpAddressesProvider"
marketId = "TUSDC Market"
lpType="OpSuperchain_LENDING_POOL"

[proxy_admin]
salt = "ethers phoenix proxyAdmin"
owner_address = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"

[superchain_asset_1]
salt = "ethers phoenix sa1"
owner_address = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
name = "SuperTestSuperchainERC20"
symbol = "STSU"
decimals = 18
# TODO:Add correct lz addresses
lzEndpoint = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
lzDelegate = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
# riftlendProxyAdmin
salt = "riftlendProxyAdmin"

[pool_admin]
address="0x34b13101802b97cbfbC33a4eb597017dd20dd31C"

[lending_pool_impl]
salt = "ethers phoenix laimpl"

[lending_pool]
# riftlendLendingPool
salt = "riftlendLendingPool"

[lending_pool_configurator]
salt = "ethers phoenix lpc"
# riftlendLpConfigurator
salt = "riftlendLpConfigurator"

[lending_pool_collateral_manager]
# riftlendLpCollateralManager
salt = "riftlendLpCollateralManager"

[default_reserve_interest_rate_strategy]
salt = "ethers phoenix drirs"
# riftlendDefaultStrategy
salt = "riftlendDefaultStrategy"
# These are random values. TODO these should be in ray terms
optimalUtilizationRate = 1
baseVariableBorrowRate = 2
Expand All @@ -54,34 +75,87 @@ variableRateSlope2 = 6
stableRateSlope1 = 4
stableRateSlope2 = 5

[lending_rate_oracle]
salt = "ethers phoenix lro"
owner_address = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
[price_oracle]
# riftlendPriceOracle
salt = "riftlendPriceOracle"
owner_address = "0x34b13101802b97cbfbC33a4eb597017dd20dd31C"

[treasury]
address = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
[event_validator]
# riftlendEventValidator
salt = "riftlendEventValidator"

[incentives_controller]
address = "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
[relayers]
address1="0xa42Ba52a1c007F64CbEdfe5d68318c47479909B9"
address2="0x5b82672fE0E4404d02982c57657e912FF2A2aCee"
address3="0xeea6Fc4dbB9deD44fc97d25a181f4D1C84E4DFCB"
address4="0x2E36797F103f7747B18171131B7DB321442E7426"
address5="0x850647427a365238374f6E220EEFa8281ff35A70"
address6="0x2EEB89646C0fC522980f08a6DF6f9843fefFBA77"
total=6

[aToken1]
name = "A-TestSuperchainERC20"
symbol = "ATUSDC"
[treasury]
address = "0x34b13101802b97cbfbC33a4eb597017dd20dd31C"

[variableDebtToken1]
name = "VDebt-TestSuperchainERC20"
symbol = "VDTUSDC"
[incentives_controller]
address = "0x0000000000000000000000000000000000000000"

[stableDebtToken1]
name = "SDebt-TestSuperchainERC20"
symbol = "SDTUSDC"

[router]
salt = "ethers phoenix router"
# riftlendRouter
salt = "riftlendRouter"

[layerzero]
lz_receive_gas_limit=200000
lz_compose_gas_limit=500000

[forks]
chain_a_rpc_url = "https://opt-mainnet.g.alchemy.com/v2/xFdbkJe3ZbpjHxU2qIpikVBgN7TIMyX8"
chain_a_chain_id = 10
chain_a_rpc_url = "https://eth-mainnet.g.alchemy.com/v2/muWMumYKuC6W7Oa572HjryTPZMMLbPK3"
chain_a_chain_id = 1
chain_a_cross_l2_prover_address="0x1CCb363c18484A568DCB0Ec37fE5ad716C1D6e77"
chain_a_weth="0x4200000000000000000000000000000000000006"
chain_a_lz_endpoint_v2="0x1a44076050125825900e736c501f859c50fE728c"
chain_a_weth="0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"
chain_a_lz_endpoint_v2="0x1a44076050125825900e736c501f859c50fE728c"
chain_a_lz_delegate="0xf9E5bFE615853BC0ce310Dd3187277B0bbAC112c"

chain_b_rpc_url = "https://opt-mainnet.g.alchemy.com/v2/muWMumYKuC6W7Oa572HjryTPZMMLbPK3"
chain_b_chain_id = 10
chain_b_cross_l2_prover_address="0x1CCb363c18484A568DCB0Ec37fE5ad716C1D6e77"
chain_b_weth="0x4200000000000000000000000000000000000006"
chain_b_lz_endpoint_v2="0x1a44076050125825900e736c501f859c50fE728c"
chain_b_lz_delegate="0xf9E5bFE615853BC0ce310Dd3187277B0bbAC112c"

chain_test_a_rpc_url = "https://opt-sepolia.g.alchemy.com/v2/muWMumYKuC6W7Oa572HjryTPZMMLbPK3"
chain_test_a_chain_id = 11155420
chain_test_a_cross_l2_prover_address="0xb8AcB3FE3117A67b665Bc787c977623612f8a461"
chain_test_a_weth="0xC355F97a3Aa2808Acb536E555764b8FB26fB4b37"
chain_test_a_lz_endpoint_v2="0x6EDCE65403992e310A62460808c4b910D972f10f"
chain_test_a_lz_delegate="0xf9E5bFE615853BC0ce310Dd3187277B0bbAC112c"

chain_test_b_rpc_url = "https://base-sepolia.g.alchemy.com/v2/muWMumYKuC6W7Oa572HjryTPZMMLbPK3"
chain_test_b_chain_id = 84532
chain_test_b_cross_l2_prover_address = "0xcDa03d74DEc5B24071D1799899B2e0653C24e5Fa"
chain_test_b_weth = "0x4200000000000000000000000000000000000006"
chain_test_b_lz_endpoint_v2 = "0x6EDCE65403992e310A62460808c4b910D972f10f"
chain_test_b_lz_delegate="0xf9E5bFE615853BC0ce310Dd3187277B0bbAC112c"

chain_test_c_rpc_url = "https://unichain-sepolia.g.alchemy.com/v2/xFdbkJe3ZbpjHxU2qIpikVBgN7TIMyX8"
chain_test_c_chain_id = 1301
chain_test_c_cross_l2_prover_address = "0xcDa03d74DEc5B24071D1799899B2e0653C24e5Fa"
chain_test_c_weth = "0x4200000000000000000000000000000000000006"
chain_test_c_lz_endpoint_v2 = "0xb8815f3f882614048CbE201a67eF9c6F10fe5035"
chain_test_c_lz_delegate="0xf9E5bFE615853BC0ce310Dd3187277B0bbAC112c"


chain_test_d_rpc_url = "https://arb-sepolia.g.alchemy.com/v2/muWMumYKuC6W7Oa572HjryTPZMMLbPK3"
chain_test_d_chain_id = 421614
chain_test_d_cross_l2_prover_address = "0xcDa03d74DEc5B24071D1799899B2e0653C24e5Fa"
chain_test_d_weth = "0x980b62da83eff3d4576c647993b0c1d7faf17c73"
chain_test_d_lz_endpoint_v2 = "0x6EDCE65403992e310A62460808c4b910D972f10f"
chain_test_d_lz_delegate="0xf9E5bFE615853BC0ce310Dd3187277B0bbAC112c"


chain_test_e_rpc_url = "https://eth-sepolia.g.alchemy.com/v2/muWMumYKuC6W7Oa572HjryTPZMMLbPK3"
chain_test_e_chain_id = 11155111
chain_test_e_cross_l2_prover_address = "0xcDa03d74DEc5B24071D1799899B2e0653C24e5Fa"
chain_test_e_weth = "0xb16f35c0ae2912430dac15764477e179d9b9ebea"
chain_test_e_lz_endpoint_v2 = "0x6EDCE65403992e310A62460808c4b910D972f10f"
chain_test_e_lz_delegate="0xf9E5bFE615853BC0ce310Dd3187277B0bbAC112c"
9 changes: 6 additions & 3 deletions foundry.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,12 @@ src = "src"
script = "scripts"
out = "out"
libs = ["lib"]
via_ir = true
optimizer = false
optimizer_runs = 200
via_ir = false
optimizer = true
optimizer_runs = 100

# [fuzz]
# runs=100

# See more config options https://github.com/foundry-rs/foundry/blob/master/crates/config/README.md#all-options

Expand Down
30 changes: 16 additions & 14 deletions index.d.ts
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
import { Address } from 'viem'

export const deployment: {
deployedAddress: Address // address of test token contract (TUSDC)
ownerAddress: Address // address of owner of deployed test token contract
rTokenAddress: Address // address of deployed aToken contract implementation
stableDebtTokenAddress: Address // address of deployed stable debt token contract implementation
variableDebtTokenAddress: Address // address of deployed variable debt token contract implementation
lendingPoolAddressesProviderAddress: Address // address of deployed lending pool addresses provider contract
superchainAssetAddress: Address // address of deployed superchain asset contract
lendingPoolAddress: Address // address of deployed lending pool contract
proxyAdminAddress: Address // address of deployed proxy admin contract
lendingPoolConfiguratorAddress: Address // address of deployed lending pool configurator contract
defaultReserveInterestRateStrategyAddress: Address // address of deployed default reserve interest rate strategy contract
lendingRateOracleAddress: Address // address of deployed lending rate oracle contract
routerAddress: Address // address of deployed router contract
routerImplAddress: Address // address of deployed router implementation contract
Underlying: Address,
EventValidator: Address,
SuperAsset: Address,
ProxyAdmin: Address,
LendingPoolAddressesProvider: Address,
DefaultReserveInterestRateStrategy: Address,
MockPriceOracle: Address,
LendingPool: Address,
LendingPoolConfigurator: Address,
RVaultAsset: Address,
RToken: Address,
VariableDebtToken: Address,
LendingPoolCollateralManager: Address,
RouterImpl: Address,
Router: Address,
Owner: Address
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
[package]
name = "deployer"
version = "1.0.0"
authors = []

[addresses]
deployer = "_"

[dev-addresses]
deployer = "0x90909090"

[dependencies.AptosFramework]
git = "https://github.com/aptos-labs/aptos-framework.git"
rev = "mainnet"
subdir = "aptos-framework"

[dev-dependencies]
Loading
Loading