Any user, regardless of their soulmate status or NFT ownership, to invoke the getDivorced function. This issue can lead to unauthorized state changes affecting the integrity of soulmate pairings and NFT ownership.
getDivorced
function, which lacks necessary checks to ensure that the caller is part of an existing soulmate pair and owns a corresponding NFT. As implemented, the function sets the divorced state to true for the caller and their supposed soulmate without verifying a valid soulmate relationship. This means any address can call getDivorced, inadvertently impacting the soulmate pairing logic and potentially causing confusion or manipulation of the intended "soulbound" relationship dynamics.
A user can be divorced
before even having a soulmate, and the been in an asymetric relation with his soulmate (he been divorced while the partner isnt)
Manual revision
Add a check to ensure the user has a Soulmate NFT minted.
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.