Inclusive Finance / inclusive-monorepo
The protocol consists of a few components: an intent processor, an auction manager, and a few vaults. The intent processor is responsible for validating the intents, and locking the funds globally. The auction manager selects which is the solution that wins, and hence will settle the intent. The vaults are contracts on all chains where Inclusive Layer operates, and are responsible for managing user funds, and sending acknowledgement and errors back to the intent processor in order to synchronize state across different chains.
Prize distribution and scoring
- Total Prize Pool: $25,000
Additional pay for dedicated Cantina Fellowship Member : $20,000
- Scoring described in the competition scoring page.
- Findings Severities described in detail on our docs page.
Documentation
Scope
- Repository: https://cantina.xyz/code/578bedbf-32c7-4305-80f9-9867492c7fb5/
- Files:
smart-contracts/src/
solana-vaults/programs/
Target networks
- Ethereum (EVM)
- Solana
Build Instructions
For EVM code
This project uses Forge for building and testing. We use the via-ir
flag for optimized compilation.
forge build --via-ir
forge test --via-ir
forge coverage --via-ir
The --via-ir
flag enables IR-based code generation, which can result in more optimized bytecode but may increase compilation time.
For solana code
-
Install the latest solana cli tools here: https://solana.com/docs/intro/installation#install-the-solana-cli
-
Run the following the script to run the tests. It runs the solana test validator in the background and closes as soon as the test is ended. If you want to keep the validator running, you can pass
true
as the first argument to the script.
sh test.sh true
Suppose you come across ProgramIdMismatch
error, then you can fetch the program id from the target folder by the command below.
solana address -k target/deploy/vaults-keypair.json
Replacing the above retrieved program id in lib.rs
file should solve the issue.
Basic POC Test
The mandatory POC rule applies for this competition.
Solidity test examples: smart-contracts/test/
For Solana: solana-vaults//programs/vaults/src/tests.rs
In case the researcher needs to build a more sophisticated test environment, with off-chain components, the team will be happy to assist. However, technically any finding should be built as a unit test, with any input from outside components (off-chain) being mocked.
Out of scope
- Automated findings by Lightchaser https://gist.github.com/ChaseTheLight01/3996da9e9dfa473cdef2241e03adee74
Contact Us
For any issues or concerns regarding this competition, please reach out to the Cantina core team through the Cantina Discord.
Summary
Status
CompletedTotal reward:
$25,000
Findings submitted:
214
Start date:
15 Jan 2025 8:00pm (local time)
End date:
29 Jan 2025 8:00pm (local time)