Omniscia Sova Network Audit

BaseReporter Code Style Findings

BaseReporter Code Style Findings

BRR-01C: Inexplicable Usage of Contract Declaration

TypeSeverityLocation
Code StyleBaseReporter.sol:L8, L17

Description:

The BaseReporter represents an abstract contract implementation yet contains no logic apart from an empty report function declaration meant to be overridden by derivative contracts.

Example:

src/reporter/BaseReporter.sol
8abstract contract BaseReporter {
9 /*//////////////////////////////////////////////////////////////
10 FUNCTIONS
11 //////////////////////////////////////////////////////////////*/
12
13 /**
14 * @notice Report the current value of an asset
15 * @return the content of the report
16 */
17 function report() external view virtual returns (bytes memory);
18}

Recommendation:

We advise an interface to be utilized instead, optimizing the code's structure.

Alleviation (e4d6885477438291b0d3ca477fab7e088522967b):

The BaseReporter contract was repurposed into the IReporter interface, applying our recommendation as advised.