Skip to content

maple-labs/migration-helpers

Repository files navigation

Pool V2 Migration Helpers

Foundry CI GitBook - Documentation Foundry License: BUSL 1.1

Overview

The MigrationHelper contract is a simple helper contract to atomically perform the transfer of many loans. This is designed to make the liquidity migration procedure both easier and more robust.

The AccountingChecker contract (in contracts/checkers) is a helper contract to check the value represented in the LoanManager contract against a naive calculation to ensure correctness.

Dependencies/Inheritance

Contracts in this repo inherit and import code from:

Contracts inherit and import code in the following ways:

  • MigrationHelper uses ERC20Helper for token interactions.
  • MigrationHelper inherits NonTransparentProxied for proxy logic.

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/migration-helpers.git
cd migration-helpers
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

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

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.