Events should be emmitted on every critical state changes
Emmiting events is recommended each time when a state variable's value is being changed or just some critical event for the contract has occurred. It also helps off-chain monitoring of the contract's state.
line#L147: function setTierDelegates(JBTiered721SetTierDelegatesData[] memory _setTierDelegatesData)
line#L177: function setTierDelegate(address _delegatee, uint256 _tierId) public virtual override {
Qa Report
2022-10-JUICEBOX
Do not explicitly
return
from a function if it already has named declared return variablesJBTiered721Delegate.sol:
Contracts should use a fixed compiler version to avoid potential bugs
JBTiered721DelegateStore.sol:
JB721TieredGovernance.sol:
JBTiered721Delegate.sol:
JB721GlobalGovernance.sol:
JB721Delegate.sol:
JBTiered721DelegateDeployer.sol:
JBTiered721DelegateProjectDeployer.sol:
Missing natspec comments
https://docs.soliditylang.org/en/develop/natspec-format.html
JBTiered721FundingCycleMetadataResolver.sol:
Events should be emmitted on every critical state changes
Emmiting events is recommended each time when a state variable's value is being changed or just some critical event for the contract has occurred. It also helps off-chain monitoring of the contract's state.
JBTiered721Delegate.sol:
JB721Delegate.sol:
Use
external
visibility modifier for function that are not being invoked by the contractJB721TieredGovernance.sol:
JBTiered721Delegate.sol:
JBTiered721DelegateStore.sol: