Skip to content

Commit e92fa87

Browse files
committed
Create TSC_Charter.md
1 parent cba4c78 commit e92fa87

File tree

1 file changed

+177
-0
lines changed

1 file changed

+177
-0
lines changed

TSC_Charter.md

Lines changed: 177 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,177 @@
1+
# Project Technical Steering Committee (PTSC) Charter
2+
3+
## Section 1. Guiding Principle
4+
5+
The WebAssembly Micro Runtime (WAMR) project is part of the
6+
7+
Bytecode Alliance (BA) which operates transparently, openly,
8+
9+
collaboratively, and ethically. Project proposals, timelines, and status
10+
11+
must not merely be open, but also easily visible to outsiders.
12+
13+
## Section 2. Project Governance under Bytecode Alliance
14+
15+
Technical leadership for the WAMR projects within the Bytecode Alliance
16+
17+
is delegated to the projects through the project charter. Though the BA TSC
18+
19+
will not interfere with day-to-day discussions, votes or meetings of the PTSC,
20+
21+
the BA TSC may request additional amendments to the PTSC charter when
22+
23+
there is misalignment between the project charter and the BA mission and values.
24+
25+
26+
27+
The PTSC structure described in this document may be overhauled as part of
28+
29+
establishing a BA TSC in order to adhere to constraints or requirements that
30+
31+
TSC will impose on project-level governance.
32+
33+
## Section 3. Establishment of the PTSC
34+
35+
PTSC memberships are not time-limited. There is no maximum size of the PTSC.
36+
The size is expected to vary in order to ensure adequate coverage of important
37+
areas of expertise, balanced with the ability to make decisions efficiently.
38+
The PTSC must have at least four members.
39+
40+
There is no specific set of requirements or qualifications for PTSC
41+
membership beyond these rules. The PTSC may add additional members to the
42+
PTSC by a standard PTSC motion and vote. A PTSC member may be removed from the
43+
PTSC by voluntary resignation, by a standard PTSC motion, or in accordance to the
44+
participation rules described below.
45+
46+
Changes to PTSC membership should be posted in the agenda, and may be suggested
47+
as any other agenda item.
48+
49+
The PTSC may, at its discretion, invite any number of non-voting observers to
50+
participate in the public portion of PTSC discussions and meetings.
51+
52+
The PTSC shall meet regularly using tools that enable participation by the
53+
community (e.g. weekly on a Zulip channel, or through any other
54+
appropriate means selected by the PTSC ). The meeting shall be directed by
55+
the PTSC Chairperson. Responsibility for directing individual meetings may be
56+
delegated by the PTSC Chairperson to any other PTSC member. Minutes or an
57+
appropriate recording shall be taken and made available to the community
58+
through accessible public postings.
59+
60+
PTSC members are expected to regularly participate in PTSC activities.
61+
62+
In the case where an individual PTSC member -- within any three month period --
63+
attends fewer than 25% of the regularly scheduled meetings, does not
64+
participate in PTSC discussions, *and* does not participate in PTSC votes, the
65+
member shall be automatically removed from the PTSC. The member may be invited
66+
to continue attending PTSC meetings as an observer.
67+
68+
## Section 4. Responsibilities of the PTSC
69+
70+
Subject to such policies as may be set by the BA TSC, the WAMR PTSC is
71+
responsible for all technical development within the WAMR project,
72+
including:
73+
74+
* Setting release dates.
75+
* Release quality standards.
76+
* Technical direction.
77+
* Project governance and process.
78+
* GitHub repository hosting.
79+
* Conduct guidelines.
80+
* Maintaining the list of additional Collaborators.
81+
* Development process and any coding standards.
82+
* Mediating technical conflicts between Collaborators or Foundation
83+
projects.
84+
85+
The PTSC will define WAMR project’s release vehicles.
86+
87+
## Section 5. WAMR Project Operations
88+
89+
The PTSC will establish and maintain a development process for the WAMR
90+
project. The development process will establish guidelines
91+
for how the developers and community will operate. It will, for example,
92+
establish appropriate timelines for PTSC review (e.g. agenda items must be
93+
published at least a certain number of hours in advance of a PTSC
94+
meeting).
95+
96+
The PTSC and entire technical community will follow any processes as may
97+
be specified by the Bytecode Alliance Board relating to the intake and license compliance
98+
review of contributions, including the Bytecode Alliance IP Policy.
99+
100+
## Section 6. Elections
101+
102+
Leadership roles in the WAMR project will be peer elected
103+
representatives of the community.
104+
105+
For election of persons (such as the PTSC Chairperson), a multiple-candidate
106+
method should be used, such as:
107+
108+
* [Condorcet][] or
109+
* [Single Transferable Vote][]
110+
111+
Multiple-candidate methods may be reduced to simple election by plurality
112+
when there are only two candidates for one position to be filled. No
113+
election is required if there is only one candidate and no objections to
114+
the candidate's election. Elections shall be done within the projects by
115+
the Collaborators active in the project.
116+
117+
The PTSC will elect from amongst voting PTSC members a PTSC Chairperson to
118+
work on building an agenda for PTSC meetings. The PTSC shall hold annual
119+
120+
elections to select a PTSC Chairperson; there are no limits on the number
121+
of terms a PTSC Chairperson may serve.
122+
123+
## Section 7. Voting
124+
125+
For internal project decisions, Collaborators shall operate under Lazy
126+
Consensus. The PTSC shall establish appropriate guidelines for
127+
implementing Lazy Consensus (e.g. expected notification and review time
128+
periods) within the development process.
129+
130+
The PTSC follows a [Consensus Seeking][] decision making model. When an agenda
131+
item has appeared to reach a consensus the moderator will ask "Does anyone
132+
object?" as a final call for dissent from the consensus.
133+
134+
If an agenda item cannot reach a consensus a PTSC member can call for
135+
either a closing vote or a vote to table the issue to the next meeting.
136+
The call for a vote must be seconded by a majority of the PTSC or else the
137+
discussion will continue.
138+
139+
For all votes, a simple majority of all PTSC members for, or against, the issue
140+
wins. A PTSC member may choose to participate in any vote through abstention.
141+
142+
## Section 8. Project Roles
143+
144+
The WAMR git repository is maintained by the PTSC and
145+
additional Collaborators who are added by the PTSC on an ongoing basis.
146+
147+
Individuals making significant and valuable contributions,
148+
“Contributor(s)”, are made Collaborators and given commit-access to the
149+
project. These individuals are identified by the PTSC and their addition
150+
as Collaborators is discussed during a PTSC meeting. Modifications of the
151+
contents of the git repository are made on a collaborative basis as defined in
152+
the development process.
153+
154+
Collaborators may opt to elevate significant or controversial
155+
modifications, or modifications that have not found consensus to the PTSC
156+
for discussion by assigning the `tsc-agenda` tag to a pull request or
157+
issue. The PTSC should serve as the final arbiter where required. The PTSC
158+
will maintain and publish a list of current Collaborators, as
159+
well as a development process guide for Collaborators and Contributors
160+
looking to participate in the development effort.
161+
162+
## Section 9. Definitions
163+
164+
* **Contributors**: contribute code or other artifacts, but do not have
165+
the right to commit to the code base. Contributors work with the
166+
project’s Collaborators to have code committed to the code base. A
167+
Contributor may be promoted to a Collaborator by the PTSC. Contributors should
168+
rarely be encumbered by the PTSC.
169+
170+
* **Project**: a technical collaboration effort, e.g. a subsystem, that
171+
is organized through the project creation process and approved by the
172+
PTSC.
173+
174+
[Consensus Seeking]: https://en.wikipedia.org/wiki/Consensus-seeking_decision-making
175+
[Condorcet]: https://en.wikipedia.org/wiki/Condorcet_method
176+
[Single Transferable Vote]: https://en.wikipedia.org/wiki/Single_transferable_vote
177+

0 commit comments

Comments
 (0)