BuyerAgent.sol has no functionality to retrieve the SwanAsset NFTs making them stuck forever.
The purchase function sends the SwanAsset to the addresss listed as buyer which is BuyerAgent contract.
BuyerAgent.sol however has no way/corresponding function to retrieve the NFT as there's no equivalent function to withdraw the SwanAsset to the owner.
SwanAsset is stuck in BuyerAgent contract with no way to retrive it, leading to loss of NFT and loss of funds spent to purchase it.
Manual Review.
Introduce an owner protected function to withdrawn the SwanAsset to a valid recipient.
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.