The default values provided in the initialization code violate the constraints set in the updateFeeType() function, namely that they don't sum up to BASIS_POINTS.
If the fee manager successfully updates the feeTypes[6] (Swap Tax) and/or feeTypes[7] (NFT Royalties), they will be unable to go back to the default value since the sum of the FeeType attributes is less than BASIS_POINTS, breaking the condition set by updateFeeType().
Since it's assumed that the default value is a reasonable choice in the context of the project, this will result in far higher and irreversible fees in case of a mistake in setting them.
Manual review.
Either:
remove the BASIS_POINTS requirements from updating the feeTypes
scale the shares of feeTypes[6]/[7] and apply the 2% fee on the total via the call to collectFee() instead.
This snippet of code shows the issue in action.
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.