Paradigm Improvement Proposals (PIPs)
Paradigm Improvement Proposals (PIPs) describe standards and specifications for enhancements to the Paradigm Protocol. This repository serves as a common location where anyone can submit a spec or description for a new feature or general enhancement to the protocol. It also provides a venue for community members and the Paradigm team to discuss proposals, and collaborate on implementation.
Please read the "Submitting a PIP" section of this readme before opening an issue with your enhancement.
Submitting a PIP
PIPs are proposed and discussed as issues in this repository. If you would like to submit a proposal for discussion and consideration, please open an issue with a descriptive title following the template issue.
Good proposals are:
- Keep the scope of your proposal as narrow as possible for the suggestion you are making.
- You shouldn't be suggesting major protocol-wide architectural changes as a PIP.
- Make it clear what your proposal addresses, and the effect(s) it would have if implemented.
- Be clear and to the point; you can assume your audience is already familiar with the protocol and the specifics of it's current implementation.
- Don't make your proposal longer than it needs to be, but do provide background information as necessary.
- Complete Ideas:
- You should only submit a PIP when you have a fully developed idea; there are more appropriate venues for initial brainstorming.
- Your proposal should demonstrate you have thought through the change(s) and implications of what you are suggesting.
- Proposals should suggest changes that address issues or add value to the protocol. Don't suggest a change simply for the sake of doing so.
- Examples of reasonable proposals:
- A change to the transaction compression algorithm that increases overall efficiency.
- Addressing a potential security vulnerability in the consensus rules.
- Addressing naming inconsistencies within Paradigm's codebase.
- Aligning implementation details with the specification.
- Examples of less reasonable proposals:
- Suggesting the integration of smart-contract scripting or a cryptocurrency to the OrderStream network.
- Changing the name of a major package or application component.
- Making major, breaking changes to core consensus or validation rules.
Specifications are helpful and will speed up the PIP review process. If you submit a PIP, you are expected to be active in that issues thread; people will likely have concerns or questions about your proposal. The point of this repository is to facilitate meaningful discussion and support collaboration on implementation details.