Motivation: The “dead land” problem - sometimes called “abandoned land” or “deceased land” problem - is the following: a non-zero percentage of the LAND supply is currently “lost”/“dead”/not accessible by anyone. This means that whatever is on that LAND right now (either a deployed scene or nothing if nothing was ever deployed to it) is what will forever be on that LAND.
This can be due to a number of reasons: people die and don’t transfer their private keys, people lose access to their own private keys, people transfer the NFTs to a contract that can’t transfer it back, etc.
If not addressed, the number of dead land can only ever grow as more people lose their private keys. Non-metaverse societies have come up with solutions to this problem, and we must too otherwise Decentraland Genesis City will slowly turn into an ossified landscape of dead land.
“Lost private keys” is an obvious issue in crypto in general, but the consequence for Decentraland is that the world slowly dies.
The goal of this post is to describe previous solutions proposed, highlight concerns that have been raised, and discuss how to best bring this topic to a governance poll.
Background: this problem has been discussed on the DCL discord as far as I can remember. The common answer has typically been “we will figure it out eventually”, I’m writing this post because I think now is a good time to revisit this topic. If anything we will get a fresh perspective on pros and cons.
In March 2020, a proposal was put forward. The core idea was:
- Every address gets a “timer" which gets reinitialized to 0 every time the address interacts on-chain with the LAND contract.
- Once the timer reaches a certain amount of time, the LAND owned by the address gets put for auction and the proceeds of the auction go to:
1 - The inactive address itself
2 - The entire community via burn
How can we modify this proposal to address the concerns that were raised?
Summary of concerns raised:
Find verbatim concerns copy-pasted at the bottom of this post.
transfer() on LAND contract is not sufficient, f.ex. in the case of district land in passthrough contracts or multi-sig.
solution: add a no-op ping() method on the contract that does nothing but reset the timer. The operator/update manager/owner can all call that ping() method to reset timer.
on-chain transfer() is not sufficient, any activity like signing into Decentraland or having onrelated on-chain activity should be enough to reset timer.
solution: this is harder one because it’s impossible for an on-chain contract to know when someone signs into Decentraland, or to know whether they have non-Decentraland transaction like sending an ERC20 around. As far as I know, the only solution around this would be to introduce some kind of “oracle” that would effectively be able to communicate to the Decentraland on-chain contracts that something has happened offchain (like signing into Decentraland).
then: the DAO could have a subcommittee with such a special “oracle” permissions. a merkle tree could be published every month and contain all addresses that the subcommittee has observed any activity (privacy concerns?)
dead LAND could be made available to the community for lease/public use until the owner comes back
solution: add a grace period where LAND goes into community pool, and if the owner comes back before grace period ends they can claim it back.
however - we must keep in mind that the owner might be dead and might never come back.
alternative solution: the LAND is never sold back to the market, and forever owned and controlled by the DAO
what if the land is lost because someone sent their NFT to the wrong contract, or someone still being alive but losing their private key. should there be a “judiciary” process for those people to claim their LAND back?
solution: while in grace period, a subcommittee of the DAO can veriy such claims, and submit a proposal to the DAO for LAND transfer.
people should be notified by email
solution: email is not an option since the smart contract has no idea what email correspond to what ethereum address. but there is a few new peer-to-peer technologies like chat.blockscan.com, EPNS & Lens protocol so there might be a community based notification option.
people should have the option of adding a beneficiary in case of death
solution: maybe this could be added, but I’m not sure whether this should be solved by Decentraland. seems like this is something that smart contract wallet should offer, then you simply transfer your LAND to that smart contract wallet.
How to bring forward for governance poll:
We should start with least controversial elements and slowly start probing governance for the more controversial ones. For example, we could start with a simple “yes/no” poll such as:
Should the Decentraland DAO address the “dead land” problem: lands for which access is forever lost. If the consensus is that the DAO should not address this problem at this point in time then we table the discussion for now.
Otherwise, we can poll on individual questions such as:
- Should there be an oracle mechanism to detect off-chain activity? (f.ex. signing into Decentraland, activity on other chains)
- Should “dead land” be sold back to the public, or forever controlled by the DAO and made available for public use?
- Should there be a judiciary for living people to claim back their LAND after they lost access?
- Should there be a grace period where LAND is transfered to the DAO, made available to LAND pool for community use, but still claimable by previously inactive address until grace period ends?
- What should the inactivity period be? Options: 1 year, 2 years, 3 years, 5 years, 10 years.
- What should the grace period be? Options: 1 year, 2 years, 3 years, 5 years, 10 years.
- Where should the proceeds of the auction go? Options: 70% inactive address/15% burn/15% DAO. 50% inactive address/25% burn/25% DAO, etc.
Verbatim of concerns raised
Maybe making it available for a public park type of build, and then if the owner comes back they can decide to scrap that build and build their own thing, or keep the “greenspace build.” If there were permissions given for a group of people that build on abandoned lots, for the communities benefit, that could be very coool.
this is a recurring theme. first transferring LAND for public use during grace period is one way to address this
And it would be very easy to set up a timer contract to do a land swap to and from another wallet that would run on its own, defeating this solution as solving anything.
in any case I don’t think we’ll ever get away from people fully automating the timer reset with onchain or offchain actions. everything can be automated. the only way would be to give the DAO full recapture power which is out of scope for now.
Also, we really should develop a judiciary that can review cases where a person has lost a wallet, but has some strong evidence that the land was theirs and nobody else advances a claim. for a fee, and after sufficient passage of time, a judiciary should be able to accept the applicant’s request to have the land “auctioned” to them for a low price to a new wallet. Thought needs to be given to safeguards.
something like this would be nice and complementary
I think you have to look at the activity of the owning address of the LAND, rather than the LAND contract itself. If someone is actively doing anything at all, be that swapping coins, playing another game, anything that would indicate active use of the addresss then the parcel should be left alone. If there is no activity on the address in one year or more, the keys are almost certainly lost.
the Decentraland smart contract cannot know if someone is swapping coins on another contract. the only way something like this would be possible is by adding an all-powerful “oracle” to the system
I know people would not like it, but the other suggestion could be a land tax as low as 1 usd every 6 months. (just a random guess)
I would personally be in favor of property tax but I doubt we’ll get consensus on this. also, a ping() method is the same as land tax of 0 USD
The mere act of buying sunglasses, logging into Decentraland, signing a transaction. Anything that demonstrates any form for output from the address that can only be sparked off by the owner should suffice to have the so-called land timer reset.
can’t be done without some kind of oracle. the chain doesn’t know when people log into Decentraland
Another issue not addressed well enough in the original proposal is how this would apply to district land which would typically be either still in the passthrough lockup contract, which cannot trade land, or in a multisig wallet that would likely not be doing land transactions.
Also, there needs to be a notice mechanism with adequate time. In the comparison with property taxes there are notices, appeals, etc.
agree on plenty of time (many years) for inactivity and for grace period. notice can only be done with chain-based mechanisms like chat.blockscan.com, EPNS or Lens protocol
If the owner does not answer after x times, the owners “Will” will be activated and it provides one or more email addresses and public keys for the “Beneficiaries” and backup “Beneficiaries” who will be notified by email, and asked if they wish to get the land for development, leasing, or selling.
response: smart contract can’t send emails. idea of beneficiary is good but can it not be done at smart contract wallet?
“Abandonment” based on the transfer of land ownership alone seems short sighted. An easy work around would be to transfer the land rights to an alternative address… (same owner).
Activity should come into play here, as in what kinds of txns this address is doing and how frequent… why isn’t the deployment of content on land not considered in the equation? How could land be abandoned if content is still being published on it by the owner?
the chain doesn’t know when someone deploys a scene. something like this could be done with an oracle
The DAO should rent out vacant land on behalf of owners. Land should not be appropriated.
renting the vacant land could be done during a grace period, but at some point, if the person is dead and lost the private key, the DAO should be appropriating the land.