The InheritanceManager
contract provides only one mechanism to distribute NFT assets after inheritance mode is activated - the InheritanceManager::buyOutEstateNFT
function, which requires a beneficiary to pay other beneficiaries for their shares:
This design creates a significant issue: if no beneficiary has the necessary funds or desire to buy out the NFT, the asset becomes permanently locked in the contract. There is no alternative mechanism to:
Sell the NFT to external parties
Transfer fractional ownership to beneficiaries
Allow beneficiaries to vote on NFT disposal
Auction the NFT with proceeds distributed to beneficiaries
The problem is especially serious for high-value NFTs, where the buyout amount could be substantial and beyond the means of individual beneficiaries.
Potentially valuable NFT assets can become permanently trapped in the contract, with their value inaccessible to all beneficiaries. The primary purpose of the contract is to distribute assets, but this design flaw prevents complete distribution in many scenarios.
Add alternative mechanisms for NFT distribution like NFT auction functionality for external parties
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.