From 3d8582ca1f20938192230003ac15633cb527b1ec Mon Sep 17 00:00:00 2001 From: Sebastian Beltran Date: Mon, 15 Dec 2025 12:58:53 -0500 Subject: [PATCH 1/7] docs: update governance structure to include captains and committers model --- Governance.md | 36 +++++++--- captains_and_committers.md | 141 +++++++++++++++++++++++++++++++++++++ 2 files changed, 169 insertions(+), 8 deletions(-) create mode 100644 captains_and_committers.md diff --git a/Governance.md b/Governance.md index 268cd97e..4dcc0b01 100644 --- a/Governance.md +++ b/Governance.md @@ -127,6 +127,7 @@ is for there to be: - 72 hours since the PR was opened #### pkgjs organization + All members of the pkgjs organization will be required to have 2FA enabled, and the repository will be configured to enforce this requirement. @@ -165,14 +166,33 @@ package to the `@pkgjs` org on npm. ##### Maintainers -Maintainers for the repositories in the Pkgjs repository are managed -through a team created for each repository. They will be named as -[REPO-maintainers](https://github.com/orgs/pkgjs/teams/REPO-maintainers/) -where REPO is the name of the repository. Administrative members are given -the maintainer role these team and can add/remove members as appropriate. -In addition all maintainers for a given repository can add/remove -maintainers are given the maintainer role for the teams for which they are -added and can add/remove members as appropriate. +Maintainers for repositories in the pkgjs organization follow a "captains" +and "committers" model. + +- **Committers:** Each repository will have a team named + [REPO-committers](https://github.com/orgs/pkgjs/teams/REPO-committers/) + containing individuals with push access to the repository. Committers are + empowered to review, approve, and merge pull requests, manage issues, and + carry out day-to-day maintenance activities in accordance with the + repository's policies. + +- **Captains:** One or more captains provide long-term stewardship and act + as the senior maintainers for the repository. Captains are a named team + [REPO-captains](https://github.com/orgs/pkgjs/teams/REPO-captains/) and may + perform the following duties: + - Add and remove committers from the `REPO-committers` team. + - Resolve disputes among committers and act as a tie-breaker when + consensus cannot be reached. + - Make and manage releases for the repository, including creating GitHub + releases and publishing packages when appropriate. + - Nominate additional captains for repositories they steward. + +Administrative members of the package-maintenance working group are given +the captain role on the `REPO-captains` team and may add or remove captains +as appropriate. Captains may add or remove committers for the repositories +they steward. When a repository has a single committer, that committer may +merge their own pull requests in accordance with the repository's landing +policy. ##### Landing PRs diff --git a/captains_and_committers.md b/captains_and_committers.md new file mode 100644 index 00000000..1f2a7949 --- /dev/null +++ b/captains_and_committers.md @@ -0,0 +1,141 @@ +# Captains and Committers (pkgjs repositories) + +- [pkgjs/create-package-json](https://github.com/pkgjs/create-package-json) — Create full featured package.json files + + - Captains: + - + - Committers: + - + +- [pkgjs/statusboard](https://github.com/pkgjs/statusboard) — A status page for community projects + + - Captains: + - + - Committers: + - + +- [pkgjs/gh-pages](https://github.com/pkgjs/gh-pages) — Builds and deploys a Github Pages site + + - Captains: + - + - Committers: + - + +- [pkgjs/support](https://github.com/pkgjs/support) — Package Support Format + + - Captains: + - + - Committers: + - + +- [pkgjs/triagebot](https://github.com/pkgjs/triagebot) — A GitHub Action for traiging issues + + - Captains: + - + - Committers: + - + +- [pkgjs/create-pkg](https://github.com/pkgjs/create-pkg) — Scaffolding for JavaScript + + - Captains: + - + - Committers: + - + +- [pkgjs/nv](https://github.com/pkgjs/nv) — Tool for getting node versions by common aliases + + - Captains: + - + - Committers: + - + +- [pkgjs/detect-node-support](https://github.com/pkgjs/detect-node-support) — List the Node.js versions supported by the package/repository + + - Captains: + - + - Committers: + - + +- [pkgjs/membership-updater](https://github.com/pkgjs/membership-updater) — A GitHub action to update membership status + + - Captains: + - + - Committers: + - + +- [pkgjs/dependents](https://github.com/pkgjs/dependents) — Tool to gather all dependents of a package and filter by npm weekly downloads, github forks, stars and watchers + + - Captains: + - + - Committers: + - + +- [pkgjs/meet](https://github.com/pkgjs/meet) — Create a meeting issue on a schedule + + - Captains: + - + - Committers: + - + +- [pkgjs/.github](https://github.com/pkgjs/.github) — Common GitHub templates and community health files for the @pkgjs organization + + - Captains: + - + - Committers: + - + +- [pkgjs/wiby](https://github.com/pkgjs/wiby) — "Will I break you" - a tool for testing dependents + + - Captains: + - + - Committers: + - + +- [pkgjs/design](https://github.com/pkgjs/design) — Design assets for pkgjs + + - Captains: + - + - Committers: + - + +- [pkgjs/support-separate-repo](https://github.com/pkgjs/support-separate-repo) — Repo required for integration tests from https://github.com/pkgjs/support package + + - Captains: + - + - Committers: + - + +- [pkgjs/parseargs](https://github.com/pkgjs/parseargs) — Polyfill of `util.parseArgs()` + + - Captains: + - + - Committers: + - + +- [pkgjs/action](https://github.com/pkgjs/action) — Github Actions tooling for testing Node.js packages + + - Captains: + - + - Committers: + - + +- [pkgjs/action-import-blocklist](https://github.com/pkgjs/action-import-blocklist) — A GitHub Action to import the blocklist from one organization to another. + + - Captains: + - + - Committers: + - + +- [pkgjs/patch-my-code-of-conduct](https://github.com/pkgjs/patch-my-code-of-conduct) — A tool for creating a code of conduct with a prefix and a patch + + - Captains: + - + - Committers: + - + +- [pkgjs/request-codeowner-review](https://github.com/pkgjs/request-codeowner-review) — + + - Captains: + - + - Committers: + - From feb39b5ed662e5bc4306f5862b5ea7b41ccc8eeb Mon Sep 17 00:00:00 2001 From: Sebastian Beltran Date: Mon, 15 Dec 2025 13:12:50 -0500 Subject: [PATCH 2/7] docs(captains): update captains list --- captains_and_committers.md | 33 ++++++--------------------------- 1 file changed, 6 insertions(+), 27 deletions(-) diff --git a/captains_and_committers.md b/captains_and_committers.md index 1f2a7949..beb467b1 100644 --- a/captains_and_committers.md +++ b/captains_and_committers.md @@ -10,7 +10,7 @@ - [pkgjs/statusboard](https://github.com/pkgjs/statusboard) — A status page for community projects - Captains: - - + - @bjohansebas - Committers: - @@ -45,7 +45,7 @@ - [pkgjs/nv](https://github.com/pkgjs/nv) — Tool for getting node versions by common aliases - Captains: - - + - @wesleytodd - Committers: - @@ -73,35 +73,14 @@ - [pkgjs/meet](https://github.com/pkgjs/meet) — Create a meeting issue on a schedule - Captains: - - - - Committers: - - - -- [pkgjs/.github](https://github.com/pkgjs/.github) — Common GitHub templates and community health files for the @pkgjs organization - - - Captains: - - + - @bjohnansebas - Committers: - - [pkgjs/wiby](https://github.com/pkgjs/wiby) — "Will I break you" - a tool for testing dependents - Captains: - - - - Committers: - - - -- [pkgjs/design](https://github.com/pkgjs/design) — Design assets for pkgjs - - - Captains: - - - - Committers: - - - -- [pkgjs/support-separate-repo](https://github.com/pkgjs/support-separate-repo) — Repo required for integration tests from https://github.com/pkgjs/support package - - - Captains: - - + - @bjohansebas - Committers: - @@ -115,7 +94,7 @@ - [pkgjs/action](https://github.com/pkgjs/action) — Github Actions tooling for testing Node.js packages - Captains: - - + - @dominykas - Committers: - @@ -136,6 +115,6 @@ - [pkgjs/request-codeowner-review](https://github.com/pkgjs/request-codeowner-review) — - Captains: - - + - @avivkeller - Committers: - From fc1d1160e226ec11d7b44ab6c57f58d6a84ba0ec Mon Sep 17 00:00:00 2001 From: Sebastian Beltran Date: Mon, 15 Dec 2025 13:23:15 -0500 Subject: [PATCH 3/7] refactor: remove commiter refenrences --- Governance.md | 30 +++++++++-------------- captains_and_committers.md => captains.md | 0 2 files changed, 12 insertions(+), 18 deletions(-) rename captains_and_committers.md => captains.md (100%) diff --git a/Governance.md b/Governance.md index 4dcc0b01..1f015b06 100644 --- a/Governance.md +++ b/Governance.md @@ -167,32 +167,26 @@ package to the `@pkgjs` org on npm. ##### Maintainers Maintainers for repositories in the pkgjs organization follow a "captains" -and "committers" model. - -- **Committers:** Each repository will have a team named - [REPO-committers](https://github.com/orgs/pkgjs/teams/REPO-committers/) - containing individuals with push access to the repository. Committers are - empowered to review, approve, and merge pull requests, manage issues, and - carry out day-to-day maintenance activities in accordance with the - repository's policies. +model. - **Captains:** One or more captains provide long-term stewardship and act - as the senior maintainers for the repository. Captains are a named team - [REPO-captains](https://github.com/orgs/pkgjs/teams/REPO-captains/) and may - perform the following duties: - - Add and remove committers from the `REPO-committers` team. - - Resolve disputes among committers and act as a tie-breaker when + as the maintainers for the repository. Captains are a named team + [REPO-captains](https://github.com/orgs/pkgjs/teams/REPO-captains/) and are + responsible for the maintenance and releases of the repository. Captains + hold push access and may perform the following duties: + - Review, approve, and merge pull requests, and manage issues in + accordance with the repository's policies. + - Resolve disputes among contributors and act as a tie-breaker when consensus cannot be reached. - Make and manage releases for the repository, including creating GitHub releases and publishing packages when appropriate. - - Nominate additional captains for repositories they steward. + - Nominate additional captains for repositories they steward. Nominations + must be made by opening a pull request that updates `captains.md` in this repository. Administrative members of the package-maintenance working group are given the captain role on the `REPO-captains` team and may add or remove captains -as appropriate. Captains may add or remove committers for the repositories -they steward. When a repository has a single committer, that committer may -merge their own pull requests in accordance with the repository's landing -policy. +as appropriate. +For the current list of captains for each repository see [captains.md](captains.md). ##### Landing PRs diff --git a/captains_and_committers.md b/captains.md similarity index 100% rename from captains_and_committers.md rename to captains.md From 2c09dcc45c7ac6089ea33f4fa2201de5567f444d Mon Sep 17 00:00:00 2001 From: Sebastian Beltran Date: Mon, 15 Dec 2025 13:48:00 -0500 Subject: [PATCH 4/7] refactor: simplify captains list format in captains.md --- captains.md | 139 +++++++--------------------------------------------- 1 file changed, 19 insertions(+), 120 deletions(-) diff --git a/captains.md b/captains.md index beb467b1..d2f19d46 100644 --- a/captains.md +++ b/captains.md @@ -1,120 +1,19 @@ -# Captains and Committers (pkgjs repositories) - -- [pkgjs/create-package-json](https://github.com/pkgjs/create-package-json) — Create full featured package.json files - - - Captains: - - - - Committers: - - - -- [pkgjs/statusboard](https://github.com/pkgjs/statusboard) — A status page for community projects - - - Captains: - - @bjohansebas - - Committers: - - - -- [pkgjs/gh-pages](https://github.com/pkgjs/gh-pages) — Builds and deploys a Github Pages site - - - Captains: - - - - Committers: - - - -- [pkgjs/support](https://github.com/pkgjs/support) — Package Support Format - - - Captains: - - - - Committers: - - - -- [pkgjs/triagebot](https://github.com/pkgjs/triagebot) — A GitHub Action for traiging issues - - - Captains: - - - - Committers: - - - -- [pkgjs/create-pkg](https://github.com/pkgjs/create-pkg) — Scaffolding for JavaScript - - - Captains: - - - - Committers: - - - -- [pkgjs/nv](https://github.com/pkgjs/nv) — Tool for getting node versions by common aliases - - - Captains: - - @wesleytodd - - Committers: - - - -- [pkgjs/detect-node-support](https://github.com/pkgjs/detect-node-support) — List the Node.js versions supported by the package/repository - - - Captains: - - - - Committers: - - - -- [pkgjs/membership-updater](https://github.com/pkgjs/membership-updater) — A GitHub action to update membership status - - - Captains: - - - - Committers: - - - -- [pkgjs/dependents](https://github.com/pkgjs/dependents) — Tool to gather all dependents of a package and filter by npm weekly downloads, github forks, stars and watchers - - - Captains: - - - - Committers: - - - -- [pkgjs/meet](https://github.com/pkgjs/meet) — Create a meeting issue on a schedule - - - Captains: - - @bjohnansebas - - Committers: - - - -- [pkgjs/wiby](https://github.com/pkgjs/wiby) — "Will I break you" - a tool for testing dependents - - - Captains: - - @bjohansebas - - Committers: - - - -- [pkgjs/parseargs](https://github.com/pkgjs/parseargs) — Polyfill of `util.parseArgs()` - - - Captains: - - - - Committers: - - - -- [pkgjs/action](https://github.com/pkgjs/action) — Github Actions tooling for testing Node.js packages - - - Captains: - - @dominykas - - Committers: - - - -- [pkgjs/action-import-blocklist](https://github.com/pkgjs/action-import-blocklist) — A GitHub Action to import the blocklist from one organization to another. - - - Captains: - - - - Committers: - - - -- [pkgjs/patch-my-code-of-conduct](https://github.com/pkgjs/patch-my-code-of-conduct) — A tool for creating a code of conduct with a prefix and a patch - - - Captains: - - - - Committers: - - - -- [pkgjs/request-codeowner-review](https://github.com/pkgjs/request-codeowner-review) — - - - Captains: - - @avivkeller - - Committers: - - +# Captains (pkgjs repositories) + +- [pkgjs/create-package-json](https://github.com/pkgjs/create-package-json): +- [pkgjs/statusboard](https://github.com/pkgjs/statusboard): @bjohansebas +- [pkgjs/gh-pages](https://github.com/pkgjs/gh-pages): +- [pkgjs/support](https://github.com/pkgjs/support): +- [pkgjs/triagebot](https://github.com/pkgjs/triagebot): +- [pkgjs/create-pkg](https://github.com/pkgjs/create-pkg): +- [pkgjs/nv](https://github.com/pkgjs/nv): @wesleytodd +- [pkgjs/detect-node-support](https://github.com/pkgjs/detect-node-support): +- [pkgjs/membership-updater](https://github.com/pkgjs/membership-updater): +- [pkgjs/dependents](https://github.com/pkgjs/dependents): +- [pkgjs/meet](https://github.com/pkgjs/meet): @bjohnansebas @ctcpip @wesleytodd +- [pkgjs/wiby](https://github.com/pkgjs/wiby): @bjohansebas +- [pkgjs/parseargs](https://github.com/pkgjs/parseargs): +- [pkgjs/action](https://github.com/pkgjs/action): @dominykas +- [pkgjs/action-import-blocklist](https://github.com/pkgjs/action-import-blocklist) +- [pkgjs/patch-my-code-of-conduct](https://github.com/pkgjs/patch-my-code-of-conduct) +- [pkgjs/request-codeowner-review](https://github.com/pkgjs/request-codeowner-review): @avivkeller From bcc6025ae4b6c91d1d964a5c01797539078e15d9 Mon Sep 17 00:00:00 2001 From: Sebastian Beltran Date: Wed, 17 Dec 2025 09:35:12 -0500 Subject: [PATCH 5/7] docs: update list --- captains.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/captains.md b/captains.md index d2f19d46..8532138a 100644 --- a/captains.md +++ b/captains.md @@ -3,16 +3,16 @@ - [pkgjs/create-package-json](https://github.com/pkgjs/create-package-json): - [pkgjs/statusboard](https://github.com/pkgjs/statusboard): @bjohansebas - [pkgjs/gh-pages](https://github.com/pkgjs/gh-pages): -- [pkgjs/support](https://github.com/pkgjs/support): +- [pkgjs/support](https://github.com/pkgjs/support): @ljharb - [pkgjs/triagebot](https://github.com/pkgjs/triagebot): - [pkgjs/create-pkg](https://github.com/pkgjs/create-pkg): -- [pkgjs/nv](https://github.com/pkgjs/nv): @wesleytodd +- [pkgjs/nv](https://github.com/pkgjs/nv): @ljharb @wesleytodd - [pkgjs/detect-node-support](https://github.com/pkgjs/detect-node-support): - [pkgjs/membership-updater](https://github.com/pkgjs/membership-updater): - [pkgjs/dependents](https://github.com/pkgjs/dependents): - [pkgjs/meet](https://github.com/pkgjs/meet): @bjohnansebas @ctcpip @wesleytodd - [pkgjs/wiby](https://github.com/pkgjs/wiby): @bjohansebas -- [pkgjs/parseargs](https://github.com/pkgjs/parseargs): +- [pkgjs/parseargs](https://github.com/pkgjs/parseargs): @bjohansebas @ljharb - [pkgjs/action](https://github.com/pkgjs/action): @dominykas - [pkgjs/action-import-blocklist](https://github.com/pkgjs/action-import-blocklist) - [pkgjs/patch-my-code-of-conduct](https://github.com/pkgjs/patch-my-code-of-conduct) From 079674f37462406196ef428212b428157517cc42 Mon Sep 17 00:00:00 2001 From: Sebastian Beltran Date: Wed, 17 Dec 2025 13:00:32 -0500 Subject: [PATCH 6/7] docs: update list of captains --- captains.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/captains.md b/captains.md index 8532138a..94c4ac24 100644 --- a/captains.md +++ b/captains.md @@ -1,11 +1,11 @@ # Captains (pkgjs repositories) -- [pkgjs/create-package-json](https://github.com/pkgjs/create-package-json): -- [pkgjs/statusboard](https://github.com/pkgjs/statusboard): @bjohansebas +- [pkgjs/create-package-json](https://github.com/pkgjs/create-package-json): @wesleytodd +- [pkgjs/statusboard](https://github.com/pkgjs/statusboard): @bjohansebas @wesleytodd - [pkgjs/gh-pages](https://github.com/pkgjs/gh-pages): - [pkgjs/support](https://github.com/pkgjs/support): @ljharb - [pkgjs/triagebot](https://github.com/pkgjs/triagebot): -- [pkgjs/create-pkg](https://github.com/pkgjs/create-pkg): +- [pkgjs/create-pkg](https://github.com/pkgjs/create-pkg): @wesleytodd - [pkgjs/nv](https://github.com/pkgjs/nv): @ljharb @wesleytodd - [pkgjs/detect-node-support](https://github.com/pkgjs/detect-node-support): - [pkgjs/membership-updater](https://github.com/pkgjs/membership-updater): From 53df2ab73b5a1780109fdcdd5934277735fd8993 Mon Sep 17 00:00:00 2001 From: Sebastian Beltran Date: Thu, 18 Dec 2025 22:42:33 -0500 Subject: [PATCH 7/7] docs: update list --- captains.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/captains.md b/captains.md index 94c4ac24..39b4b43f 100644 --- a/captains.md +++ b/captains.md @@ -1,12 +1,12 @@ # Captains (pkgjs repositories) -- [pkgjs/create-package-json](https://github.com/pkgjs/create-package-json): @wesleytodd +- [pkgjs/create-package-json](https://github.com/pkgjs/create-package-json): @rxmarbles @wesleytodd - [pkgjs/statusboard](https://github.com/pkgjs/statusboard): @bjohansebas @wesleytodd - [pkgjs/gh-pages](https://github.com/pkgjs/gh-pages): - [pkgjs/support](https://github.com/pkgjs/support): @ljharb - [pkgjs/triagebot](https://github.com/pkgjs/triagebot): -- [pkgjs/create-pkg](https://github.com/pkgjs/create-pkg): @wesleytodd -- [pkgjs/nv](https://github.com/pkgjs/nv): @ljharb @wesleytodd +- [pkgjs/create-pkg](https://github.com/pkgjs/create-pkg): @rxmarbles @wesleytodd +- [pkgjs/nv](https://github.com/pkgjs/nv): @ljharb @rxmarbles @wesleytodd - [pkgjs/detect-node-support](https://github.com/pkgjs/detect-node-support): - [pkgjs/membership-updater](https://github.com/pkgjs/membership-updater): - [pkgjs/dependents](https://github.com/pkgjs/dependents):