This repo contains a set of contracts to facilitate on-chain distribution of protocol revenues denominated in Syrup tokens. Syrup distributions are made using RevenueDistributionToken (RDT) vesting schedule functionality. This allows for multiple deposits to be made to the same contract on a recurring basis with custom vesting parameters.
Please note stSyrup is a new contract re-deployed using the old xMPL Contract and can be found on etherscan.
stSyrup inherits the core functionality from Maple's Revenue Distribution Token, which allows users to lock assets to earn rewards distributions based on a vesting schedule.
git clone [email protected]:maple-labs/stsyrup.git
cd stSyrup
forge update
- To run all unit/fuzz tests:
make test
(runs./test.sh
) - To run all invariant tests:
make invariant
(runs./invariant.sh
) - To run all tests (unit/fuzz and invariant tests):
make test-all
- To run specific unit tests:
./test.sh -t <test_name>
(e.g.,./test.sh -t test_scheduleMigration
) - To run specific invariant tests:
./invariant-test.sh -t <test_name>
(e.g.,./invariant-test.sh -t invariant_totalSupply
) - To run specific fuzz tests with a specified number of fuzz runs:
./test.sh -r <runs>
(e.g.,./test.sh -t testFuzz_performMigration -r 10000
)
This project was built using Foundry.
Auditor | Report link |
---|---|
Trail of Bits | ToB Report - April 12, 2022 |
Code 4rena | C4 Report - April 20, 2022 |
For all information related to the ongoing bug bounty for these contracts run by Immunefi, please visit this site.
Severity of Finding | Payout |
---|---|
Critical | $50,000 |
High | $25,000 |
Medium | $1,000 |
Maple Finance is a decentralized corporate credit market. Maple provides capital to institutional borrowers through globally accessible fixed-income yield opportunities.
For all technical documentation related to the currently deployed Maple protocol, please refer to the maple-core GitHub wiki.