-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add EIP: Hashtag NFT Collective Royalty Treasury #6145
Conversation
File
|
@Pandapip1 the file was renamed from - to _ are we saying it is correct now or should be reverted back to - naming convention? (Thank you for the help!) |
Happy holiday, please can someone advise on what the next steps are with this PR? It seem ready to me are there any issues outstanding? |
@Erik4569 @Pandapip1 @abcoathup Hope you had a good start to 2023. Is there anything I can do to progress this? I do not see what issues are outstanding with the PR? |
Co-authored-by: Pandapip1 <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Erik4569 @Pandapip1 @abcoathup
Thanks for the help with this, I cannot see why I am getting a Walidator error with a relative link to the license.md? Any suggestions you might have would be much appreciated. THANK YOU
Error: error[markdown-rel-links]: non-relative link or image
--> EIPS/eip-6145.md
|
84 | Copyright and related rights waived via CC0.
|
Error: validation found errors :(
@Erik4569 @Pandapip1 @abcoathup Would appreciate any suggestions here, looks like a bug with the ? |
Sorry about the confusion with the markdown line numbers. |
--- | ||
eip: 6145 | ||
title: Hashtag NFT Collective Royalty Treasury | ||
description: A method to deposit and retrieve royalties from an Ethereum Address |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
description: A method to deposit and retrieve royalties from an Ethereum Address | |
description: A method to deposit and retrieve royalties from an Ethereum address |
|
||
## Abstract | ||
|
||
This standard allows social media networks, NFT marketplaces and other websites to deposit royalties associated with an Ethereum address. The Ethereum address may be associated with a human readable name (e.g. a hashtag), to pay-out royalties and retrieve royalty payment information. The standard is loosely coupled and generic to maximise the potential use cases. Unlike other EIP proposals [EIP-2981](./eip-2718.md) or [EIP-4910](./eip-4910.md) which embody mechanisms for calculating royalties, this standard sets out the mechanism for depositing and paying out royalties. The goal is to increase the earning potential for creators rather than defining the business logic for royalty payments. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
||
## Copyright | ||
|
||
Copyright and related rights waived via [CC0](/LICENSE.md). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copyright and related rights waived via [CC0](/LICENSE.md). | |
Copyright and related rights waived via [CC0](../LICENSE.md). |
| | | Unique | 0x9a6Cba29cc0cA4f18990F32De15aae08819F4cD0 | | ||
| | | Quartz | 0x9a6Cba29cc0cA4f18990F32De15aae08819F4cD0 | | ||
|
||
Further implementation details may be found in the Livetree repository found at the livetreetech/LivetreeCollective github repo. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remove any external links. Yes, we count this as an external link ;)
| 2 | GetHashtagNFTBalances _(view)_ | **Inputs** _address tokenAddress_ - An Ethereum address **Outputs** uint256 - Returns sum of the royalties for given Ethereum address | Facilitates querying an Ethereum address and returning the royalties associated to the Ethereum address. The method **MUST** be called with an Ethereum address. | | ||
| 3 | WithdrawFromTreasuryToAddress | **Inputs** _address tokenAddress_ - Address royalty was associated in the deposit _address receiver_ - Royalty payout Ethereum address _uint256 amount_ - Royalty amount to be withdrawn to the receiver **Outputs** none emits **Withdraw** event _Withdraw(senderAddr, receiver, amount, tokenAddr);_ | Withdraws the given amount of the royalty (blockchain native token) associated with the Ethereum address to the receiver. The receiver **MAY** be a wallet, smart contract or other Ethereum address. The tokenAddress **MUST** be an address the sender has deposited associated tokenAddress. The implementation of this method **SHOULD** restrict the caller and amount of withdrawal through the use of a whitelist defined in DepositRoyalty. | ||
|
||
### HashtagNFTCollectiveResolver |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If these headings are code snippets, you should put them in backticks:
### HashtagNFTCollectiveResolver | |
### `HashtagNFTCollectiveResolver` |
|
||
| # | Function | Input / Output | Description | | ||
|---|----------|----------------|-------------| | ||
| 1 | DepositRoyalty _(payable)_ | **Inputs** _address[] calldata tokenAddresses_ - Array of Ethereum addresses _uint256[] calldata tokenRoyalties_ - Matching array of royalty deposit amounts for each Ethereum Address **Outputs** none emits **Deposit** event _event Deposit(senderAddr, address[] tokenAddresses, uint256[] tokenRoyalties);_ | This method optimises the gas costs relating to the deposit of royalties for a number of different associated Ethereum addresses. It takes an array of tokenAddresses (Ethereum addresses) associated with an array of tokenRoyalties (Royalty amounts). tokenAddresses array **MUST** be paired equally and **MUST** be in the same order as tokenRoyalties. The deposit payable amount sent to this function **MUST** be in the blockchain’s native token (for example: ETH, GLMR, MOVR, CELO, UNQ etc). The payable amount of the native token **MUST** equal the sum of all tokenRoyalties. A human readable name registered in the naming service **MAY** be associated with the Ethereum address(es) provided in tokenAddresses. The implementation of this method stores the sender address in a “whitelist” along with the quantity of the blockchain’s native token deposited which is in turn is used to permission the method WithdrawFromTreasuryToAddress. | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see a couple "MUST"s in here. If you're setting out requirements, they have to go in the Specification section.
The Backwards Compatibility section should just be for describing breaking changes. For example, if you were extending EIP-721 NFTs into soulbound tokens, you'd note here that soulbound tokens can't be transferred (unlike regular 721 NFTs).
## Specification | ||
|
||
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC 2119. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Your standard isn't standardizing anything. The meat of your proposal should be here.
There has been no activity on this pull request for 2 weeks. It will be closed after 3 months of inactivity. If you would like to move this PR forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review. |
This comment was marked as off-topic.
This comment was marked as off-topic.
There has been no activity on this pull request for 2 weeks. It will be closed after 3 months of inactivity. If you would like to move this PR forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review. |
The commit e8db0b0 (as a parent of 4502e9b) contains errors. |
@yamommasofat while I appreciate your plight, this is not the correct forum for discussing it. This repository contains technical standards for Ethereum developers. You might have better luck on /r/ethereum or attending an AllCoreDevs call to voice your concerns. I also ask that you keep the discussion here civil. |
There has been no activity on this pull request for 2 weeks. It will be closed after 3 months of inactivity. If you would like to move this PR forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review. |
This pull request was closed due to inactivity. If you are still pursuing it, feel free to reopen it and respond to any feedback or request a review in a comment. |
There has been no meaningful feedback on the PR - can someone from the Ethereum foundation please comment or let me know why it wasn't approved? I only see some bizarre cartoon pictures that seem unrelated |
When opening a pull request to submit a new EIP, please use the suggested template: https://github.com/ethereum/EIPs/blob/master/eip-template.md
We have a GitHub bot that automatically merges some PRs. It will merge yours immediately if certain criteria are met: