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
ERC-5247: Smart Proposal #5247
ERC-5247: Smart Proposal #5247
Conversation
All tests passed; auto-merging...(pass) eip-5247.md
|
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
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.
Done update
@Pandapip1 thanks for the comment. I update it with your suggestion. I don't know why Auto-Merge Bot still yield
Is it because I need an editor to give permission? |
Hi editors, all issues are resolved except for your review
|
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.
Trigger EIPW
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.
Trigger EIPW
I don't know why it's failing with
Any suggestions? |
cc @Pandapip1 |
Trigger EIPW |
Seems everything else passed. Now looking for ERC track review from an Editor among @lightclient, @axic, @SamWilsn @Pandapip1
|
// TODO: add Proposal Cancel/Edit/Withdraw Event and Functions? | ||
|
||
// TODO: decide whether we require generating ProposalId in the method or not? | ||
// TODO: if require generating ProposalId internally, can it be incremental hash-generated? | ||
// TODO: what if proposal need to demonstrate sufficient support? How to input quorum? | ||
function createProposal( | ||
uint256 proposalId, | ||
string calldata proposalUri, | ||
uint8[] calldata optionIds, | ||
address[] calldata targets, | ||
uint256[] calldata values, | ||
bytes[] calldata calldatas, | ||
uint256 startblock, | ||
uint256 endblock, | ||
bytes calldata extraParams | ||
) external returns (uint256 registeredProposalId); | ||
|
||
// TODO: what's most proper way to update the voting period? | ||
// TODO: do we want to include cancel or withdraw? | ||
// TODO: what's the best way to include weight scheme? |
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.
These TODOs need to be either resolved or removed before this can be merged.
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 generally allow TODOs in draft. The goal with DRAFT is to get something out, so as long as it generally is formatted correctly and it has all of the relevant sections and it isn't completely empty I will merge it as a draft. These definitely need to be addressed prior to Review though.
type: Standards Track | ||
category: ERC | ||
created: 2022-07-13 | ||
requires: 7 |
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.
requires: 7 | |
requires: 7, 1202 |
requires
is a bit of a misnomer; it really should be called references
.
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.
Thank you for the suggestion. but I would humbly reject this revision suggestion
I was hoping to have a separate reference eip
or related eip
in the preemble. But while it's still requires
, I would not add 1202 to avoid confusion. The purpose is to decouple 1202 and 5247
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.
Let me know if it's ok for you @Pandapip1
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.
It's a bit of a contentious point, so I'll let this slide for now. It can always be changed later if/when this goes to Review, for example.
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.
Can you rewrite the text of the EIP so it doesn't reference EIPs that aren't required? Generally speaking, EIPs shouldn't be making comparative arguments, they should focus exclusively on specifying a thing. If you are just referring to other EIPs to compare against then that sort of content probably should just be left out of the EIP entirely.
// TODO: add Proposal Cancel/Edit/Withdraw Event and Functions? | ||
|
||
// TODO: decide whether we require generating ProposalId in the method or not? | ||
// TODO: if require generating ProposalId internally, can it be incremental hash-generated? | ||
// TODO: what if proposal need to demonstrate sufficient support? How to input quorum? |
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.
These TODOs need to be either resolved or removed before this can be merged.
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.
Can I keep them as draft and as highlight these design decision to invoke discussion? I will guarantee to remove/resolve these TODOs before moving to review
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.
@SamWilsn would this be okay? I'm inclined to say yes but I'd like to have another opinion on this.
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 generally allow TODOs up until Review stage. The original intent of Draft was that the barrier to entry for a draft should be very low, just enough to get you a number and a place people could start to submit PRs against. We have drifted a bit away from that since then and also started requiring that people structure the file properly, but I don't think we should go so far as to require a draft EIP actually be finished.
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Thank you for the suggestion! Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
On Sat, Jul 16, 2022 at 05:39 Micah Zoltu ***@***.***> wrote:
***@***.**** commented on this pull request.
------------------------------
In EIPS/eip-5247.md
<#5247 (comment)>:
> @@ -0,0 +1,82 @@
+---
+eip: 5247
+title: Smart Proposal
+description: An interface of "proposals" that is submitted to, recorded on and possibly executed and enforced onchain.
+author: Zainan Victor Zhou ***@***.***)
+discussions-to: https://ethereum-magicians.org/t/erc-5247-executable-proposal-standard/9938
+status: Draft
+type: Standards Track
+category: ERC
+created: 2022-07-13
+requires: 7
Can you rewrite the text of the EIP so it doesn't reference EIPs that
aren't required? Generally speaking, EIPs shouldn't be making comparative
arguments, they should focus exclusively on specifying a thing. If you are
just referring to other EIPs to compare against then that sort of content
probably should just be left out of the EIP entirely.
how about in rationale describing the "why" of design choice?
… —
Reply to this email directly, view it on GitHub
<#5247 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAE4KRM5HNRS44YCDWPSHK3VUKUQNANCNFSM53PTQJHA>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Is it possible to describe the "why" without linking to another EIP and instead describing the different design choice in the other EIP briefly? That is generally preferable, as it allows you to focus specifically on the thing that is different without requiring the read understand the entire other EIP. |
On Sat, Jul 16, 2022 at 05:46 Micah Zoltu ***@***.***> wrote:
how about in rationale describing the "why" of design choice?
Is it possible to describe the "why" without linking to another EIP and
instead describing the different design choice in the other EIP briefly?
That is generally preferable, as it allows you to focus specifically on the
thing that is different without requiring the read understand the entire
other EIP.
Which particular mentioning of EIPs are you referring to when suggesting
removing?
In Smart Proposal we might refer to EIPs that easily illustrative the use
case of Smart Proposal such as "here is a contract call in bytecode to make
a EIP20 transfer" this helps reader to much easier understand what this EIP
can be put into context.
—
… Reply to this email directly, view it on GitHub
<#5247 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAE4KRJ2Z6QKK5DAH7C5MSTVUKVLPANCNFSM53PTQJHA>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
For that example, I don't see why you need to refer to EIP-20. You can just say something like, "here is an example call of the function |
Micah, please allow me to debate with the question about "whether one should remove EIP" via an argument of the the purpose of an EIP. First of all, let me explain this particular case: Here is a logic chain rationale:
Maybe one would say, the 3rd point is not necessary, because anyone familiar enough with ERC20 and the fact that they are specifying Secondly, let's generalize: If we want to reduce the rationale linking to the context, why don't we just remove rationale section? (It's not that I am proposing to remove rationale section, I just feel that a lot of suggestion in removing references has made the EIP proposal towards the direction of harder to read. As far as I read, EIP spells out as "Ethereum Improvement Proposal", and ERC spells "Ethereum Request for Comment", both term give me a sense that author need to both demonstrate "what to do" and "why" so as to rally community members for adoption. Therefore, given the purpose of EIP / ERC, I would like to advocate a principle of testing of an editorial change: from a lay Ethereum community member, do the suggested editing change make the document more readable or less readable. |
* Create eip-executable-proposal * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update eip-executable-proposal * Change file name to EIP-num * Change authors to author * Update * With rationale of decoupling voting and proposal * Update eip-5247.md * Update eip-5247.md * Update eip-5247.md * Update eip-5247.md * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Thank you for the suggestion! Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
* Create eip-executable-proposal * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-executable-proposal Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update eip-executable-proposal * Change file name to EIP-num * Change authors to author * Update * With rationale of decoupling voting and proposal * Update eip-5247.md * Update eip-5247.md * Update eip-5247.md * Update eip-5247.md * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Thank you for the suggestion! Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> * Update EIPS/eip-5247.md Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com> Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
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: