Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

QA Report #366

Open
code423n4 opened this issue Dec 16, 2022 · 3 comments
Open

QA Report #366

code423n4 opened this issue Dec 16, 2022 · 3 comments
Labels
bug Something isn't working grade-a Q-04 QA (Quality Assurance) Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax sponsor confirmed Sponsor agrees this is a problem and intends to fix it (OK to use w/ "disagree with severity")

Comments

@code423n4
Copy link
Contributor

See the markdown file with the details of this report here.

@code423n4 code423n4 added bug Something isn't working QA (Quality Assurance) Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax labels Dec 16, 2022
code423n4 added a commit that referenced this issue Dec 16, 2022
code423n4 added a commit that referenced this issue Dec 16, 2022
@GalloDaSballo
Copy link

GalloDaSballo commented Dec 27, 2022

[L‑01] latestAnswer() is deprecated 1
L

[L‑02] Don't use payable.transfer()/payable.send() 1
L

[L‑03] Owner can renounce while system is paused 2
L

[L‑04] _safeMint() should be used rather than _mint() wherever possible 4
L

[L‑05] Draft imports may break in new minor versions
R because extra detail, but I don't see a possible risk so will not raise further

[N‑01] Import declarations should import specific identifiers, rather than the whole file 49
NC

[N‑02] Remove include for hardhat's console 1
NC

[N‑03] Adding a return statement when the function defines a named return variable, is redundant 1
R

[N‑04] constants should be defined rather than using magic numbers 82
R

[N‑05] Numeric values having to do with time should use time units for readability 4
R

[N‑06] Large multiples of ten should use scientific notation (e.g. 1e6) rather than decimal literals (e.g. 1000000), for readability 1
R

[N‑07] Missing event and or timelock for critical parameter change 18
NC

[N‑08] Events that mark critical parameter changes should contain both the old and the new value 2
NC

[N‑09 & 10] Use a more recent version of solidity 2
NC

[N‑11] Inconsistent spacing in comments 20
NC

[N‑12] Lines are too long 20
NC

[N‑13] Non-library/interface files should use fixed compiler versions, not floating ones 11
NC

[N‑14 & 15] File is missing NatSpec 8
NC

[N‑16] Not using the named return variables anywhere in the function is confusing 5
R

[N‑17] Duplicated require()/revert() checks should be refactored to a modifier or function 10
NC

[N‑18] Consider using delete rather than assigning zero to clear values 5
NC

[N‑19] Avoid the use of sensitive terms 6
NC

[N‑20] Contracts should have full test coverage 1
R

[N‑21] Large or complicated code bases should implement fuzzing tests
R

4L 8R 12NC

@c4-sponsor c4-sponsor added the sponsor confirmed Sponsor agrees this is a problem and intends to fix it (OK to use w/ "disagree with severity") label Jan 5, 2023
@c4-sponsor
Copy link

GainsGoblin marked the issue as sponsor confirmed

@c4-judge
Copy link
Contributor

GalloDaSballo marked the issue as grade-a

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working grade-a Q-04 QA (Quality Assurance) Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax sponsor confirmed Sponsor agrees this is a problem and intends to fix it (OK to use w/ "disagree with severity")
Projects
None yet
Development

No branches or pull requests

5 participants