Contracts have owners with privileged rights to perform admin tasks and need to be trusted to not perform malicious updates or drain funds.
Found in src/briTechToken.sol Line: 7
Found in src/briTechToken.sol Line: 10
Found in src/briVault.sol Line: 13
Found in src/briVault.sol Line: 110
Found in src/briVault.sol Line: 122
Consider using a specific version of Solidity in your contracts instead of a wide version. For example, instead of pragma solidity ^0.8.0;, use pragma solidity 0.8.0;
Check for address(0) when assigning values to address state variables.
Found in src/briVault.sol Line: 93
If a function is marked public but is not used internally, consider marking it as external.
Found in src/briTechToken.sol Line: 10
Found in src/briVault.sol Line: 110
Found in src/briVault.sol Line: 120
Found in src/briVault.sol Line: 178
Found in src/briVault.sol Line: 255
Found in src/briVault.sol Line: 285
require() / revert() StatementUse descriptive reason strings or custom errors for revert paths.
Found in src/briVault.sol Line: 219
Solc compiler version 0.8.20 switches the default target EVM version to Shanghai, which means that the generated bytecode will include PUSH0 opcodes. Be sure to select the appropriate EVM version in case you intend to deploy on a chain other than mainnet like L2 chains that may not support PUSH0, otherwise deployment of your contracts will fail.
Consider removing the modifier or inlining the logic into the calling function.
Found in src/briVault.sol Line: 98
Large literal values multiples of 10000 can be replaced with scientific notation.Use e notation, for example: 1e18, instead of its full numeric value.
Consider using or removing the unused error.
Found in src/briVault.sol Line: 61
Rename the local variable that shadows another state variable.
Found in src/briVault.sol Line: 79
Calling .length on a storage array in a loop condition is expensive. Consider caching the length in a local variable in memory before the loop and reusing it.
Found in src/briVault.sol Line: 199
Invoking SSTORE operations in loops may waste gas. Use a local variable to hold the loop computation result.
State variables that are only changed in the constructor should be declared immutable to save gas. Add the immutable attribute to state variables that are only changed in the constructor
Found in src/briVault.sol Line: 16
Found in src/briVault.sol Line: 23
Found in src/briVault.sol Line: 25
Found in src/briVault.sol Line: 27
Found in src/briVault.sol Line: 46
Function returns a value but it is ignored. Consider checking the return value.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.