Omniscia Mantissa Finance Audit
Pool Manual Review Findings
Pool Manual Review Findings
PLO-01M: Inexplicable Usage of Constant Fee
Type | Severity | Location |
---|---|---|
Logical Fault | Pool.sol:L541, L542 |
Description:
The Pool::getSwapAmount
function will apply a constant fee ratio instead of utilizing the pool's Net-Liquidity-Ratio (NLR) inexplicably.
Impact:
The severity of this exhibit will be adjusted based on the Mantissa Finance team's actions.
Example:
541// uint256 nlr = getNetLiquidityRatio();542feeAmount = toAmount * _getSwapFeeRatio(ONE_18) / 1e6;
Recommendation:
We advise the original behaviour of the codebase to be re-introduced as the current system of low fees can lead to arbitrage opportunities that may be detrimental to the project's health.
Alleviation (418ee413ad8e26f7eea383764c19953ff31b2bf3):
The Mantissa Finance team has closely evaluated this exhibit and stated that arbitrage opportunities are prevented by the deposit and withdrawal fees; the fees applied to swaps were meant to be dynamic to optimize capital efficiency.
The Mantissa Finance team introduced a fixed fee for swaps to minimize the gas cost of swaps and render them more attractive for potential traders. As the Mantissa Finance team has stated that they will closely monitor the situation and have purposefully introduced static fees, we consider this exhibit nullified as it presents intended behaviour by the Mantissa Finance team.
PLO-02M: Inexistent Initialization Protection of Base Implementation
Type | Severity | Location |
---|---|---|
Language Specific | Pool.sol:L16 |
Description:
The contract is meant to be upgradeable yet does not properly protect its logic deployment from malicious initializations.
Example:
16contract Pool is Initializable, Ownable, Pausable, ReentrancyGuard {
Recommendation:
We advise a constructor
to be introduced that either invokes the initializer
modifier of the Initializable
contract or invokes the Initializable::_disableInitializers
function to prevent the base implementation from ever being initialized.
Alleviation (418ee413ad8e26f7eea383764c19953ff31b2bf3):
The Mantissa Finance evaluated this exhibit and stated that they wish to acknowledge it and that they will ensure the logic deployments are properly initialized whenever they are deployed.