-
-
Notifications
You must be signed in to change notification settings - Fork 17
chore(team): write governance #159
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
Open
AugustinMauroy
wants to merge
13
commits into
main
Choose a base branch
from
team-nomination-policy
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 2 commits
Commits
Show all changes
13 commits
Select commit
Hold shift + click to select a range
5613029
chore(team): write "gouverance"
AugustinMauroy ff3bcb5
Fix: typo
AugustinMauroy 2b5b796
Apply suggestions from code review
AugustinMauroy 935e45d
Update TEAM.md
AugustinMauroy 5c01fb1
rename `team.md` to `GOVERNANCE.md`
AugustinMauroy 1e500ab
Merge branch 'main' into team-nomination-policy
AugustinMauroy 1a7c595
update
AugustinMauroy 91f2283
Merge branch 'team-nomination-policy' of https://github.com/nodejs/us…
AugustinMauroy c91f42a
Update GOVERNANCE.md
AugustinMauroy 10f354c
include openjsf + TSC
AugustinMauroy 0a9570a
Merge branch 'main' into team-nomination-policy
AugustinMauroy d777d24
include collaborator
AugustinMauroy b5e5152
Update GOVERNANCE.md
AugustinMauroy File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
# Team membership | ||
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Current members are: | ||
|
||
- `@alexbit-codemod` | ||
JakobJingleheimer marked this conversation as resolved.
Show resolved
Hide resolved
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
- `@AugustinMauroy` | ||
- `@avivkeller` | ||
- `@bmuenzenmeyer` | ||
- `@JakobJingleheimer` (lead) | ||
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
- `@ljharb` | ||
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
## Rights | ||
|
||
Any team member may block a PR or decision. A block may be overturned by team vote; votes require a quorum of ⅔ of active members and passes by >½ simple majority. In accordance with Node.js policy, a team's vote may be overturned by the [TSC](https://github.com/nodejs/TSC). | ||
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Any member can create a tag on main which triggers a CI run, this is used to create a releases. So be careful with this power. Tags should have this structure `vX.Y.Z@workspace`, where `X.Y.Z` is the version number and `workspace` is the name of the npm workspace (e.g. `v1.2.3@codemod`). | ||
JakobJingleheimer marked this conversation as resolved.
Show resolved
Hide resolved
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
### Active vs inactive membership | ||
|
||
An active member is one who has substantively participated once in the past 6 weeks. | ||
|
||
A member who has been inactive for 4 or more months may be removed. They are welcome to return by simple request. | ||
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
#### Team lead | ||
|
||
The team lead is not more equal than other active members; it is an administrative function. For administrative purposes, the lead owns the repo, the github team, and handles membership changes and repository administration (particularly potentially destructive actions). | ||
|
||
The team lead is responsible for ensuring team policies are followed, and takes some discretion when taking administrative action (such as removing an inactive member per team policy). | ||
|
||
The team lead can also bypass Github Branch rulesets to merge PRs that are otherwise blocked by the rules. Only for hotfixes. | ||
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
## Team nomination | ||
|
||
This policy extends the parent Node.js policy. | ||
|
||
Current Node.js collaborators are free to join at any time and do not require a nomination. | ||
|
||
Current Node.js members who are not collaborators are free to request to join without a nomination or meeting contribution criteria. The request must have no objections after 3 days. All active members must be notified of the request. | ||
|
||
Non-members of the Node.js org should meet the following criteria: | ||
|
||
- ~2 months of consistent (substantive, non-trivial) contribution/participation. | ||
- _Consistent_ means roughly once a week (we all have lives) | ||
- _Substantive_ means adds value and does not detract from the issue at hand. | ||
|
||
Exceptions may be made to members of the larger ecosystem who are well known to the Node.js organisation. | ||
AugustinMauroy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
An active member may nominate a contributor who meets this criteria. The nomination must pass before requesting the contributor be added to the organisation. All active members must be notified of the nomination. | ||
|
||
A nomination should be raised privately with active members before publicly, out of respect for the nominee. | ||
|
||
## Team Expulsion | ||
|
||
A team member who violates Node.js's code of conduct or who is acting against the interests or mandate of the team, or acts in bad faith may be expelled by vote of the team; such a vote requires a quorum of ⅔ of active members passing by ⅗ super majority. If a vote passes a simple majority but fails a super majority, the team member will be asked to voluntarily exit. Expulsion votes are confidential and are not conveyed to the expulee (they may be verified in confidence by the TSC). | ||
|
||
When expulsion proceedings are commenced, team membership is frozen until the vote has settled. | ||
avivkeller marked this conversation as resolved.
Show resolved
Hide resolved
|
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.