Approved by Open Mainframe Project TSC on 2018-09-05
Open Mainframe Project Top Level Project Graduation Criteria
Every Open Mainframe Project (OMP) project has an associated maturity level. Proposed OMP projects should state their preferred maturity level. When a TSC vote is held on a proposed project entering OMP, votes may either be for the project to enter as an Incubation or Active Stage project, or not to enter at this time. A two-thirds supermajority is required for a project to be accepted. If there is not a supermajority of votes to enter as a Active Stage project, then any Active Stage votes are recounted as votes to enter as an Incubation Stage project. If there is not a supermajority of votes to enter as an Incubation Stage project, the project is rejected. This voting process is called fallback voting.
Projects of all maturities have access to all resources listed at https://openmainframeproject.org/projects but if there is contention, more mature projects will generally have priority.
To be accepted to the Incubation Stage, a project must complete the proposal process.
Every 12 months, each Incubation Stage project will come to a vote with the TSC. A supermajority vote is required to renew a project at Incubation Stage for another 12 months or move it to active stage. If there is not a supermajority for any of these options, the project is not renewed.
In the case of an Incubation Stage project that is not renewed with OMP, the trademark will be returned to the project maintainers or an organization they designate.
To graduate from Incubation Stage, or for a new project to join as an Active Stage project, a project must complete the proposal process plus:
- Have committers from at least two organizations.
- Have achieved and maintained a Core Infrastructure Initiative Best Practices Badge.
- Explicitly define a project governance and committer process. This preferably is laid out in a GOVERNANCE.md file and references an OWNERS.md file showing the current and emeritus committers. A recommended governance process is defined at example_governance.md
- Have a public list of project adopters for at least the primary repo (e.g., ADOPTERS.md or logos on the project website).
- Receive a supermajority vote from the TSC to move to accepted stage.
Projects start at the Active Stage if they can demonstrate sufficient maturity. Projects can remain in an Incubation Stage indefinitely, but they are normally expected to move to Active Stage within two years.
Projects like products have lifecycles, and often in open source the relevance for a given project over time can dimenish. Nonetheless, having a home for projects no longer recieving active development is crucial for long-term sustainability and asset management.
Projects only can enter the Emeritus Stage by either:
- On request from the project itself, requiring a supermajority votes of all active project committers
- By a supermajority vote of the TSC if there has been insufficent activity in the project over the course of 6 months.
When in the Emeritus Stage, the project's code repository adminstration is transfered to a designated individual by the TSC. No new features or bug fixes will be addressed, unless it is deemed a security issue. OMP will hold all assets in perpetuity.
A project can move back to Active Stage following the guidelines for a project being accepted at the Active Stage above.