'forge clean' running (wd: /home/karttikeya/creator-vault-contracts) 'forge config --json' running 'forge build --build-info src/VaultFactory.sol' running (wd: /home/karttikeya/creator-vault-contracts) INFO:Detectors: Detector: timestamp VaultFactory.createVault(address,uint256,uint256,uint256,uint256) (src/VaultFactory.sol#92-139) uses timestamp for comparisons Dangerous comparisons: - require(bool,string)(vaults[vaultAddress].creator == address(0),Vault collision) (src/VaultFactory.sol#113) VaultFactory.unstake(address,uint256) (src/VaultFactory.sol#167-183) uses timestamp for comparisons Dangerous comparisons: - require(bool,string)(userStake.amount >= _amount,Insufficient staked balance) (src/VaultFactory.sol#169) Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#block-timestamp INFO:Detectors: Detector: assembly StorageSlot.getAddressSlot(bytes32) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#66-70) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#67-69) StorageSlot.getBooleanSlot(bytes32) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#75-79) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#76-78) StorageSlot.getBytes32Slot(bytes32) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#84-88) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#85-87) StorageSlot.getUint256Slot(bytes32) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#93-97) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#94-96) StorageSlot.getInt256Slot(bytes32) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#102-106) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#103-105) StorageSlot.getStringSlot(bytes32) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#111-115) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#112-114) StorageSlot.getStringSlot(string) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#120-124) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#121-123) StorageSlot.getBytesSlot(bytes32) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#129-133) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#130-132) StorageSlot.getBytesSlot(bytes) (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#138-142) uses assembly - INLINE ASM (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#139-141) Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#assembly-usage INFO:Detectors: Detector: pragma 3 different versions of Solidity are used: - Version constraint >=0.4.16 is used by: ->=0.4.16 (lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol#4) - Version constraint ^0.8.20 is used by: -^0.8.20 (lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol#4) -^0.8.20 (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#5) - Version constraint ^0.8.33 is used by: -^0.8.33 (src/VaultFactory.sol#2) Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#different-pragma-directives-are-used INFO:Detectors: Detector: solc-version Version constraint >=0.4.16 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html) - DirtyBytesArrayToStorage - ABIDecodeTwoDimensionalArrayMemory - KeccakCaching - EmptyByteArrayCopy - DynamicArrayCleanup - ImplicitConstructorCallvalueCheck - TupleAssignmentMultiStackSlotComponents - MemoryArrayCreationOverflow - privateCanBeOverridden - SignedArrayStorageCopy - ABIEncoderV2StorageArrayWithMultiSlotElement - DynamicConstructorArgumentsClippedABIV2 - UninitializedFunctionPointerInConstructor_0.4.x - IncorrectEventSignatureInLibraries_0.4.x - ExpExponentCleanup - NestedArrayFunctionCallDecoder - ZeroFunctionSelector. It is used by: - >=0.4.16 (lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol#4) Version constraint ^0.8.20 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html) - VerbatimInvalidDeduplication - FullInlinerNonExpressionSplitArgumentEvaluationOrder - MissingSideEffectsOnSelectorAccess. It is used by: - ^0.8.20 (lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol#4) - ^0.8.20 (lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol#5) Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-versions-of-solidity INFO:Detectors: Detector: low-level-calls Low level call in VaultFactory.withdraw() (src/VaultFactory.sol#252-259): - (success,None) = address(owner).call{value: balance}() (src/VaultFactory.sol#257) Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#low-level-calls INFO:Detectors: Detector: naming-convention Parameter VaultFactory.createVault(address,uint256,uint256,uint256,uint256)._token (src/VaultFactory.sol#93) is not in mixedCase Parameter VaultFactory.createVault(address,uint256,uint256,uint256,uint256)._apr (src/VaultFactory.sol#94) is not in mixedCase Parameter VaultFactory.createVault(address,uint256,uint256,uint256,uint256)._bronzeTier (src/VaultFactory.sol#95) is not in mixedCase Parameter VaultFactory.createVault(address,uint256,uint256,uint256,uint256)._silverTier (src/VaultFactory.sol#96) is not in mixedCase Parameter VaultFactory.createVault(address,uint256,uint256,uint256,uint256)._goldTier (src/VaultFactory.sol#97) is not in mixedCase Parameter VaultFactory.stake(address,uint256)._vault (src/VaultFactory.sol#141) is not in mixedCase Parameter VaultFactory.stake(address,uint256)._amount (src/VaultFactory.sol#141) is not in mixedCase Parameter VaultFactory.unstake(address,uint256)._vault (src/VaultFactory.sol#167) is not in mixedCase Parameter VaultFactory.unstake(address,uint256)._amount (src/VaultFactory.sol#167) is not in mixedCase Parameter VaultFactory.claimRewards(address)._vault (src/VaultFactory.sol#185) is not in mixedCase Parameter VaultFactory.fundRewardsPool(address,uint256)._vault (src/VaultFactory.sol#206) is not in mixedCase Parameter VaultFactory.fundRewardsPool(address,uint256)._amount (src/VaultFactory.sol#206) is not in mixedCase Parameter VaultFactory.withdrawRewardsPool(address,uint256)._vault (src/VaultFactory.sol#220) is not in mixedCase Parameter VaultFactory.withdrawRewardsPool(address,uint256)._amount (src/VaultFactory.sol#220) is not in mixedCase Parameter VaultFactory.updateAPR(address,uint256)._vault (src/VaultFactory.sol#235) is not in mixedCase Parameter VaultFactory.updateAPR(address,uint256)._newAPR (src/VaultFactory.sol#235) is not in mixedCase Parameter VaultFactory.updateCreationFee(uint256)._newFee (src/VaultFactory.sol#247) is not in mixedCase Parameter VaultFactory.getVaultInfo(address)._vault (src/VaultFactory.sol#287) is not in mixedCase Parameter VaultFactory.getUserStake(address,address)._vault (src/VaultFactory.sol#308) is not in mixedCase Parameter VaultFactory.getUserStake(address,address)._user (src/VaultFactory.sol#308) is not in mixedCase Parameter VaultFactory.getStakersCount(address)._vault (src/VaultFactory.sol#329) is not in mixedCase Parameter VaultFactory.getRewardsPool(address)._vault (src/VaultFactory.sol#333) is not in mixedCase Parameter VaultFactory.getCreatorVaults(address)._creator (src/VaultFactory.sol#337) is not in mixedCase Parameter VaultFactory.getCreatorPrimaryVault(address)._creator (src/VaultFactory.sol#341) is not in mixedCase Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#conformance-to-solidity-naming-conventions INFO:Slither:src/VaultFactory.sol analyzed (4 contracts with 101 detectors), 39 result(s) found