Sitemap

EIP process— reflecting our EIP-5023 journey

5 min readJan 9, 2023

--

Rough timeline of our EIP Process. Adapted from https://eips.ethereum.org/EIPS/eip-1 .

Since late 2021 we have been working on EIP-5023 in relation to our ongoing EU funded research project ATARCA. I’m happy to tell you that the road has been long but it has been finally journeyed through. Since Jan 3rd 2023 our EIP proposal has been accepted as the final version and thus it has been immortalized as part of the Ethereum project.

Sounds great doesn’t it! But what are EIPs and how does one make an EIP?

EIP stands for an Ethereum Improvement Proposal and it describes a technical specification of a feature and it gives a rationale for it. These EIPs or commonly Ethereum standards come in different flavors, some are core protocol specifications, some are client API descriptions and some are contract standards. At the moment there are six different standard tracks for different standard types.

EIPs are basically technical documents approved and supported by the Ethereum community which standardize and improve the Ethereum ecosystem.

EIPs are not rocket science but spending time on the idea and the draft phase can save effort later on.

So how does one make an EIP and what does the process look like? As for any open source project, starting the journey of becoming a contributor for one can be daunting. No worries though, the EIP-1 exists exactly for this purpose. It describes the EIP workflow, the different types of EIPs, the EIP format and it sets some best practices for a successful EIP proposal.

So you want to make an EIP? Excellent!

Now, to smoothen the learning curve I’ve raised a few learning points that will cut some time from your personal EIP process. Unlike us, you don’t have to spend a year on getting your idea to a final proposal.

However, it all starts with an idea and a will to see it through. EIP process, that is getting the EIP moving from a draft version through the different steps towards the final version, is mainly driven by you, the EIP author.

Your best friends, besides your co-authors are the Ethereum community at Ethereum magicians forum and the EIP editors or Ethereum core developers depending on what kind of EIP you are suggesting.

Say, you have an exciting new idea for a token standard. Now to minimize the risk of creating something that already exists is to check if someone has already captured it as an EIP. Check through the existing EIPs if your idea exists. Check through the Ethereum magicians forum if someone already has started to draft an EIP about it. If so, maybe you can contribute to it by and become a co-author of it by engaging the authors of it on the ethereum magicians forum and on the Ethereum EIP repository on Github.

So your idea is a unique one. Awesome!

Your next steps are to garner some buy-in from the Ethereum community and to make a draft proposal. Sounds a bit of a mouthful, but the general idea is to engage the community about your idea and get some feedback about it if possible.

Once you have created a thread of your idea to the forum and you have created an EIP draft that fulfills the EIP-1 requirements then you’ll need to make a pull request to the Ethereum EIPs repository. Note that the number of pull your request becomes the number of your draft EIP.

Your EIP will be automatically checked by bots for consistency against the EIP-1 definitions and once they all pass you’ll eventually get an EIP editor to have a look at your EIP.

EIP editors will give you important feedback on your proposal and it’s good practice to take it into account. Reflect the feedback, but be prepared to defend your ideas if necessary. The editors may not know just from the initial draft proposal what you are after and what you are exactly proposing. This part of the process may take several iterations.

After you have resolved all the questions from the EIP editors and they are content about consistency and the structure of the proposal they’ll merge it to the EIPs as a draft proposal.

After this phase, you can engage the Ethereum community for further feedback and when you are ready you can update the proposal with a new pull request to be changed from draft to review phase.

Given that there’s no new feedback from the editors you can make a new update from review to last call where you’ll also need to state on the proposal a date for the last possible date for feedback about the proposal.

Typically this is two weeks. After the time has passed, you should update the proposal to final stage and once it has been approved you have reached the end of the journey.

About our journey

In retrospect, our EIP journey took around one year from start to finish. We really took our time with it. Learning the ropes of the EIP process and continuously thinking over how our proposal would benefit the Ethereum community and the Ethereum ecosystem but also how it fits our project took its time.

In hindsight we could have moved a lot faster through the phases of the EIP process. Especially from idea to draft to review part. Getting the draft proposal together for quick initial review will save you some time. Also addressing the feedback in a timely manner will help you to stay focused on the EIP process as coming back to it after a couple of weeks may cause some delays in picking up the thinking process.

Below are a few resources that I found very useful during our EIP journey. Especially the recorded sessions of the EIP editorial process which can give you an insight of how the editors view the proposals and what kind of questions arise out of them.

Useful resources:

--

--

No responses yet