Omniscia Astrolab DAO Audit

As4626Abstract Code Style Findings

As4626Abstract Code Style Findings

AAT-01C: Generic Typographic Mistakes

Description:

The referenced lines contain typographical mistakes (i.e. private variable without an underscore prefix) or generic documentational errors (i.e. copy-paste) that should be corrected.

Example:

src/abstract/As4626Abstract.sol
61uint256 internal constant MAX_UINT256 = type(uint256).max;

Recommendation:

We advise them to be corrected enhancing the legibility of the codebase.

Alleviation (59b75fbee1d8f3dee807c928f18be41c58b904e1):

All referenced declarations have been appropriately prefixed with an underscore when necessary, addressing this exhibit in full.

AAT-02C: Improper Declaration of Abstract Function

Description:

The As4626Abstract::invested function is meant to be virtual and implemented by derivative implementations, however, an empty declaration is present that would permit it to be invoked and yield 0 if it is not overridden.

Example:

src/abstract/As4626Abstract.sol
102/**
103 * @notice Total amount of inputs denominated in asset
104 * @dev Abstract function to be implemented by the strategy
105 * @return Amount of assets
106 */
107function invested() public view virtual returns (uint256) {}

Recommendation:

We advise the function to be declared without a code block ({}) to ensure it is overridden by derivative implementations.

Alleviation (59b75fbee1d8f3dee807c928f18be41c58b904e1):

The referenced function was adjusted in visibility and renamed to As4626Abstract::_invested, incorporating our recommendation by no longer specifying an empty code block.