The default value of an "Enum" is the first value listed (on index "0"), which in this case is Status: "NICE". This value is then used as a default value in both mappings: "s_theListCheckedOnce" and "s_theListCheckedTwice". Any address can therefore mint and receive the NFT
The Status enum is written in a way, that defaults to the value of "NICE". Both mappings are therefore initiated on "NICE" and any address calling "collectPresent" function can receive the NFT as they are by default marked "NICE" in both.
Any caller can mint their NFT by default unless activelly changed.
Static analysis
Change the enum Status order of values, making the first value in the enum "NAUGHTY" or "NOT_CHECKED_TWICE".
In Solidity the first element of an enum is the default value. In Santa's List, the means each person is mapped by default to 'NICE'.
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.