-
Notifications
You must be signed in to change notification settings - Fork 97
Conversation
this would close #2 |
GOVERNANCE.md
Outdated
|
||
The meeting chair is responsible for ensuring that minutes are taken and that a | ||
pull request with the minutes is submitted after the meeting. | ||
There should always be multiple EFAs, a recommended number is 4. |
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.
How about 3 or 5 to always have an odd number?
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.
This raises interesting issue - in case of different opinions of EFA there is a vote? If not, how EFA for specific issue is choosen?
The term "member" feels a little more exclusionary than collaborator to me, but that could just be my own perspective. Can't really think of a better word than collaborator. 🤔 Some statement on what "consensus" is would be helpful here. ie: 50%? 70%? 100%? When would EFA step in? |
@Qard idk in my view collaborator was always too connected to actual technical stuff, but i'm open to terminology changes |
That's fair. Not sure what would be a better word. |
Maybe just defining the openness of the definition of "members" would work? |
sure, i could add a |
regarding the definition of consensus, i believe the TSC has always required a simply majority vote? |
GOVERNANCE.md
Outdated
|
||
* Technical direction | ||
* Project governance and process (including this policy) | ||
* Project governance |
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.
This words "project governance" as part of "technical issues" - intentional?
GOVERNANCE.md
Outdated
the TSC by assigning the `tsc-review` label to a pull request or issue. The | ||
TSC should serve as the final arbiter where required. | ||
the TC by assigning the `tc-review` label to a pull request or issue. The | ||
TC should serve as the final arbiter where required. | ||
|
||
* [Current list of Collaborators](./README.md#current-project-team-members) |
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 you are using "Member" now, link still has "Collaborators"
I think we should point out that changes and issues submitted by sponsors will not have increased priority over that of members and the community as a whole. This should be part of the consensus seeking process? |
GOVERNANCE.md
Outdated
there is an extended impasse, a motion for a vote may be made. | ||
There should always be multiple EFAs, a recommended number is 3-5. | ||
|
||
EFAs have the intellectual authority to overrule the TC and the CC on issues |
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 per discord discussion, I think "decisive vote" is a better term here; It implies authority only in case of lack of consensus, which seems to be a core of EFA.
GOVERNANCE.md
Outdated
|
||
The meeting chair is responsible for ensuring that minutes are taken and that a | ||
pull request with the minutes is submitted after the meeting. | ||
## Elected Final Arbiters |
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 know part of this document is to figure out how members get onto each commit so I wanted to start a review thread within this pull to talk about that.
My thoughts (opinions)(perception):
- Members elect EFA's
- Possibly EFA's elect TC and CC members Alternatively TC & CC are elected by community members.
- Upon term expiring for an EFA then a review should kick off to remove or add members to the TC or CC (Similar to a president coming in and out and re-evaluating the cabinet staff?)
- TC and CC should have terms as well, but may be re-elected. This will force a periodic review of the member if we aren't reviewing them via the EFA elections.
Other thoughts? These are just ideas and should be taken as that at face value.
Spit-balling: If the only duty of the EFA is to break a deadlock, what if EFA's were elected ad hoc, as needed? Mutually agreed upon third-parties? |
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 like the simple terminology of TC and CC, though I have to mull on the properties and responsibilities of EFAs a bit...
GOVERNANCE.md
Outdated
|
||
* helping users and novice contributors | ||
* contributing code and documentation changes that improve the project | ||
* reviewing and commenting on issues and pull requests | ||
* participation in working groups | ||
* participation in adjacent projects |
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.
Can I get a clarification on what "adjacent projects" may be? Projects under the ayojs GitHub org? Projects used in Ayo.js? Node.js?
GOVERNANCE.md
Outdated
The TSC periodically reviews the Collaborator list to identify inactive | ||
Collaborators. Past Collaborators are typically given _Emeritus_ status. Emeriti | ||
may request that the TSC restore them to active status. | ||
The TC periodically reviews the Member list to identify inactive |
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 remember this rule actually being invoked in Node.js. If this is the case, we should reconsider continuing to have it.
I'm not with Node.js project long enough though, so if this is not the case please correct me.
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.
makes sense, i don't remember anything related to that rule being enforced either
GOVERNANCE.md
Outdated
|
||
## Technical Steering Committee | ||
## Technical 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.
Is how TC members are added documented anywhere (or will they be)? Will the TC have its own repo like Node.js TSC/CTC does?
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 will be, yeah!
GOVERNANCE.md
Outdated
Elected Final Arbiters (EFA) are Members of the Ayo.js projects that serve to | ||
resolve issues where there is no consensus. They are elected on a 1-year term, | ||
during which they can choose to resign at any time. In the event that this | ||
happens, reelections immediately taken into consideration. |
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.
Couldn't parse the last sentence, missing a verb in the main clause it seems.
GOVERNANCE.md
Outdated
|
||
## Consensus Seeking Process | ||
|
||
The TSC follows a [Consensus Seeking][] decision making model as described by | ||
the [TSC Charter][]. | ||
The TC and the CC follow a [Consensus Seeking][] decision making model. |
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.
EFAs too?
GOVERNANCE.md
Outdated
The Technical Steering Committee (TSC) has final authority over this project | ||
including: | ||
The Ayo.js project has multiple top-level committees that are responsible for | ||
managing a part of the project. These committees and their responsibilities are: |
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 not at all satisfied with the phrase managing a part of the project
, but i can't think of anything else. thoughts?
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.
s/a part/particular facets/?
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.
What about "directing", "leading", or "stewarding" different parts (or facets, like @TimothyGu suggests) of the project? Directing and leading might be too top-down, and stewarding might go too far in the other direction, so maybe "managing" is best...
That's a key differentiator between where it seems Ayo is going versus the Node Foundation's governance. Possibly the biggest difference, at least from the outside perspective.
That's a great idea for an outside perspective, as long as the bulk of your TC/CC members 1) are confident you can find third parties who can show up and understand the issues to make decisions, and 2) are confident the decisions will be in the spirit of the project. It's hard for an outside party to really understand the hard issues when there are disagreements - not impossible, but difficult. Super interesting idea though. |
I imagine the "third parties" would still be parties involved in the project, and are from, perhaps, different committees/boards/areas of influence within the community. They would be the same pool of people that would be elected by the other means currently being suggested. Maybe even community members, library authors, contributors, etc. For particularly hairy situations, this could go to multiple levels: elect people who elect the EFA's. But, I suppose the thrust of my suggestion is that there is no need for a standing set of EFA's, and they have the potential to have outsized influences if EFA is a position someone might serve on across multiple, consecutive issues. Certainly is worth looking at the history of mutual, non-state arbitration to find prior art on this to inform our decision. Think juries, non-state courts, courts of cultural diasporic peoples, etc. |
Trying to avoid a classic case of "who watches the watchers?" and keep from saddling the same group of people with the burden of arbitrating for a whole term. |
Would this document also cover the concept that was discussed of separate WG's for each major feature? I guess that might come under Committees but I'm not sure if consensus was reached around that idea in the first place. |
@abritinthebay i was gonna add that but i'm not sure if we've reached consensus on what form we want working groups to exist (if at all) yet? |
@pup makes sense! Was mostly curious 😄. It's one of the things I'm most excited about for Ayo tbh. Sounds like it would belong here but in a future iteration. |
GOVERNANCE.md
Outdated
* The moderation team, which enforces the Code of Conduct | ||
* Multiple sub-teams, which handle more specific matters like maintaining Ayo.js | ||
itself or maintaining Ayo.js documentation | ||
* occasionally, EFA's (Elected Final Arbiters), which serve to break stalemates |
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.
can we capitalise the "o" here in "occasionally"
GOVERNANCE.md
Outdated
Each team decides who gets permissions for their respective | ||
repository/repositories. | ||
|
||
More information about these teams can be found on the [website](). |
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'd just take this out for now.
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.
okay!
GOVERNANCE.md
Outdated
|
||
EFAs have the authority to establish a decisive vote on issues where no | ||
consensus can be reached by the team(s). They do not place | ||
above the teams in the hierarchy, for they are Members. A EFA should not be |
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.
"An" EFA?
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.
Also I'm interested how an EFA cannot be a member of the Core team. With our current size, this seems hard to do.
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.
Yeah, I agree with @varjmes here, I'd say the only restriction for the EFA(s) is that they haven't already been apart of the issue in question, which will be hard enough to find early on without imposing any further restriction.
i'm giving this PR 2 more hours (roughly 6pm CEST) until i land it! cc @ayojs/core |
7cb2c7b
to
ff7c5e1
Compare
PR-URL: #39 Reviewed-By: James <hello@jmes.tech> Reviewed-By: James Butler <james.butler@sandfox.co.uk>
ff7c5e1
to
ebca59b
Compare
landed in ebca59b!!!! 🎉 |
this is an Extremely Early write-up for what our future governance structure could look like. there's currently multiple things missing, and it's probably full of inconsistencies and missing links, but it's a start.
TODO: