Disclaimer: We have updated the LIP Guidelines. This makes some parts of this blog post outdated. Here are the main points of change:
- The guidelines for reaching the status “Proposed” and for proposing a change to the network are less strict.
- A LIP reaches the status “Final” if it is implemented on the chain that is decided to be the Lisk blockchain by the Lisk Foundation.
- The decision criteria of the Lisk Foundation are made more precise. Decisions with regard to instructing a third party to implement a LIP are based on technical and scientific arguments, feasibility and the objectives of the Lisk Foundation. Decisions with regard to accepting changes/forks are based on several factors, including the acceptance of nodes, delegates and exchanges.
Along with the unveiling of the brand new Lisk Development Roadmap , we are pleased to announce the beginning of the Lisk Improvement Proposal process. Lisk Improvement Proposals, also known as LIPs, form a proposal system which allows transparent and open discussion on how we develop the Lisk network and all the objectives disclosed on the new roadmap. The LIPs themselves are thoroughly researched technical documents which are designed to be robustly debated. LIPs follow in the tradition of blockchain improvement proposal systems pioneered by the Bitcoin Improvement Proposals in 2011.
To put it simply, the objectives disclosed on the new roadmap provide a clear indication of Lisk’s direction, while LIPs provide the scientific backbone to this direction.
Lightcurve Science and Development teams have been trialing and refining the LIP process internally throughout this year. Today we are excited to reveal both the process and initial body of research produced during this timeframe. As the number of LIPs grows, we will continue to add to this, so please star and follow this repository to stay updated and involved.
We look forward to working together with the community in an open-source, collaborative manner using LIPs.
Let’s have a look at how LIPs are actually submitted. Please note that the process described below is intended as a general overview. Community members that would like to submit a guideline-compliant and technologically feasible LIP, please make sure to first read the full rules outlined in LIP-0001. You can also find the terminology used below in our dedicated LIP FAQ.
The first step in submitting a LIP is to check that the idea is feasible. Much of this early research and discussion will be conducted on our mailing list.
After checking the feasibility of the initial idea, the next step is for the LIP champion to present the idea as a draft, by creating a new thread on the mailing list.
Proposal Drafted on GitHub
After the discussion on our mailing list, the LIP champion can create a pull request on GitHub. The LIP editor, who is a member of the Lisk Foundation, will then review the proposal, check that it adheres to the guidelines and assign a number. It is important to note that the LIP Editor does not evaluate a LIP on its content, but purely on formatting and guideline compliance.
There are eight LIPs (plus the guidelines) already merged into our GitHub repo, with the status of a “draft”. These LIPs have been published already as the research conducted by Lightcurve has been deemed complete by the Lisk Foundation. They can be used by the community as a guideline to demonstrate the style and manner in which LIPs should be written and to push forward initial development on our roadmap.
Once the LIP is published as a draft on GitHub, community members can continue to discuss the proposal on its mailing list thread.
Alpha Implementation of a LIP
Following both the discussion on the mailing list, and reviewing the proposal on GitHub, the Lisk Foundation will carefully deliberate, considering community popularity and traction, and the feasibility of the proposal. After taking these factors into account, the Lisk Foundation can instruct Lightcurve to begin development of an alpha reference implementation (proof of concept). Lightcurve will also conduct QA on alphanet of this implementation.
Beta Implementation of a LIP
Next, the Lisk Foundation can instruct Lightcurve to build the beta reference implementation, this again will be tested by Lightcurve on betanet (for major releases) and with the help of the community on the Testnet (all releases).
Once work on the Beta implementation begins, the status of the LIP will be changed to “proposed”.
After testing on Betanet and QA, Lightcurve will prepare the release for the Mainnet. Once this release has been accepted by the majority of the nodes on the network, we can consider the proposal to have achieved full consensus, and the LIP’s status is changed to “active”.
Please note that the LIP process is not fixed in stone, as we expect it to gradually evolve over time. The community can also propose changes to it by submitting a LIP with their suggested improvements.
This system takes us one step further on our journey to achieve the decentralized and open-source blockchain ecosystem we envisioned, one in which will reap the benefits of collaboration and constructive feedback of the wider Lisk developer community.
Lisk Improvement Proposals will help to enrich our network’s development into a diverse and robust blockchain application platform. Let’s build the future together!
The Lisk Team