xref: /openbmc/docs/tof/membership-and-voting.md (revision 2f52b0a3)
1# TOF Membership and Voting
2
3## Technical Oversight Forum
4
5### Members
6
7The TOF body shall consist of between 5 and 9 members selected by the OpenBMC
8Development Community by vote.  The current number of members is **7** and this
9shall only be changed, prior to a TOF election, by a unanimous decision at a
10regular meeting of the current TOF body.
11
12TOF members must themselves be members of the OpenBMC Development Community.
13This is determined by voting eligibility; ie. an individual is only eligible to
14be elected a member of the TOF if they are eligible to vote in their own
15election.
16
17To encourage a diverse viewpoint, no more than 2 TOF members may be employed
18by, or working under a contract relationship for, the same entity
19unless (one of):
20- The entity is the Linux Foundation.
21- The TOF members have been unopposed in an election.
22
23### Terms and Elections
24Members are elected by Ranked Choice Voting of the OpenBMC Development
25Community at twice yearly elections.  Members of the TOF typically serve a 1
26year term before their seat is up for re-election; members have no term limits.
27
28To facilitate continuity of the TOF body, these elections are held every 6
29months in which half (+/- 1) of the seats are re-elected.  Due to additions or
30subtractions in seats and membership resignations, more than half (+1) of the
31seats may need to be filled in a single election.  Prior to the election the
32current TOF may determine a certain number of seats will be 6 month terms, to
33return the number of seats per election to a more equal number, and these seats
34will be given to the individuals with the later results in the RCV.
35
36Elections are to begin on March 1st and September 1st at 00:00 UTC and conclude
37seven days later.  Election schedule is as follows:
38
39| Q1 Elections | Q3 Elections | Action on or by 00:00 UTC. |
40|:------------:|:------------:|:---------------------------|
41| Jan 1st | July 1st | Developer contributions close for OpenBMC Development Community membership eligibility (See “Metrics”). |
42| Jan 15th | July 15th | Current TOF must publish a list of eligible voting members. |
43| Jan 30th | July 30th | Nominations (self or peer) for TOF seats must be sent to the mailing list. |
44| Jan 30th | July 30th | Developers disputing membership eligibility must submit a petition request to the current TOF. |
45| Feb 15th | Aug 15th | Current TOF must publish a final list of eligible voting members and upcoming candidates for TOF seats. |
46| March 1st | Sept 1st | Election begins. |
47| March 7th | Sept 7th | Election concludes. |
48| March 15th | Sept 15th | Current TOF publishes election results and updates the TOF membership document with new members and terms. |
49| Apr 1st | Oct 1st | TOF member terms conclude / begin. |
50
51This document shall be maintained with a list of current members and their term
52end (sorted by term conclusion followed by alphabetically by preferred name):
53
54| Name | Term Conclusion |
55|:-----|:---------------:|
56| Deepak Kodihalli | 2022-04-01 |
57| Lei YU | 2022-04-01 |
58| Patrick Williams | 2022-04-01 |
59| Richard Thomaiyar | 2022-04-01 |
60| Andrei Kartashev | 2022-10-01 |
61| Brad Bishop | 2022-10-01 |
62| Ed Tanous | 2022-10-01 |
63
64## OpenBMC Development Community
65
66Membership in the OpenBMC development community is determined by development
67contributions to the project.  By contributing to the project, developers gain
68a voice in the technical direction of the project by shaping the membership in
69the TOF.
70
71There are two tiers of membership in the development community: normal and
72highly-productive.  It is the responsibility of the TOF to set metrics for
73determining community and tier membership.  The normal membership tier is
74expected to maintain a low-bar to encourage a diverse and vibrant membership,
75while the highly-productive membership tier is expected to represent between
7612.5% (1/8) and 20% (1/5) of the community.  (Whenever the highly-productive tier
77has representation outside of this percentage, the TOF should adjust the
78determining metrics for the next election / membership cycle.)  In any election
79cycle, normal developers are given a vote weight of 1 and highly-productive
80developers are given a vote weight of 3.
81
82Membership is determined using data from the previous 6 months of development
83contributions.  Using this data, the TOF will publish a list of Active Members
84of the two tiers.  An individual who was an Active Member of a tier in the
85preceding 6 months, but does not qualify in the most recent 6 months, will be
86listed as an Member Emeritus for 6 months.  Both Active and Emertius members
87are eligible for elections.
88
89Any individual who feels their contributions to the project were not recognized
90by the existing metrics may petition the TOF for inclusion in either tier and
91the TOF will make a determination.  Examples of these types of contributions
92might be: development in upstream Open Source communities not directly
93controlled by OpenBMC, but for features leveraged by the OpenBMC codebase, and
94significant support activities in areas not covered by existing metrics such as
95Wikis and Discord.
96
97### Metrics
98
99Determination of membership in the community is made by a point system for
100activities.
101- Development of a non-trivial commit (10+ lines) - 3 points.
102- Non-trivial code review (3 or more code suggestions) - 1 point.
103
104The TOF may decide to exempt commits which are only machine configuration or
105sub-sections of a repository only intended for use by one entity.  For example
106repositories named `company-ipmi-oem-provider`, subdirectories named
107`oem/company`, Yocto recipes in `meta-company`, and entity-manager configuration
108might all be exempted.  Any such exemptions should be applied consistently to
109all members.
110
111Points required for Active membership (in the preceding 6 months):
112- Normal - 15 points.
113- Highly-Productive - 2 million points.
114    - [[ This was purposefully unreasonable because we need real data here from
115         the past 6 months to get a decent ballpark.]]
116
117