~alpine/devel

Re: [RFC] New Governance Model v1 PROPOSED

Spoke with Chloe about this privately. I think the original charter of
the base team dillutes the authority necessary for it to be effective in
times of crisis. By outlining a bunch of limitations on the base team,
it gives tools to bad actors to undermine their authority with, and
works against the trust we're supposed to be putting in that team.

This reframes the base team as self-governing, putting how it governs
itself as out of scope for the project-wide governance document, and
updates the project governance docs accordingly to establish the base
team more firmly as the final authority on the project.

However, the information lost is still important. We should find a place
to put a document which establishes the principles to which the base
team holds itself. These include at least:

- Live up to the faith the project has put in you
- Trust the teams and generally avoid intervention
- Have faith in the election process and trust the next base team to
  execute the role responsibly

We should use these principles when establishing the initial base team.
As new members cycle in, the veterans should use their first year to
educate them on the principles by which they can be responsible stewards
of the project.

Aside: the first patch is pretty unopinionated. I shoved all of the
opinions into the second patch.

Drew DeVault (2):
  Move team structure before team administration
  Rework the base team description

 modules/Teams/pages/index.adoc | 62 ++++++++++++++++------------------
 1 file changed, 29 insertions(+), 33 deletions(-)

-- 
2.21.0



---
Unsubscribe:  alpine-devel+unsubscribe@lists.alpinelinux.org
Help:         alpine-devel+help@lists.alpinelinux.org
---
Any scheme that would result in Natanael being removed from the base team after three years would not get my vote. As far as I am concerned, ncopa should be Alpine Linux’s Benevolent Dictator For Life. Completely serious.
Ted
Next
There is a big difference between sharing the workload and giving up authority. My main objection is to the stipulation that a base team member cannot be reelected immediately. Not only is ncopa sharing authority with two others for the first three years, he would be forced to give up all authority in the fourth year. Or am I reading it wrong?
Ted
Next
> On 2019-04-09  1:55 PM, Ted Trask wrote:
> > There is a big difference between sharing the workload and giving up
> > authority. My main objection is to the stipulation that a base team
> > member cannot be reelected immediately. Not only is ncopa sharing
> > authority with two others for the first three years, he would be
> > forced to give up all authority in the fourth year. Or am I reading it
> > wrong?  
> 
> You're interpreting it correctly, though I assume ncopa will continue to
> serve his roles in teams other than base during that time. I think that
> you should trust ncopa to back a governance model he believes will work,
> even if it means he has to take a break every few years. He is far from
> uninvolved in these discussions, I suggest you trust his judgement in
> this matter. 
I initially did not have strong opinion on the rotation model but the
more I think about it the less I like it.
Next
I've also been unsure about forced rotation. Why don't we compromise and
eliminate the restriction about serving consecutive terms?

---
Unsubscribe:  alpine-devel+unsubscribe@lists.alpinelinux.org
Help:         alpine-devel+help@lists.alpinelinux.org
---
Export patchset (mbox)
How do I use this?

Copy & paste the following snippet into your terminal to import this patchset into git:

curl -s https://lists.alpinelinux.org/~alpine/devel/patches/768/mbox | git am -3
Learn more about email & git

[alpine-devel] [PATCH 1/2] Move team structure before team administration Export this patch

You have to establish what the teams are before you can establish how
they are maintained
---
 modules/Teams/pages/index.adoc | 66 +++++++++++++++++-----------------
 1 file changed, 33 insertions(+), 33 deletions(-)

diff --git a/modules/Teams/pages/index.adoc b/modules/Teams/pages/index.adoc
index 667e915..9560dc3 100644
--- a/modules/Teams/pages/index.adoc
+++ b/modules/Teams/pages/index.adoc
@@ -24,6 +24,39 @@ Team Admins are marked in *bold* in official team listings.
There is no distinction between technical and non-technical team members. Both are valued, and any useful distinctions are left to the discretion of individual teams.
====

== Team Structure

=== Internal Organization
Teams organize themselves internally however they want.
However, all teams must have at least 1 admin, and at most 3.
This document does contain multiple recommendations, which, if followed, will make external relations easier.
Further, team administrators must follow non-team-local expectations.

=== Creating a New Team
An existing team member within the project may propose creating a new team.
In that scenario, the process will be the same as in <<_becoming_a_team_administrator>>.
If the vote passes, the new team is formed, with the sponsor member as the only administrator.

=== Dissolution of Teams
A team is dissolved if it has no more members.
If a team has no more administrators, one must be nominated, as in <<_becoming_a_team_administrator>>.
If the vote does not pass, the team is dissolved as well.

== The Base Team
The Base team is purely an administrative one.
It is also the only team that shall not have admins, and has a static number of members.
The Base team must always have exactly 3 members, to guarantee quorum.
The Base team technically owns Alpine.
Alpine's policies apply to them, but they have the power to bypass them in case of extreme need.

It is expected that the Base team does not do anything unless prompted.
Violation of this without there being a strong need is effectively a violation of trust of the entire rest of the project.
Similarly, the Base team is expected to trust team admins and members to do the correct thing on their own.

