This repo contains a set of contracts to facilitate on-chain Loans between Maple Finance Pools and institutional borrowers. These contracts contain logic to:
- Deploy new Loans.
- Perform Loan funding.
- Draw down funds.
- Manage collateral.
- Calculate payment amounts and schedules (can handle amortized and interest-only payment structures).
- Perform repossessions of collateral and remaining funds in a defaulted Loan.
- Claim interest and principal from Loans.
- Perform refinancing operations when a lender and borrower agree to new terms.
- Upgrade Loan logic using upgradeability patterns.
Contracts in this repo inherit and import code from:
Contracts inherit and import code in the following ways:
MapleLoan
andMapleLoanFeeManager
useIERC20
andERC20Helper
for token interactions.MapleLoan
inheritsMapleProxiedInternals
for proxy logic.MapleLoanFactory
inheritsMapleProxyFactory
for proxy deployment and management.
Versions of dependencies can be checked with git submodule status
.
This project was built using Foundry. Refer to installation instructions here.
git clone [email protected]:maple-labs/open-term-loan.git
cd open-term-loan
forge install
- To run all tests:
forge test
- To run specific tests:
forge test --match <test_name>
./scripts/test.sh
is used to enable Foundry profile usage with the -p
flag. Profiles are used to specify the number of fuzz runs.
Auditor | Report Link |
---|---|
Trail of Bits | 2022-08-24 - Trail of Bits Report |
Spearbit | 2022-10-17 - Spearbit Report |
Three Sigma | 2022-10-24 - Three Sigma Report |
Auditor | Report Link |
---|---|
Spearbit Auditors via Cantina | 2023-06-05 - Cantina Report |
Three Sigma | 2023-04-10 - Three Sigma Report |
Auditor | Report Link |
---|---|
0xMacro | 2024-08-14 - 0xMacro Report |
Three Sigma | 2024-08-23 - Three Sigma Report |
For all information related to the ongoing bug bounty for these contracts run by Immunefi, please visit this site.
Maple Finance is a decentralized corporate credit market. Maple provides capital to institutional borrowers through globally accessible fixed-income yield opportunities.