When the function removeBeneficiary() is called by the owner of the inheritance manager contract the inheritance deadline doesn't update to the new time(block.timestamp+timeLock). The deadline should update for every transaction the owner does with this contract by design of the inheritance manager contract.
When owner calls removeBeneficiary() deadline is not updated, because _setDeadline() is not called.
This can lead to unwanted behaviour of the inheritance manager contract, to false expectations regarding the actual time deadline. Beneficiries can call inherit() earlier than expected.
Beneficiries can redeem funds at an earlier time than expected, resulting in inconsistent contract behaviour.
Manual review
Include a call to the _setDeadline() function to update the inheritance deadline when removeBeneficiary() is called.
```
function removeBeneficiary(address _beneficiary) external onlyOwner
Same as above for createEstateNFT() and contractInteractions() which are also called by the owner and do not update the deadline when called.
Side note:
I am uploading from my mobile, because I am away from my laptop for a couple of weeks, hope the markdown works well.
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.