Skip to content

maple-labs/fixed-term-loan

Repository files navigation

Fixed Term Maple Loan

Foundry CI GitBook - Documentation Foundry License: BUSL 1.1

Overview

This repo contains a set of contracts to facilitate on-chain Loans between Maple Finance Pools and institutional borrowers. These contracts contain logic to:

  1. Deploy new Loans.
  2. Perform Loan funding.
  3. Draw down funds.
  4. Manage collateral.
  5. Calculate payment amounts and schedules (can handle amortized and interest-only payment structures).
  6. Perform repossessions of collateral and remaining funds in a defaulted Loan.
  7. Claim interest and principal from Loans.
  8. Perform refinancing operations when a lender and borrower agree to new terms.
  9. Upgrade Loan logic using upgradeability patterns.

Dependencies/Inheritance

Contracts in this repo inherit and import code from:

Contracts inherit and import code in the following ways:

  • MapleLoan and MapleLoanFeeManager use IERC20 and ERC20Helper for token interactions.
  • MapleLoan inherits MapleProxiedInternals for proxy logic.
  • MapleLoanFactory inherits MapleProxyFactory for proxy deployment and management.

Versions of dependencies can be checked with git submodule status.

Setup

This project was built using Foundry. Refer to installation instructions here.

git clone git@github.com:maple-labs/fixed-term-loan.git
cd fixed-term-loan
forge install

Running Tests

  • 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.

Audit Reports

Release Version Auditor Report Link Date
v2.0.0 Trail of Bits Trail of Bits Report 2021-12-28
v2.0.0 Code 4rena C4 Report 2022-01-05
v3.0.0 Trail of Bits Trail of Bits Report 2022-04-12
v3.0.0 Code 4rena C4 Report 2022-04-20
v3.0.1 - v4.0.0 Trail of Bits Trail of Bits Report 2022-08-24
v3.0.1 - v4.0.0 Spearbit Spearbit Report 2022-10-17
v3.0.1 - v4.0.0 Three Sigma Three Sigma Report 2022-10-24
v5.0.0 - v5.0.1 Spearbit Auditors via Cantina 2023-06-05 - Cantina Report 2023-06-05
v5.0.0 - v5.0.1 Three Sigma 2023-04-10 - Three Sigma Report 2023-04-21
Three Sigma 2023-11-06 - Three Sigma Report
0xMacro 2023-11-27 - 0xMacro Report

Bug Bounty

For all information related to the ongoing bug bounty for these contracts run by Immunefi, please visit this site.

About Maple

Maple Finance is a decentralized corporate credit market. Maple provides capital to institutional borrowers through globally accessible fixed-income yield opportunities.