Burn Print Edition #689
Replies: 3 comments 16 replies
-
First of all, thanks @samuelvanderwaal for building this! I am going to benefit immensely from this.
For clarity, I assume you mean that the metaplex full burn of the edition can only be done by the wallet who owns the Master Edition? The rest of my thoughts are related so I will hold off on those. |
Beta Was this translation helpful? Give feedback.
-
Re: (not) decrementing the total supply Hm... It seems like there are case where either approach is the one desired. Two aspects pop into mind:
|
Beta Was this translation helpful? Give feedback.
-
I initially felt this was the best course of action but after giving it some thought, I'm wondering if we should modify it a bit. If a user (not the update authority of the NFT) burns the edition, another edition should not be mintable -- meaning the total supply is If the update authority owns the print edition and burns it, the UA should be able to reprint the edition. This would allow for use cases where the master edition had bad data and needs to reprint to fix.
I agree this should be avoided. |
Beta Was this translation helpful? Give feedback.
-
Metaplex is adding a
burn_edition_nft
handler that allows burning edition NFTs. The draft PR is here. This is a discussion for the community to ask questions about it, make suggestions, and generally have a say in this new feature.This discussion will run for a week, until Tuesday, August 30th.
EDIT: The discussion is extended a week until September 6th.
The functionality currently implemented in the PR:
Print editions passed in can be burned by the current owner of the print edition NFT--defined by the wallet with the token account holding the only token from the print edition NFT's mint account.
When a print edition is burned, the
supply
of the master edition is decremented.Burning closes the token account, metadata account, edition account, and if applicable, the edition marker account
The handler finds the edition's specific marker PDA and the position of the edition in the bit mask. After burning it flips the edition bit in the mask to zero. If all bits in the edition marker are now zero, then it also closes the edition marker PDA.
All funds from closed accounts go to the edition owner/holder.
Some points of discussion:
Not decrementing the
max_supply
means that the update authority of the master edition original NFT can re-issue the burned print editions. If we were to instead decrement thetotal_supply
every time a print edition was burned it would result in weird situations where you could have an edition numbered higher than the total supply: e.g. 13/8 edition.Closing the edition marker PDA when the last edition in its mask is burned means whoever the caller is gets that extra SOL. This is approximately 0.001 SOL, which is small enough that it shouldn't incentivize any weird gaming of burning print editions, but seems worth calling out explicitly.
For clarity, here is the Master Edition on-chain struct with the
supply
andmax_supply
fields:supply
represents the current number of prints that exist and themax_supply
is the maximum allowed. Ifmax_supply
isNone
it means that there is no maximum and an infinite number of print editions can exist. Ifmax_supply
isSome(0)
, it means that 0 print editions can exist, otherwiseSome(n)
meansn
print editions are allowed.UPDATE:
I think we're converging on a spec so I'm going to write it here and will update it as needed.
Final requirements and scope can be found here.
Beta Was this translation helpful? Give feedback.
All reactions