Omniscia Mantissa Finance Audit

Pool Manual Review Findings

Pool Manual Review Findings

PLO-01M: Inexplicable Usage of Constant Fee

TypeSeverityLocation
Logical FaultPool.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:

contracts/Pool.sol
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

TypeSeverityLocation
Language SpecificPool.sol:L16

Description:

The contract is meant to be upgradeable yet does not properly protect its logic deployment from malicious initializations.

Example:

contracts/Pool.sol
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.