-
-
Notifications
You must be signed in to change notification settings - Fork 162
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[RFC 0043] RFC Steering Committee Rotation #43
Conversation
This is similar to how release managers rotate, and that's process has been a wonderful success, so +1 from me. [That isn't to say -1 to other systems, however. I'm just approving of this one.] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
I wonder how many people have to google for the exact definition of "abdication" :) I know this is typical name nitpicking, but I'd much prefer to use resignation to make these text approachable to non-native English speakers.
@domenkozar as a non-native speaker with a large enough passive vocabulary I didn't pay attention to the word choice; now I looked up in a dictionary and maybe people who remember the exact definition would also think the text with «resignation» is easier to read (abdication implies some position held for life). |
I have addressed the comments above. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As an outcome of this RFC, I would like the text to be added to the project's README or in any other document that acts the current RFC Steering Committee "constitution". Otherwise it's going to be difficult for new members to know the rules without reading all of the RFCs.
I guess we should nominate some more people as potential Shepherds, because it would be a bit weird to have an all-Tweag Shepherd team on this specific RFC… |
good call @7c6f434c :) |
Also nominating @lheckemann, @7c6f434c, @ryantm and @domenkozar. Yeah, will add this to the README similar as #38 was to #36! |
Re: nomination — thanks, I accept. But without promises that scheduling a sycnhronous chat will be easy. (But maybe reasonably fast responses to email will be enough anyway, and that I do promise). |
rfcs/0043-rfcsc-rotation.md
Outdated
|
||
Additionally to RFC 36 a new restriction formally comes into effect. In order | ||
to avoid conflict of interest there is an upper cap of 2 members working for a | ||
single employer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
-
Does that mean that if a member changes employment in a cap-violating way, they are expected to resign (unless one of the two members from the new employment place prefers to resign themselves)? Should this be explicitly recorded?
-
I want to have this question on the record: do we want to respect the other dimensions of conflict of interest? I think it would be feasible to ask that if a full SC of five members is being selected, at least one member of the incoming committee should have used Nix outside the single most popular setup (currently NixOS on
x86_64
). It would be a nightmare in a large election procedure, but for unanimous selection of successors it seems feasible.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- I don't think it is necessary, but if someone cares to resign no one will stop them.
- I also think we don't have to specify this, as the RFCSC should always try and set up a balanced shepherding team, familiar with the affected parts and the RFCSC can realistically not cover everything themself.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
-
I am OK with that, but then maybe reword it to say that there is a cap of appointing at most 2 people working for the same employer? Because right now it seems to mean my interpretation.
-
It might be easier to evaluate experience (and relevance of that experience) of people working on special use cases for a SC including someone who doesn't use the «default setup» exclusively. But I do not insist.
|
||
Each year at the first meeting of the RFCSC in December (starting 2019, | ||
approximately a year after establishment in RFC 36) they unanimously decide on | ||
the succeeding committee members. If unanimous agreement cannot be reached, the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does ths old SC hold one more meeting (so that the new SC has a week to agree on their meeting schedule without interruption in RFC processing)? Or does the old SC continue to work until Christmas-New Year week (when everybody expects interruptions anyway)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 for "new year, new committee" :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It takes immediate effect at the beginning of December.
The motivation is to not tie things around the new year when there's already lots of personal errands to be completed :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Immediate takeover has the problem of coordination; from the point of view of end-of-year, second half of December and first half of January are all bad anyway.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(Just in case: the literal current text of RFC explicitly sets January as the takeover time)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 overall! I have a couple of mostly small and variably pedantic suggestions for the PR phrasing.
Also, I accept @globin's shepherd nomination :)
rfcs/0043-rfcsc-rotation.md
Outdated
|
||
With the implementation of [RFC | ||
36](https://github.com/NixOS/rfcs/blob/master/rfcs/0036-rfc-process-team-amendment.md) | ||
the RFC Steering Committee has been established. Among others, future work for |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: among others
is redundant because included
doesn't imply completeness
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's debatable, at least from a common law framing where the set phrase "included but not limited to" sometimes does kind of imply the completeness of includes (and is an instance of the legal principle expressio unius est exclusio alterius). That is, of course, just an equally debatable nitpick in the other direction 😄. I do think we can simply remove the among others
without loss of meaning. We're not negotiating a liability waiver, after all. For me personally however, it adds to the flow just enough to make it worthwhile.
rfcs/0043-rfcsc-rotation.md
Outdated
# Motivation | ||
[motivation]: #motivation | ||
|
||
With the implementation of [RFC |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The RFC Steering committee has been established by RFC 36
? More straightforward phrasing.
rfcs/0043-rfcsc-rotation.md
Outdated
|
||
The RFC Steering Committee shall always have five members. If membership drops | ||
below five members (for example by resignation of a member as detailed below), a | ||
new member shall directly be elected after a nomination period of at least two |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is "directly" needed here? I'm interpreting it as "immediately", but it could lead to confusion ("direct democracy"), and the "after" adequately describes the timeframe IMHO.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe shall be elected without delay
would make this clearer?
rfcs/0043-rfcsc-rotation.md
Outdated
|
||
## Ending membership | ||
A member can end their membership in the Steering | ||
Committee by either of the following four mechanisms, ordered from most |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Feels awkward to specify the relative frequency of membership-ending mechanisms :) maybe leave the explanation of the order out?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess the order is intended to vaguely guide the norms and expectations without creating formal rules.
1. At the end of an election period. | ||
2. Resignation | ||
3. Unanimous vote by all other members after having missed two or more regular | ||
meetings without giving an appropriate excuse. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rules nit: what if two members are absent?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't have to be on the same meeting, vote would be cast per member.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you mean to add that
If the number of members of the RFCSC drops below 4 people
it also shouldn't be able to apply (3) or (4)? (Though any relevant situation would probably be a "political crisis" anyway.)
If it was about members being present, I thought it's clear that "all other" means all other on the committee (not just present ATM).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the natural interpretation here is «all the other current members», I think reaching (3) instead of (2) is unfortunate and reaching (4) is outright bad whatever you do, and I think in both cases it is less bad to thave the possibility of removal before selecting replacement.
|
||
Each year at the first meeting of the RFCSC in December (starting 2019, | ||
approximately a year after establishment in RFC 36) they unanimously decide on | ||
the succeeding committee members. If unanimous agreement cannot be reached, the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 for "new year, new committee" :)
rfcs/0043-rfcsc-rotation.md
Outdated
Each year at the first meeting of the RFCSC in December (starting 2019, | ||
approximately a year after establishment in RFC 36) they unanimously decide on | ||
the succeeding committee members. If unanimous agreement cannot be reached, the | ||
RFCSC votes on each nominee, ranking them and further hold run-off votes if |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The process (and grammar — should that be "holds"?) is a bit unclear here.
rfcs/0043-rfcsc-rotation.md
Outdated
|
||
As this process is to be implemented over a fairly long time frame (a year for | ||
each iteration), this framework might have to be revised at a later date, | ||
incorporating any learnings made over these years. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
<personal-opinion> "learnings" is a nasty businessese word, "experience" would be better.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@LeckerManN btw you can click the "plus minus" button when commenting to suggest a wording change like this :)
rfcs/0043-rfcsc-rotation.md
Outdated
Steering Committee can be established or ended, so as not to make membership a | ||
mandate for life, allowing a healthy rotation of members, and offering several | ||
procedures to always keep the Steering Committee capable of making decisions | ||
such that the RFC process can keep running smoothly at all times. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Run-on sentence! 🚨 The "mandate for life" and "healthy rotation" bits are also just restating that the committee will change and that that is in some vague way good. Here's an attempt at rephrasing with a bit more structure and justification:
This RFC provides mechanisms for beginning and ending Steering Committee membership. The purpose of this is to ensure that the committee:
- continues to consist of well-informed and motivated members;
- continues to represent the evolving community;
- remains active and keeps the RFC process running.
I accept @globin 's nomination. |
So could a quorum consisting entirely of non-members remove members? 🤔 Yeah, I think good faith makes sense here :D |
@lheckemann if there was no agreement in RFCSC on moving the meeting and the regularly scheduled meeting is only attended by non-members, maybe we can count that as «no objections»… I agree with the interpretation that «agreement of all the other members» means «lack of objections, with objections accepted both by email and at the meeting itself», so there is probably no need to change the RFC. I still wanted every point raised to be explicitly acknowledged, thanks to everyone for your cooperation. |
rfcs/0043-rfcsc-rotation.md
Outdated
|
||
## Ending membership | ||
A member can end their membership in the Steering | ||
Committee by either of the following four mechanisms: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe rephrase as «Membership of a member in the Steering Committee can end by …»
(I tried to do a two-line suggestion and failed)
We decided on @lheckemann as leader |
@globin what's your opinion on rephrasing? |
Updated |
@globin Thanks @lheckemann @ryantm @domenkozar I now see no outstanding questions (even minor ones), and the last new comment related to text was more than ten days ago. As far as I see, nobody has objected to the RFC in general. I think it is time to vote on starting the FCP with disposition to accept. For the record: I am in favour. |
I sign off on @7c6f434c 's motion to enter the FCP with disposition to merge. |
@lheckemann @domenkozar Can you indicate your sign off or objection to entering FCP? |
@ryantm I'll have time to reread the RFC tomorrow and sign off. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
1. At the end of an election period. | ||
2. Resignation | ||
3. Unanimous vote by all other members after having missed two or more regular | ||
meetings without giving an appropriate excuse. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't have to be on the same meeting, vote would be cast per member.
|
||
Each year at the first meeting of the RFCSC in December (starting 2019, | ||
approximately a year after establishment in RFC 36) they unanimously decide on | ||
the succeeding committee members. If unanimous agreement cannot be reached, the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It takes immediate effect at the beginning of December.
The motivation is to not tie things around the new year when there's already lots of personal errands to be completed :)
rfcs/0043-rfcsc-rotation.md
Outdated
@@ -36,8 +36,8 @@ of members of the RFCSC drops below 4 people, it cannot proceed with shepherd | |||
team selections until new members have been selected. | |||
|
|||
## Ending membership | |||
A member can end their membership in the Steering | |||
Committee by either of the following four mechanisms: | |||
Membership in the Steering Committee can end by either of the following four |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: s/either/any/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm also in favour of the RFC as it stands (and maybe fixing that one tiny remaining phrasing issue), so I believe we can declare the FCP as open, with disposition to accept!
FCP start: 2019-05-28
FCP end: 2019-06-07
@NixOS/rfc-steering-committee Who is in charge of making sure an FCP is "advertised widely"? |
@ryantm Shepherd team/leader. |
This pull request has been mentioned on Nix community. There might be relevant details there: https://discourse.nixos.org/t/rfc-0043-rfc-steering-committee-rotation-fcp/3065/1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 The nits I see on the current version don't seem important (to my approval).
The FCP has passed without any objections 🎉 If anyone with the appropriate permissions could merge the RFC and fix "either" → "any", I would be very grateful :) |
* RFC-0043: RFC Steering Committee Rotation * RFC-0043: formatting * RFC-0043: abdication -> resignation * RFC-0043: add voting as possible alternatives * RFC-0043: address reviews * RFC-0043: rephrase membership ending sentence * RFC-0043: either -> any
This is a draft RFC to implement rotation for the RFCSC.
cc @grahamc @NixOS/rfc-steering-committee @ciil
Rendered Version