Skip to content

Latest commit

 

History

History
35 lines (25 loc) · 5.13 KB

README.md

File metadata and controls

35 lines (25 loc) · 5.13 KB

ECIP

Ethereum Classic Improvement Proposals (ECIPs), are technical write-ups that describe suggested changes to the Ethereum Protocol. Finalized proposals agreed up by volunteer client developers, and the users of the Ethereum Classic main net blockchain are implemented by Ethereum Classic client developers.

Every pull request will be reviewed and discussed by volunteer Ethereum Classic client developers and any developers on Github willing to contribute their well reasoned opinions. Regardless if there is general agreement you are able to use the information generated from the discussion to create a a second draft. This can be done by either updating the pull request or submitting a new pull request. This process can be repeated (See figure 1) until the volunteer developer community agrees to add the pull request.

Figure 1: The cyclic process of proposal and review

Having an ECIP within the folder of the repository does not make it a formally accepted standard until its status becomes Active. For a ECIP to become Active requires the mutual consent of the community. Those proposing changes should consider that ultimately consent may rest with the consensus of the Ethereum users.

ECIPs grew out of the now hard-forked Ethereum DAO hard-fork (or ETF) repository, the are currently no other differences between Ethereum Classic/original main net and and Ethereum DAO hard-forked besides the DAO hard-fork but future changes may be added like early defusal of the difficulty bomb.

Network split

Pushing changes to the protocol without consensus will cause a network split. The ECIP process should not be skipped, as previously done by Ethereum Foundation developers unilaterally implementing a rushed hard-fork in the most widely used client creating a network split at block 1920000.

The Ethereum Foundation raised money from the community to work towards the "mission to promote and support research, development and education to bring decentralized protocols", and failed when shortly after the DAO exploit was used Vitalik Buterin announced using the Ethereum Foundation blog that a they had already unilaterally decided on forking. A chat log from an internal chat reveals this decision was made prior to the announcement, and comments like "default behavior of Geth to be pro-fork as per internal discussions" found in DAO hard-fork pull requests and the unwillingness to use their own proposal system show the narrative that the Ethereum Foundation followed the will of the community is clearly wrong. What the Ethereum foundation did the opposite of decentralized decision making.

Decentralized decision making is part of the defense in depth security that protects the integrity of the Ethereum blockchain. It is critical for keeping the promise of "applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference."

Getting started contributing

The ECIP sample is the best place to start. The sample was updated for Ethereum use by Martin Becze, it was predominantly derived from the Bitcoin improvement proposal based on the Python improvement proposal system. Fork the repository and add your ECIP to it, using the provided ECIP markdown template. Submit by creating a Pull Request to the Ethereum Classic ECIPs repository.

Current ECIPs

Number Title Author Type Layer Status / Discussion
1 Homestead Hard-fork Changes Vitalik Buterin Standard Homestead (hard-fork) Accepted
2 Addition of CALLDEPTH opcode Martin Holst Swende Standard Consensus (hard-fork) Draft
3 EIP Classification Joseph Chow Meta Draft
4 Gas Usage for RETURN and CALL* Christian Reitwiessner Standard Consensus (hard-fork) Draft
5 Renaming Suicide Variable Hudson Jameson Meta Draft
6 DELEGATECALL Vitalik Buterin Standard homestead (hard-fork) Accepted
7 devp2p Forward Compatibility Requirements for Homestead Felix Lange Standard Networking Accepted
8 Serenity Currency and Crypto Abstraction Vitalik Buterin Standard Serenity feature Draft
9 Ethereum Domain Name Service - Specification Nick Johnson Standard Informational Draft
10 Delay Difficulty Bomb Explosion Igor Artamonov Standard Consensus (hard-fork) Draft