exo-digital-labs / ERC721R

https://erc721r.super.site/
MIT License
240 stars 60 forks source link

Problem: Owner Mint Function #12

Open lawweiliang opened 2 years ago

lawweiliang commented 2 years ago

Problem Now, owner mint function without timeline. What the community worry about is, what if the project turn out super famous and the owner mint most of the NFT. This is totally unfair for the community.

Suggestion, I think we should add a timeline for this function. For eg, if use sell 10,000 picture. After 1 years, if owner could not sell off everything. Owner will mint the remaining and sell it over opensea or other NFT marketplace. I think this make more sense.

elie222 commented 2 years ago

Hey, good point. Other projects may decide to limit owner mint to a smaller number. Some projects cap it within the contract or don't have it at all. Although I'm not sure we need to make adjustments here as it's not ERC721R related unless I'm missing something?

lawweiliang commented 2 years ago

Correct, I think this is more on project specific requirement. Maybe put it under extended features.

elie222 commented 2 years ago

Right. I don't think ownerMint is a core part of the project. It doesn't need to exist at all in the standard. Same goes for whitelist and other features we added to the example that aren't actually part of the standard.

lawweiliang commented 2 years ago

Yup. I think community would love this.

Core

ERC721R core should be focus on ERC721A + Refund part only.

Extended (All these indeed project specific requirements)

ERC721RO -> Extended version to upgrade owner mint function ERC721RV -> Extended version to upgrade withdraw function with vesting ERC721RC -> Extended version where the nft refund it back to the contract address rather than EOA.

Everyone agree on this?

elie222 commented 2 years ago

ERC721RO -> Extended version to upgrade owner mint function

I think we need the owner refund protection regardless. Note this isn't related to owner minting. Even if they mint 0, they can buy off market and refund themselves indefinitely. So we need that protection in.

ERC721RV -> Extended version to upgrade withdraw function with vesting

Perhaps ERC721RVesting would be a better name. Once the Podium team completes their mint today and open sources the code we may be able to use what they worked on for this one.

ERC721RC -> Extended version where the nft refund it back to the contract address rather than EOA.

Again would rename to something like ERC721RContract. But I'm wondering if we need an extra contract for this as it's so similar. The only difference is what refundAddress is set to (and not allowing it to be changed thereafter)

lawweiliang commented 2 years ago

Perhaps ERC721RVesting would be a better name. Once the Podium team completes their mint today and open sources the code we may be able to use what they worked on for this one.

@elie222 , did the podium project that you mention is this project https://twitter.com/nftpodium?lang=en ?

elie222 commented 2 years ago

Perhaps ERC721RVesting would be a better name. Once the Podium team completes their mint today and open sources the code we may be able to use what they worked on for this one.

@elie222 , did the podium project that you mention is this project twitter.com/nftpodium?lang=en ?

Yes. I spoke with them last week and they'd be happy to work together on ERC721R. We may move it to a joint repo too

lawweiliang commented 2 years ago

Wu, that would be excited for the joint repo. Combining two communities and make a better product. Good move.