nodejs / nodejs/admin

Implement an Activity Policy

Offen
#651 5 Kommentare 3 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
JavaScript
Sterne
202
Forks
183
Ø Merge
2 Min.
Gemergte PRs (30 T.)
1

Beschreibung

I'd like to recommend that we introduce an Activity Policy for organization membership to reduce the manual workload of maintaining organization membership and attempt to reduce the surface area for potential issues caused by escalated privileges.

I think we can probably be incredibly lenient in what we consider "activity". I'd consider the following "activity", in the nodejs, pkgjs, and nodejs-private orgs:

  • Creating an Issue, PR, or Discussion (ex. org:nodejs author:bnb created:>2021-01-01)
  • Commenting on an Issue, PR, or Discussion (ex. org:nodejs commenter:bnb created:>2021-01-01)
  • Reviewing a PR (ex org:nodejs reviewed-by:bnb created:>2021-01-01)

I would also include "reacting to an Issue, PR, or Discussion" but it doesn't seem like GitHub has an API that would surface that information. If people think of more things to check programmatically that could be added, I'm wholly onboard with that. I believe our goal should be to consume as many signals as possible, and given that we've consistently decided to centralize on GitHub I think using every available signal is a reasonable way to parse "has this person engaged with the project".

In terms of "what is the scope and approach":

  • I'd recommend checking for checking the past year. I don't know of a point in history where an "active" member of the project didn't engage in some way in GitHub at one point or another within the previous 365 days.
    • I'd recommend this be instant rather than moving to a temporary hold group before being released. In CommComm I pretty consistently noticed a pattern where when asked people would say yes but not return, creating an artificial inflation of the number of members despite a majority being in this limbo state.
  • I'd recommend committing "decisions" in a repo, so we have an easy log that we can audit.
    • This could include a snapshot of their membership, allowing us to easily reinstate that.
  • I'd recommend that we take a similar approach to how some groups have implemented Emeritus, where a simple request to be re-added (perhaps after some period of renewed activity, like a week or a month?) is all that's required. Perhaps this could also be automatic.

Would love to hear thoughts on this.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Prüfung der vorgeschlagenen GitHub-Aktivitätssignale und der Grenzen der GitHub API und untersuche anschließend, wie die Organisationsmitgliedschaft derzeit im Repository nodejs/admin verwaltet wird. Das Issue benötigt eine festgelegte Richtlinie und einen festgelegten Implementierungsumfang, bevor die Arbeit beginnen kann; als abgeschlossen würde gelten, dass ein prüfbares Protokoll der Mitgliedschaftsentscheidungen und ein definierter Prozess für die erneute Hinzufügung vorhanden sind.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
github
Bereich
authorization, security
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.