Version 1.0 - Validated by the board of directors on 2024-01-29
The OpenRail Association's Technical Committee (TC) is responsible for selecting and overseeing the Association's projects to ensure that they are aligned with the Association's goals and values. The committee works in collaboration with the Board of Directors to make informed decisions on which projects to support and provides the necessary guidance to ensure their success.
The Technical Committee is also responsible for the necessary software and service infrastructure for code hosting and other common tools to facilitate open source collaboration. It may delegate operation but shall be reponsible for overseeing the overall management of such tools.
- True to open source values - Projects shall be run according to proven open source principles and values.
- Equal access - Projects shall be run in a way which provides equal access to all contributors. Decisions should be taken based on the merit of a contribution and the alignment with the goals of the project not based on status or affiliation of the contributors.
- Transparency - Projects shall operate in a transparent way. This applies to development as well as decisions around the project.
The TC is composed of:
- One representative of each project hosted by the OpenRail Association. The representative for each project is designated by the maintainers of the corresponding project. The designation should not be changed more often than once a year.
- The Board of Directors can appoint up to three additional members to the TC. This is meant to bring in people with an overall technical perspective across projects and as a way to get the TC started when there are no or only few projects.
All members of the TC should have a technical perspective, work towards the benefit of the projects of the OpenRail Association, and be prepared to do the hands-on work which is required as part of the tasks of the TC.
The Chair of the TC is elected once a year from among the TC members. The Chair is responsible for ensuring that meetings are conducted according to the rules described below, and for communicating the decisions made at these meetings to the Board and the wider Openrail Association community. The Chair is representing the Technical Committee as a whole, which means all projects in the Association, not only a particular project.
The current TC Chair is responsible for running the election of the next TC Chair and remains responsible for the TC Chair duties until the next TC Chair is elected.
Each member of the TC has one vote for electing the chair. The candidate who gets the most votes is elected as a chair. If there is a tie between multiple candidates having the same number of most votes, another round of voting is done between the candidates which are tied. This is repeated until a single candidate gets the most votes.
If the Chair position is vacant, because the Chair has left the TC or for any other reason, the board of the Association assigns a person to run the election of a new Chair. The election should be concluded within one month.
The TC will meet regularly to discuss proposed projects and make decisions. Meetings can be in person or online. Agendas and protocols of meetings should be made available publicly. The TC can choose to open meetings to people not being members of the TC.
The TC should strive to make decisions consensually. The default decision mechanism is consent. If that does not result in a decision, the TC falls back to a vote, where each TC member has one vote. In case of a tie the TC Chair decides.
Projects will be submitted to the Association for evaluation by the Technical Committee. Projects will be evaluated on criteria such as their alignment with the Association's goals and values, their potential impact on the community, their technical feasibility and their ability to be sustained in the long term. The committee will then decide whether the project will be proposed to the Board of Directors to be hosted by the Association or not.
The TC defines criteria and a process to define the maturity of a project and how a project transitions between different maturity stages. This should include:
- General criteria and requirements to be fulfilled by all projects
- Maturity stages and which specific criteria and requirements have to be fulfilled on which maturity stage
- A procedure to retire inactive, unmaintained, or obsolete projects
The committee will provide guidance to help approved projects achieve their objectives. The TC ensures that projects are run according to open governance principles and that they respect the goals and values of the Association. Within these boundaries projects should have the freedom to operate independently and define their own governance. The TC provides templates and best practices to support projects to implement their governance.
Projects are required to define at least one maintainer and a procedure how this maintainer is chosen and how maintainership is transitioned when a maintainer steps away from the maintainer role.
These rules of procedure may be amended by the Technical Committee in consultation with the Association. The TC proposes changes to the Board of Directors which validates them.