For The LF Edge Foundation
This lifecycle document is maintained by The LF Edge Foundation (“LFE”), and its purpose is to:
- Describe the requirements for contributing a project to LFE;
- Provide a clear process for the contribution of a project to LFE; and
- Set milestones and requirements for different stages of a project’s development once accepted into LFE.
LFE may adopt, or amend this document by votes of its Technical Advisory Council (“TAC”) and Governing Board.
This document provides for three lifecycle stages for contributed projects:
- Adopted; and
All projects must meet the Incubation stage requirements and following a successful Graduation Review, progress to Adopted. It is possible that some projects may be approved as Incubation and pass a Graduation Review at the same time to advance directly to Adopted. A project that does not pass a Graduation Review remains at the Incubation stage unless the TAC votes to transition the project to Archive status.
Incubation Stage Requirements
To be accepted at the Incubation stage, a project must:
- Submit a completed Project Contribution Proposal Template, as attached hereto as Exhibit A, to the TAC, or the TAC’s designated recipient for contribution proposals.
- Provide such additional information as the TAC may reasonably request.
- Be available to present to the TAC with respect to the project’s proposal and inclusion in LFE. Project teams should be prepared to present a detailed (20-30 minutes in length) overview on the project in addition to speaking to the information contained in the project contribution proposal.
- Be deemed by the TAC to add value to the mission of LFE.
- Have a technical charter that provides for inbound and outbound licensing of code under an OSI-approved license approved by the Governing Board of LFE for projects.
- Agree to transfer any relevant trademarks to an LF entity to hold for the project. In the case of projects with established trademarks where a trademark transfer is commercially difficult, we generally recommend the project use a new name upon incubation.
- Obtain an affirmative vote of the TAC.
An initial review of a proposal submitted to the TAC should be conducted within two to four weeks following acceptance of a project contribution proposal. If a project is a new project, it’s often helpful to share the vision for the project, the anticipated structure and benefits.
If the project is an existing open source project proposed to join LFE, it is often helpful to schedule a project walkthrough for the community to better understand the project, including the architecture, structure and how to get starting using the project. This often helps progress reviews more efficiently.
To be advanced to an Adopted stage, a project must meet the Incubation stage requirements plus:
- Demonstrate having a healthy number of committers from a diverse contributor base *. A committer is defined in the technical charter but is often used to describe the core contributors who can accept contributions to the project, or a portion thereof.
- Have achieved and maintained a Core Infrastructure Initiative Best Practices Badge.
- Demonstrate a substantial ongoing flow of commits and merged contributions*.
- Document current project owners and current and emeritus committers in a COMMITTER files. A copy of the project’s charter (or other authorized governance document) will be included or linked to in a GOVERNANCE or in a similar file.
- Have a technical lead appointed for representation of the project to the TAC.
- A have completed and presented to the TAC an initial license scan of the project’s codebase.
- Obtain an affirmative vote of both the TAC and the Governing Board.
*Since these metrics can vary significantly depending on the type, scope and size of a project, the TAC has final judgment over the level of activity that is adequate to meet these criteria.
Project Benefits Associated with Each Lifecycle Stage
Incubation stage projects are eligible to receive the following benefits:
- Incubation stage projects will constitute “Technical Projects” under the LFE charter and may receive support as determined by the Governing Board.
- Neutral hosting of the project’s community and any key assets (e.g. trademark, domain, etc.)
- Assistance from the LFE TAC to facilitate collaboration with other project communities.
- Blog announcement or similar communication announcing the inclusion of the project.
- Right to refer to the project as an incubation project of LFE, and an opportunity to participate in events and other collaborative activities sponsored by LFE.
- Subject to applicable trademark usage guidelines, to display LFE’s logo on the project’s code repository.
Incubation stage projects are expected to leverage third-party public code repositories.
Adopted stage projects are eligible to receive the following benefits:
- Will become an official “Technical Project” under the LFE charter and may receive additional resources or support as determined by the Governing Board.
- Right to refer to the project as an officially adopted project of LFE, and receive highest priority for participating in events and other collaborative activities sponsored by LFE.
- A blog announcement or similar communication announcing the graduation of the project.
- Graduation stage projects that receive the approval of the Governing Board constitute “TAC Projects” under the LFE charter.
- Archive stage projects will constitute “Technical Projects” under the LFE charter and may receive support as determined by the Governing Board.
The TAC may undertake periodic reviews of all projects (i.e., annual). Such review will include an assessment as to whether each Incubation stage project is making adequate progress towards the Graduation stage. Any Adopted project may be moved to Archive stage by affirmative vote of the TAC.