Be consistent with the approach to reverting and the messages sent when reverting.
In the FunnelFactory contract, there is no consistency in using single-line if statements. Sometimes single-line is used, and sometimes curly braces are in use. Line 30 vs. Line 34.
It is best practice to write code uniformly.
There is no consistency in how reverts are handled or in the messages for those reverts in the Funnel contract.
In one case, custom errors are used; in another, revert with a message; and in another, requires.
Path
./src/Funnel.sol : permit(), permitRenewable(), transferFromAndCall(), _checkOnTransferReceived(), approveRenewableAndCall(), _checkOnApprovalReceived()
Recommendation
Be consistent with the approach to reverting and the messages sent when reverting.
In the FunnelFactory contract, there is no consistency in using single-line if statements. Sometimes single-line is used, and sometimes curly braces are in use. Line 30 vs. Line 34.
Path
./src/FunnelFactory.sol : deployFunnelForToken(), getFunnelForToken(), isFunnel()
Recommendation
Be consistent with style, formatting, and patterns.
Status
New