diff options
author | Joyee Cheung <joyeec9h3@gmail.com> | 2018-01-20 21:09:17 +0800 |
---|---|---|
committer | Joyee Cheung <joyeec9h3@gmail.com> | 2018-01-24 18:42:09 +0800 |
commit | 62880503dd84c8850afa065bb61369433351bf24 (patch) | |
tree | f8adc8fd78180511463476e895f8192b3021ed5b | |
parent | 0e7050ec86c1fb3ab5a3fb6c4500cfa42442ae0d (diff) | |
download | android-node-v8-62880503dd84c8850afa065bb61369433351bf24.tar.gz android-node-v8-62880503dd84c8850afa065bb61369433351bf24.tar.bz2 android-node-v8-62880503dd84c8850afa065bb61369433351bf24.zip |
doc: document the collaborator nomination process
PR-URL: https://github.com/nodejs/node/pull/18268
Fixes: https://github.com/nodejs/node/issues/18090
Refs: https://github.com/nodejs/TSC/pull/472
Reviewed-By: Jon Moss <me@jonathanmoss.me>
Reviewed-By: Shingo Inoue <leko.noor@gmail.com>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Weijia Wang <starkwang@126.com>
Reviewed-By: Minwoo Jung <minwoo@nodesource.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
-rw-r--r-- | GOVERNANCE.md | 116 | ||||
-rw-r--r-- | doc/onboarding.md | 2 |
2 files changed, 93 insertions, 25 deletions
diff --git a/GOVERNANCE.md b/GOVERNANCE.md index 7b8903fa5c..4f1ff30d83 100644 --- a/GOVERNANCE.md +++ b/GOVERNANCE.md @@ -4,27 +4,30 @@ The Node.js project is governed by its Collaborators, including a Technical Steering Committee (TSC) which is responsible for high-level guidance of the project. +<!-- TOC --> + +- [Collaborators](#collaborators) + - [Collaborator Activities](#collaborator-activities) +- [Technical Steering Committee](#technical-steering-committee) + - [TSC Meetings](#tsc-meetings) +- [Collaborator Nominations](#collaborator-nominations) + - [Onboarding](#onboarding) +- [Consensus Seeking Process](#consensus-seeking-process) + +<!-- /TOC --> + ## Collaborators -The [nodejs/node](https://github.com/nodejs/node) GitHub repository is -maintained by Collaborators who are added by the TSC on an ongoing basis. +The [nodejs/node][] GitHub repository is maintained by Node.js Core +Collaborators. Upon becoming Collaborators, they: -Individuals identified by the TSC as making significant and valuable -contributions across any Node.js repository may be made Collaborators and given -commit access to the project. Activities taken into consideration include (but -are not limited to) the quality of: +* Become members of the @nodejs/collaborators team +* Gain individual membership of the Node.js foundation -* code commits and pull requests -* documentation commits and pull requests -* comments on issues and pull requests -* contributions to the Node.js website -* assistance provided to end users and novice contributors -* participation in Working Groups -* other participation in the wider Node.js community +Their privileges include but are not limited to: -If individuals making valuable contributions do not believe they have been -considered for commit access, they may log an issue or contact a TSC member -directly. +* Commit access to the [nodejs/node][] repository +* Access to the Node.js continuous integration (CI) jobs Modifications of the contents of the nodejs/node repository are made on a collaborative basis. Anybody with a GitHub account may propose a @@ -49,6 +52,8 @@ Collaborators may opt to elevate significant or controversial modifications to the TSC by assigning the `tsc-review` label to a pull request or issue. The TSC should serve as the final arbiter where required. +See: + * [Current list of Collaborators](./README.md#current-project-team-members) * [A guide for Collaborators](./COLLABORATOR_GUIDE.md) @@ -56,11 +61,11 @@ TSC should serve as the final arbiter where required. Typical activities of a Collaborator include: -* 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 -* merging pull requests +* 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 +* Merging pull requests The TSC periodically reviews the Collaborator list to identify inactive Collaborators. Past Collaborators are typically given _Emeritus_ status. Emeriti @@ -68,8 +73,8 @@ may request that the TSC restore them to active status. ## Technical Steering Committee -The Technical Steering Committee (TSC) has final authority over this project -including: +A subset of the Collaborators form the Technical Steering Committee (TSC). +The TSC has final authority over this project, including: * Technical direction * Project governance and process (including this policy) @@ -78,7 +83,8 @@ including: * Conduct guidelines * Maintaining the list of additional Collaborators -* [Current list of TSC members](./README.md#current-project-team-members) +The current list of TSC members can be found in +[the project README](./README.md#current-project-team-members). The operations of the TSC are governed by the [TSC Charter][] as approved by the Node.js Foundation Board of Directors. @@ -128,10 +134,70 @@ the issue tracker is: either the proposal is dropped or the objecting members are persuaded. If there is an extended impasse, a motion for a vote may be made. +## Collaborator Nominations + +Any existing Collaborator can nominate an individual making significant +and valuable contributions across the Node.js organization to become a new +Collaborator. + +To nominate a new Collaborator, open an issue in the [nodejs/node][] +repository, with a summary of the nominee's contributions, for example: + +* Commits in the [nodejs/node][] repository. + * Can be shown using the link + `https://github.com/nodejs/node/commits?author=${GITHUB_ID}` + (replace `${GITHUB_ID}` with the nominee's GitHub ID). +* Pull requests and issues opened in the [nodejs/node][] repository. + * Can be shown using the link + `https://github.com/nodejs/node/pulls?q=author%3A${GITHUB_ID}+` +* Comments and reviews on issues and pull requests in the + [nodejs/node][] repository + * Can be shown using the links + `https://github.com/nodejs/node/pulls?q=reviewed-by%3A${GITHUB_ID}+` + and `https://github.com/nodejs/node/pulls?q=commenter%3A${GITHUB_ID}+` +* Assistance provided to end users and novice contributors +* Participation in other projects, teams, and working groups of the + Node.js organization + * Can be shown using the links + `https://github.com/search?q=author%3A${GITHUB_ID}++org%3Anodejs&type=Issues` + and + `https://github.com/search?q=commenter%3A${GITHUB_ID}++org%3Anodejs&type=Issues` +* Other participation in the wider Node.js community + +Mention @nodejs/collaborators in the issue to notify other Collaborators about +the nomination. + +If there are no objections raised by any Collaborators one week after +the issue is opened, the nomination will be considered as accepted. +Should there be any objections against the nomination, the TSC is responsible +for working with the individuals involved and finding a resolution. +The nomination must be approved by the TSC, which is assumed when there are no +objections from any TSC members. + +Prior to the public nomination, the Collaborator initiating it can seek +feedback from other Collaborators in private using +[the GitHub discussion page][collaborators-discussions] of the +Collaborators team, and work with the nominee to improve the nominee's +contribution profile, in order to make the nomination as frictionless +as possible. + +If individuals making valuable contributions do not believe they have been +considered for a nomination, they may log an issue or contact a Collaborator +directly. + +### Onboarding + +When the nomination is accepted, the new Collaborator will be onboarded +by a TSC member. See [the onboarding guide](./doc/onboarding.md) on +details of the onboarding process. In general, the onboarding should be +completed within a month after the nomination is accepted. + ## Consensus Seeking Process The TSC follows a [Consensus Seeking][] decision making model as described by the [TSC Charter][]. -[TSC Charter]: https://github.com/nodejs/TSC/blob/master/TSC-Charter.md +[collaborators-discussions]: https://github.com/orgs/nodejs/teams/collaborators/discussions [Consensus Seeking]: https://en.wikipedia.org/wiki/Consensus-seeking_decision-making +[TSC Charter]: https://github.com/nodejs/TSC/blob/master/TSC-Charter.md +[nodejs/node]: https://github.com/nodejs/node diff --git a/doc/onboarding.md b/doc/onboarding.md index 42144e2382..296f9db7d0 100644 --- a/doc/onboarding.md +++ b/doc/onboarding.md @@ -9,6 +9,8 @@ onboarding session. GitHub account. Unless two-factor authentication is enabled, do not give an account elevated privileges such as the ability to land code in the main repository or to start continuous integration (CI) jobs. +* Announce the accepted nomination in a TSC meeting and in the TSC + mailing list. ## Fifteen minutes before the onboarding session |