User could not specify deadline as block.timestamp, after which it will be able to return part of the unspent, previously paid, commission. This is useful if there are not enough oracles or validators for the task to have the completed status
Could be situation, when there are not enought oracles or validators for response/validate user's request.
Or it were enought, but after user's request some of them make unstake and ceased to be such.
For user, his request, which take response/validating too long, could become not actual already.
The problem is, that fee has been taken from user's buyer agent contract, and, for example, user's task validated only by 3 of 6 validators. And user could not cancel his request for getting back unspent fee, which was supposed to be paid to the validators, who has not yet validated this task.
User paid fee, but his request has not complete for a long time and he could not take unspent fee back.
Manual review
Add function cancellTaskAndGetUnspentFeeBack(). Also add parameter in requests function - deadline block.timestamp
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.