Smart contract security is a top priority for Aura, see Security documentation . Aura has partnered up with @chainalysis to adopt an Incident Response Plan for the protocol to add an extra layer of security, Aura will be able to deter hackers and have an asset recovery plan in potential events.
If you have any feedback or concerns, reach out to security@aura.finance
$ git submodule init
$ git submodule update
$ yarn install
Compile the smart contracts with Hardhat:
$ yarn compile
Compile the smart contracts and generate TypeChain artifacts:
$ yarn typechain
Lint the Solidity code:
$ yarn lint:sol
Lint the TypeScript code:
$ yarn lint:ts
Run the Mocha tests:
$ yarn test
Run fork tests
$ yarn test:fork:all
Running in fork mode
$ NODE_URL=<FORK_URL> yarn task:fork <TASK_NAME>
Running task normally
$ NODE_URL=<NODE_URL> yarn task --network <NETWORK> <TASK_NAME>
Generate the code coverage report:
$ yarn coverage
Delete the smart contract artifacts, the coverage reports and the Hardhat cache:
$ yarn clean
This runs a local node on your system, that can be used with Metamask, etc.
Run a local fork:
npx hardhat node --fork https://eth-mainnet.alchemyapi.io/v2/<API_KEY> --port <PORT>
Once you stake or lock CVX you may want to progress timestamps to check rewards stuff
export NODE_URL=<LOCAL_NODE_URL>
yarn task timeTravel --duration 69420 --network forking
- Ethereum Mainnet (1)
- Arbitrum (42161)
- Goerli (5)
- Arbitrum Goerli (42163)
- Ethereum Mainnet (1) @deprecated
- Ethereum Mainnet (2) @deprecated
- Goerli (5) @deprecated
-
auraBAL and vlAURA reward contracts are not on the 4626 standard
-
StashToken contracts are not ERC20 compliant.
convex-platform/contracts/contracts/StashToken.sol
it is designed to interact only with VirtualBalanceRewardPool and ExtraRewardStashV3. AnyextraRewards
is distributed by a VirtualBalanceRewardPool, which is linked to a StashToken, the StashToken wraps theextraReward
as abaseToken
.