You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
However there are some additional things to consider (the query handlers part is, I think, uncontroversial) WRT the metadata that might sit at token level
From discord:
given that everything is an Option I wonder if rather than implementing royalty fields separately it should be a part of those onchain meta fields? (see #6)
Essentially we've now added a set of baseline metadata fields to keep in line with Opensea - my question is, that as these are all Option typed anyway, whether royalties should be in this default meta -
looking at porting the royalty stuff I did for cw-plus to the new repo and it seems like cos it's optional maybe we should just be encouraging royalty data (even if None) to be a part of the interface for consideration
consideration by implementers that is
Don't necessarily have a strong opinion here, but we have an opportunity to set the expectation that marketplace implementers should be checking for royalty info by default on any sales in the Cosmos ecosystem and that maybe is something that is valuable from the perspective of creators.
Obviously for NFT types that royalties don't apply to, it's trivial to just use base, or exclude from the meta.
The big question is probably one at contract level - since that's where you signal whether royalties should be checked (if I remember/understand the EIP correctly https://eips.ethereum.org/EIPS/eip-2981) but this can easily be left as either
a) a hook for contract implementer to optionally implement
b) a default implementation that returns false and can be imported
c) a requirement for implementing for any contract that uses meta (i.e. up to the implementer whether it's hard coded, passed in instantiation, etc)
Because in the case of a base implementation you can expect that if royalties are at token level rather than a flat, contract-wide royalty, then the correct thing to do is always check. However, of course, this is an example implementation.
The text was updated successfully, but these errors were encountered:
I don't think including we need this feature in cw721-base. It is easy to determine if a smart contract supports royalty, send CheckRoyalty query msg, if you get a true response great, if error it means not implemented.
I support option:
a) a hook for contract implementer to optionally implement
Looking at porting this work on equivalence with EIP-2981 emerging royalty standard to this new repo.
CosmWasm/cw-plus#414
However there are some additional things to consider (the query handlers part is, I think, uncontroversial) WRT the metadata that might sit at token level
From discord:
Essentially we've now added a set of baseline metadata fields to keep in line with Opensea - my question is, that as these are all
Option
typed anyway, whether royalties should be in this default meta -Don't necessarily have a strong opinion here, but we have an opportunity to set the expectation that marketplace implementers should be checking for royalty info by default on any sales in the Cosmos ecosystem and that maybe is something that is valuable from the perspective of creators.
Obviously for NFT types that royalties don't apply to, it's trivial to just use base, or exclude from the meta.
The big question is probably one at contract level - since that's where you signal whether royalties should be checked (if I remember/understand the EIP correctly https://eips.ethereum.org/EIPS/eip-2981) but this can easily be left as either
a) a hook for contract implementer to optionally implement
b) a default implementation that returns
false
and can be importedc) a requirement for implementing for any contract that uses meta (i.e. up to the implementer whether it's hard coded, passed in instantiation, etc)
In the pull referenced above,
https://github.com/CosmWasm/cw-plus/blob/d7041a755bf0082744af684f169f67256b024ed0/contracts/cw2981-base/src/msg.rs#L58
is implemented
https://github.com/CosmWasm/cw-plus/blob/d7041a755bf0082744af684f169f67256b024ed0/contracts/cw2981-base/src/contract.rs#L227
Because in the case of a base implementation you can expect that if royalties are at token level rather than a flat, contract-wide royalty, then the correct thing to do is always check. However, of course, this is an example implementation.
The text was updated successfully, but these errors were encountered: