Allocations in the Treasury contract are done by a mapping, however there is no mechanism in place to actually reserve tokens for the allocation.
This will lead to the allocation being meaningless as the allocation simply doesn't have enough tokens backing it.
The allocate funds is called and allocations mapping is updated, however there is no reservation from the balance of treasury. If Users simply withdraw more balance than the allocated amount, the allocations will fail.
The allocations will fail.
Manual analysis
The allocations once done should subtract _totalValue from the Treasury contract such that the allocation amount doesn't accidently end up being withdrawn.
This might lead to some Users not being able to withdraw but it comes at the cost of failing the allocation.
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.