Skip to content

Commit d38d20e

Browse files
authored
Merge branch 'main' into workgroups-clean
2 parents 24c46e3 + f66fe4f commit d38d20e

File tree

7 files changed

+348
-137
lines changed

7 files changed

+348
-137
lines changed

governance/roles.md

+163-98
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,24 @@ group will have many members, all serving in varying capacities. Within this
55
document, "member" may refer to a Chair, a Technical Lead, or other Member
66
roles.
77

8-
The following is the current listing of member roles:
9-
10-
* [Three Chairs](#role-of-chairs)
11-
* [Technical Leads](#role-of-technical-leads)
12-
* [Chair Emeriti](#role-of-chair-emeriti)
13-
* [Project Leads](#role-of-project-leads)
14-
* [STAG Representatives](#role-of-stag-representatives)
15-
* [Team leads](#role-of-team-leads)
16-
* [Group Members](#role-of-members)
17-
* [TOC Liaison](#toc-liaison)
18-
* [Facilitation Roles](#facilitation-roles)
8+
The various roles are listed as follows:
9+
10+
* [Role of members](#role-of-members)
11+
* [Maintaining active members](#maintaining-active-members)
12+
* [Managing membership](#managing-membership)
13+
* [Role of chairs](#role-of-chairs)
14+
* [Role of technical leads](#role-of-technical-leads)
15+
* [Role of chair emeriti](#role-of-chair-emeriti)
16+
* [Role of project leads](#role-of-project-leads)
17+
* [Ongoing projects](#ongoing-projects)
18+
* [Role of team leads](#role-of-team-leads)
19+
* [TOC liaison](#toc-liaison)
20+
* [Facilitation roles](#facilitation-roles)
21+
* [Security assessment facilitator](#security-assessment-facilitator)
22+
* [Meeting facilitator](#meeting-facilitator)
23+
* [Meeting scribe(s)](#meeting-scribe(s))
24+
* [Triage team](#triage-team)
25+
* [Project teams](#project-teams)
1926

2027
All members are identified in the TAG [README](/README.md), with annotations
2128
where they hold an additional role.
@@ -44,19 +51,20 @@ consider their actions to support the group.
4451
other members to ensure the role is adequately staffed during the leave.
4552
* Members going on leave for 1-3 months *MAY* work with other members to
4653
identify a temporary replacement.
47-
* Members of a role *SHOULD* remove any other members that have not communicated
48-
a leave of absence and either cannot be reached for more than 1 month or are
49-
not fulfilling their documented responsibilities for more than 1 month. This
50-
may be done through a super-majority vote of members, or if there are not
51-
enough *active* members to get a super-majority of votes cast, then removal
52-
may occur through a super-majority vote of the Chairs.
54+
* Members of a role *SHOULD* remove any other members that have not
55+
communicated a leave of absence and either cannot be reached for more than 1
56+
month or are not fulfilling their documented responsibilities for more than 1
57+
month. This may be done through a super-majority vote of members, or if there
58+
are not enough *active* members to get a super-majority of votes cast, then
59+
removal may occur through a super-majority vote of the Chairs.
5360
* Members contribute to projects, according to the standard group
5461
[process](process.md).
5562

5663
### Managing membership
5764

58-
* Membership disagreements may be escalated to the Chairs. Disagreements among
59-
the Chairs may be escalated to a Security TAG TOC Liaison.
65+
66+
* Membership disagreements may be escalated to the Chairs. Disagreements
67+
among the Chairs may be escalated to a Security TAG TOC Liaison.
6068
* Members *MAY* decide to step down at anytime and optionally propose a
6169
replacement.
6270

@@ -68,18 +76,18 @@ navigate a complex security landscape. If the TAG has less than two Technical
6876
Leads, any Chair may act as Technical Lead.
6977

7078
* Primary role of Chairs is to run operations and the governance of the group.
71-
* The Chairs are responsible for ensuring that group meetings are planned and
72-
facilitated effectively, while also engaging group members in leadership
79+
* The Chairs are responsible for ensuring that group meetings are planned
80+
and facilitated effectively, while also engaging group members in leadership
7381
roles. Effective facilitation includes (but is not limited to) the following
7482
activities:
75-
* setting the agenda for meetings
76-
* extending discussion via asynchronous communication to be inclusive of
83+
* Setting the agenda for meetings.
84+
* Extending discussion via asynchronous communication to be inclusive of
7785
members who cannot attend a specific meeting time.
78-
* scheduling discussion of proposals that have been submitted
79-
* asking for new proposals to be made to address an identified need
80-
* partnering with Technical Leads to establish a roadmap and manage ongoing
81-
projects
82-
* serving as Security TAG leadership representative to ensure the project and
86+
* Scheduling discussion of proposals that have been submitted.
87+
* Asking for new proposals to be made to address an identified need.
88+
* Partnering with Technical Leads to establish a roadmap and manage ongoing
89+
projects.
90+
* Serving as Security TAG leadership representative to ensure the project and
8391
project lead(s) is successful
8492
* check in with the project lead regularly to discuss progress, blockers,
8593
and updates
@@ -141,39 +149,44 @@ as technical leads.
141149

142150
## Role of project leads
143151

144-
Project Leads lead specific projects where a deliverable has been defined within
145-
the issue.
146-
147-
Project Leads are nominated and approved by the process defined within our
148-
[governance process](process.md).
149-
150-
Project leads are expected to:
151-
152-
* set the meetings for the project
153-
* drive the agenda of the project meetings
154-
* lead meetings and coordinate for a prepared back up prior to meetings if they
155-
cannot make a meeting
156-
* provide technical direction unique to the project
157-
* establish the project schedule
158-
* modify the schedule
159-
* garner participation
160-
* keep the project moving forward
161-
* establish documents and correct permissions for contributions to occur
162-
* contribute content
163-
* provide the Security TAG leadership representative assigned or their
164-
designated back up with updates, progress, and blocker on the project
165-
166-
### On-going projects
167-
168-
On the occasion where a project becomes long term, Project Leads are also given
169-
the OWNER role of the directory or sub-directory along with 1 other nominated
170-
individual to ensure continuity in review and ongoing support of the project.
152+
Project Leads lead specific projects where a deliverable has been defined
153+
within the issue.
154+
155+
Project Leads are nominated and approved by the following process:
156+
157+
1. Project Lead actively participates in the group, initiates the proposal or
158+
volunteers to take on a project that has been prioritized by the group.
159+
2. A Chair or TL nominates a candidate, or requests the community to
160+
nominate in a slack thread.
161+
3. The nomination is communicated via a pull request annotating the list
162+
of members in the [TAG README](/README.md) with a link to the issue tracking
163+
the project or on the issue tracking the project if a README is not yet made.
164+
The nomination is typically open for a week (but may be shorter with LGTM
165+
of at least two Chairs).
166+
4. The issue is updated with the assignment of the project lead as "assignee"
167+
alongside the TAG Leadership member.
168+
5. Project Leads will be given the OWNER role of the directory or sub-directory
169+
for their team's activities in order to empower merge/approve.
170+
171+
### Ongoing projects
172+
173+
On the occasion where a project becomes long term, Project Leads are also
174+
given the OWNER role of the directory or sub-directory along with 1 other
175+
nominated individual to ensure continuity in review and ongoing support of
176+
the project.
177+
178+
The nomination is typically open for a week (but may be shorter with LGTM
179+
of at least two Chairs).
180+
1. The issue is updated with the assignment of the project lead as "assignee"
181+
alongside the TAG Leadership member.
182+
1. Project Leads will be given the OWNER role of the directory or sub-directory
183+
for their team's activities in order to empower merge/approve.
184+
185+
This role may be subject to [lead rotations](#lead-rotations).
171186

172187
Depending on the expected length of the project, Project Leads may be assigned
173-
as OWNERS of the project directory or sub-directory in this repository to help
174-
facilitate and moderate new content to the project. The sponsor of the project
175-
or their delegate initiates the PR to create the new directory and update the
176-
OWNERS file.
188+
as OWNERS of the project directory in this repository to help facilitate and
189+
moderate new content to the project.
177190

178191
### Duties of a project lead
179192

@@ -232,13 +245,14 @@ Examples are:
232245

233246
## Role of Team Leads
234247

248+
235249
Team Leads lead larger streams of work that require sustained effort and
236250
coordination and remain ongoing.
237251

238-
Teams must have a Chair sponsor to maintain visibility in the team's work and to
239-
ensure it is progressing. The Chair sponsor also provides review and approval
240-
as part of the process whether be on engagement or deliverable publishing (such
241-
as with papers).
252+
Teams must have a Chair sponsor to maintain visibility in the team's work
253+
and to ensure it is progressing. The Chair sponsor also provides review
254+
and approval as part of the process whether be on engagement or deliverable
255+
publishing (such as with papers).
242256

243257
On-going projects may not imply a team, and in such case the leadership role
244258
described below to sustain and coordinate. The on-going project leadership
@@ -293,61 +307,112 @@ role for some time informally, then proposed as an on-going role by Pull Request
293307
which must be approved by a majority of Chairs. Process clarifications are
294308
welcome and PRs can be approved by any single Chair.
295309

296-
This role may be subject to [lead rotations](#lead-rotations).
297-
298-
### Security review facilitator
299310

300-
[Security Reviews](/assessments) are part of the ongoing work of the group and
301-
led by a Security Assessment Facilitator, who will:
302-
303-
* coordinate security review leads for upcoming security assessments.
304-
* identify and recommend security reviewers.
305-
* contribute to process improvements.
306-
* review and merge PRs in the /assessments directory (ensuring co-chair review
307-
of significant process changes).
308-
* triage issues related to security assessments.
311+
### Security assessment facilitator
312+
313+
[Security Reviews](/assessments) are part of the ongoing work of the group
314+
and led by a security assessment facilitator (referred to in the rest of this
315+
sub-section as a facilitator). The facilitator is responsible for:
316+
317+
* Ensuring that security reviews follow the assessment process.
318+
* Helping to bootstrap security assessments and reviews.
319+
* Determining assessment schedule of reviews, considering TOC requirements.
320+
321+
The facilitator is responsible for coordinating with the TAG-Security co-chairs
322+
and deciding on the order in which security assessments (as submitted in the
323+
[GitHub issues tracker for
324+
TAG-Security](https://github.com/cncf/tag-security/issues?q=is%3Aopen+is%3Aissue+label%3Aassessment)
325+
will be addressed. The facilitator is then responsible for reaching out to the
326+
project owners (via the GitHub issue said owners previously created in order to
327+
request an assessment), and coordinating the various requirements as outlined
328+
in the ["Joint Security Review" ticket
329+
template](https://github.com/cncf/tag-security/issues/new/choose). Once the
330+
maintainers/owners of the project have been identified, the facilitator is
331+
responsible for reaching out to the TAG-Security community at large (i.e.
332+
typically via attending the weekly general meetings or announcing to the
333+
community [via the `#tag-security`
334+
channel](https://cloud-native.slack.com/archives/CDJ7MLT8S)), and issue a
335+
call/request for reviewers (i.e. a single security assessment lead, and at
336+
least two additional security reviewers), and ensuring all reviewers [read the
337+
conflict of interest disclosure](../assessments/guide/security-reviewer.md) and
338+
sign-off on it in the GitHub ticket itself.
339+
340+
From this point forward, the security assessment lead is the primary
341+
individual responsible for driving progress in the assessment process with support from
342+
the security reviewers, as well as the project owners. The security assessment
343+
facilitator will act as a point of contact for escalations and will be
344+
responsible for conducting regular check-ins with the team to ensure that the
345+
assessment moves forward.
346+
347+
Near the conclusion of the assessment (i.e. drafts of the self-assessment
348+
document and the joint review document are published via a pull request against
349+
the TAG-Security GitHub repository), the facilitator will take part in the
350+
review/feedback process alongside the security assessment lead and security
351+
reviewers.
352+
353+
At the conclusion of the assessment (i.e. satisfactory completion of the
354+
final/canonical revisions of the self-assessment document and the joint review
355+
the document, chair approval, etc.), the facilitator is responsible for merging the
356+
pull request(s) associated with the assessment into the `main` branch of the
357+
TAG-Security GitHub repository.
358+
359+
In addition to the aforementioned responsibilities, the facilitator is
360+
responsible for triaging issues that may impede the progress of the review, and
361+
coordinating with the security assessment lead and the TAG-Security co-chairs as
362+
needed (depending on the nature of the issue). The most important aspect to this
363+
responsibility is to provide visibility into the underlying issue so that it can
364+
be identified and remedied as early as possible.
365+
366+
Lastly, the facilitator is expected, based on their experiences while working
367+
with security assessments, to identify any recurring issues or processes (i.e.
368+
"pain points") that impede reviews, and provide recommendations to the
369+
TAG-Security co-chairs on how to remedy or prevent said issues (i.e. does a
370+
process need to change, or is there a better tool or approach to implementing a
371+
specific part of an assessment document, etc.).
309372

310373
### Meeting facilitator
311374

312375
The group meetings are an important part of community building and the
313376
facilitator ensures a welcoming and inclusive atmosphere. In keeping with these
314377
goals, the meeting facilitator has the following responsibilities:
315378

316-
* prepares the meeting notes with template and agenda
317-
* coordinates with presenter, if applicable
318-
* ensures there are scribes
319-
* runs meeting check-in, including partner groups
320-
* leads the meeting through the agenda
379+
* Prepares the meeting notes with template and agenda.
380+
* Coordinates with presenter, if applicable.
381+
* Ensures there are scribes.
382+
* Runs meeting check-in, including partner groups.
383+
* Leads the meeting through the agenda.
321384

322385
Prerequisites:
323386

324-
* active member
325-
* history of regular attendance
387+
* Active member.
388+
* History of regular attendance.
326389

327390
One or more of the following:
328391

329-
* served in another facilitator role
330-
* leader on a project team
331-
* tech lead
332-
* co-chair
392+
* Served in another facilitator role.
393+
* Leader on a project team.
394+
* Tech Lead.
395+
* Co-chair.
333396

334397
Any member who meets the above qualifications is encouraged to add themselves to
335398
the [list of people in this role](/.github/settings.yml).
336399

337-
### Meeting Scribe(s)
400+
### Meeting scribe(s)
338401

339402
Each meeting must have at a minimal one scribe and preferable with two.
340403

341404
Scribe is expected to perform the following:
342405

343406
* Plan to coordinate/review meeting Agenda with facilitator via Slack before
344-
start of meeting
345-
* Summarize discussions and capture into meeting notes (not transcribe verbatim)
407+
start of meeting.
408+
* Summarize discussions and capture into meeting notes (not transcribe
409+
verbatim).
346410
* Clarify and annotate actions as discussion progresses with assignee and due
347-
dates
348-
* Partner with Facilitator to capture major occurring items in the meeting
349-
* Add links to issues being discussed if not already in Agenda
350-
* Open new issues to track action items from meeting
411+
dates.
412+
* Partner with Facilitator to capture major occurring items in the meeting.
413+
* Add links to issues being discussed if not already in Agenda.
414+
* Open new issues to track action items from meeting.
415+
351416

352417
### Triage team
353418

@@ -365,10 +430,10 @@ volunteers to officially join the team.
365430

366431
Each member of the Triage Team will:
367432

368-
* assign labels to issues.
369-
* comment where issues need more detail.
370-
* recommend proposals or suggestions for discussion at working session meetings.
371-
* participate on #tag-security-triage slack channel.
433+
* Assign labels to issues.
434+
* Comment where issues need more detail.
435+
* Recommend proposals or suggestions for discussion at working session meetings.
436+
* Participate on #tag-security-triage slack channel.
372437

373438
### Project teams
374439

@@ -412,4 +477,4 @@ The rotation process should start at least 2 weeks before a rotation is due.
412477
be raised and discussed between STAG co-chairs.
413478
1. Validation that proper transition has happened will be done by STAG representative.
414479
1. If there are multiple leads on a project, STAG leadership will work with
415-
current leads to decide how many leads should be rotated.
480+
current leads to decide how many leads should be rotated.

0 commit comments

Comments
 (0)