Base team members are elected through a project-wide {votelink}[Vote].
A term is 3 years long, and the terms are staggered (each year, a new Base team member must be elected).
Term cycling is allowed - you cannot replace yourself, but you can replace the next person to rotate out.

== Membership

=== Being a Member
@@ -65,36 +98,3 @@ Removing members (and especially administrators) is an extreme measure.
In most cases, it is possible to solve issues through other means.
It is highly recommended that the removal of anyone from the project be strongly considered before it is suggested.
====

== Team Structure

=== Internal Organization
Teams organize themselves internally however they want.
However, all teams must have at least 1 admin, and at most 3.
This document does contain multiple recommendations, which, if followed, will make external relations easier.
Further, team administrators must follow non-team-local expectations.

=== Creating a New Team
An existing team member within the project may propose creating a new team.
In that scenario, the process will be the same as in <<_becoming_a_team_administrator>>.
If the vote passes, the new team is formed, with the sponsor member as the only administrator.

=== Dissolution of Teams
A team is dissolved if it has no more members.
If a team has no more administrators, one must be nominated, as in <<_becoming_a_team_administrator>>.
If the vote does not pass, the team is dissolved as well.

== The Base Team
The Base team is purely an administrative one.
It is also the only team that shall not have admins, and has a static number of members.
The Base team must always have exactly 3 members, to guarantee quorum.
The Base team technically owns Alpine.
Alpine's policies apply to them, but they have the power to bypass them in case of extreme need.

It is expected that the Base team does not do anything unless prompted.
Violation of this without there being a strong need is effectively a violation of trust of the entire rest of the project.
Similarly, the Base team is expected to trust team admins and members to do the correct thing on their own.

Base team members are elected through a project-wide {votelink}[Vote].
A term is 3 years long, and the terms are staggered (each year, a new Base team member must be elected).
Term cycling is allowed - you cannot replace yourself, but you can replace the next person to rotate out.
-- 
2.21.0



---
Unsubscribe:  alpine-devel+unsubscribe@lists.alpinelinux.org
Help:         alpine-devel+help@lists.alpinelinux.org
---

[alpine-devel] [PATCH 2/2] Rework the base team description Export this patch

It's important to firmly establish the authority of the base team. The
guiding principles to which the base team holds itself are out-of-scope
for this document and better served elsewhere.
---
 modules/Teams/pages/index.adoc | 28 ++++++++++++----------------
 1 file changed, 12 insertions(+), 16 deletions(-)

diff --git a/modules/Teams/pages/index.adoc b/modules/Teams/pages/index.adoc
index 9560dc3..f3cfe1d 100644
--- a/modules/Teams/pages/index.adoc
+++ b/modules/Teams/pages/index.adoc
@@ -26,13 +26,24 @@ There is no distinction between technical and non-technical team members. Both a

== Team Structure

== The Base team

The Base team has ownership over Alpine Linux and is the last authority in any decision-making.
For day-to-day operations, additional teams are established at the pleasure of the base team and given the authority necessary to conduct themselves.

The Base team consists of 3 elected members, guaranteeing a quorum.
Members of this team serve 3 year terms, staggered such that one member steps down per year.
Each year, an election is held through a project-wide {votelink}[Vote].
Members of the Base team cannot serve consecutive terms, but may be re-elected after a one year break.

=== Internal Organization
Teams organize themselves internally however they want.
However, all teams must have at least 1 admin, and at most 3.
This document does contain multiple recommendations, which, if followed, will make external relations easier.
Further, team administrators must follow non-team-local expectations.
Further, team administrators must follow the policies of other teams when working in their domain.

=== Creating a New Team
The base team needn't be involved in establishing every team - the project as a whole is permitted to self-govern in this respect.
An existing team member within the project may propose creating a new team.
In that scenario, the process will be the same as in <<_becoming_a_team_administrator>>.
If the vote passes, the new team is formed, with the sponsor member as the only administrator.
@@ -42,21 +53,6 @@ A team is dissolved if it has no more members.
If a team has no more administrators, one must be nominated, as in <<_becoming_a_team_administrator>>.
If the vote does not pass, the team is dissolved as well.

== The Base Team
The Base team is purely an administrative one.
It is also the only team that shall not have admins, and has a static number of members.
The Base team must always have exactly 3 members, to guarantee quorum.
The Base team technically owns Alpine.
Alpine's policies apply to them, but they have the power to bypass them in case of extreme need.

It is expected that the Base team does not do anything unless prompted.
Violation of this without there being a strong need is effectively a violation of trust of the entire rest of the project.
Similarly, the Base team is expected to trust team admins and members to do the correct thing on their own.

Base team members are elected through a project-wide {votelink}[Vote].
A term is 3 years long, and the terms are staggered (each year, a new Base team member must be elected).
Term cycling is allowed - you cannot replace yourself, but you can replace the next person to rotate out.

== Membership

=== Being a Member
-- 
2.21.0



---
Unsubscribe:  alpine-devel+unsubscribe@lists.alpinelinux.org
Help:         alpine-devel+help@lists.alpinelinux.org
---

Any scheme that would result in Natanael being removed from the base team after three years would not get my vote. As far as I am concerned, ncopa should be Alpine Linux’s Benevolent Dictator For Life. Completely serious.

Ted