Gravity RFC is a process for proposing and implementing changes in our ecosystem.
This repository consists of the three parts:
- Issues (each issue is a RFC)
- Project for tracking all our RFCs
- Issue template for creating new RFCs
We recommend creating a RFC in any of the following cases:
- Change that you're proposing affects multiple Gravity UI projects
- OR change that you're proposing is complex enough to require proper analysis and discussion (i.e. it's not simple bugfix)
- OR you want to change something in Gravity ecosystem but don't know which project your proposal should be related to
Just create an issue in this repository. We ask you to use template if possible: it helps you structure your proposal and helps us triage and process them faster.
After creating RFC, it will be triaged by our team: we'll mark it with necessary labels and invite relevant people to the discussion – usually the maintainers of the projects affected by the proposal.
If we come to a conclusion that the proposed change is related only to a single project and not very complex in it's nature, we'll move it to the proper repository so it can be triaged and processed by that project's team.
Anybody can participate in the discussion and bring something to the table: we are always interested in various usecases and potential problems related to the proposal.
Usually we strive to achieve general agreement with all parties involved in the discussion, but maintainers of related projects have upper hand in these decisions. In controversial situations, special group consisting of experienced maintainers and team leaders will investigate the proposal and it’s possible solutions and will correct decision if necessary.
After discussion and approval, usually set of issues will be created to track required changes in related repositories. If proposal requires some assistance for implementation, we'll try to aid in finding volunteer who will be able to help with that.