nodejs / nodejs/node

Improve how we handle active "good first issue" issues

Aperta
#64,662 2 commenti 2 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

discuss meta
Lingua principale
JavaScript
Stelle
122k
Fork
37.3k
Merge medio
4g 2h
PR unite (30g)
283

Descrizione

Problem

I’m concerned that good first issue (https://github.com/nodejs/node/labels/good%20first%20issue) issues get spammed so heavily that we may become less likely to use the label at all. Which I think is already happening.

That would be a bad outcome, because it could quietly raise the barrier for new contributors. A genuine contributor may see several open PRs and a long comment thread, assume the issue is already taken, and move on.

One example is https://github.com/nodejs/node/issues/60884, where people continue opening PRs or asking to work on it despite several PRs already being open.

To be clear, the goal is not to prevent multiple PRs. It is to keep good first issue useful as an entry point for genuine new contributors.

Potential improvements

I checked how some other large repositories handle this and found a few approaches worth considering. I'd be happy to hear other approaches though.

1. Use a different label

Some repositories use less well-known labels instead of good first issue, such as Rust’s [E-easy](https://github.com/rust-lang/rust/issues?q=sort%3Aupdated-desc%20is%3Aissue%20state%3Aopen%20label%3AE-easy).

Since good first issue is heavily targeted by bots and automated searches, using a different label could reduce some of that noise.

2. Remove the label once there is an active PR

Godot does this: the good first issue label is removed while there is an active PR that appears to solve the issue.

We could start by doing this manually and potentially automate it later based on linked PR status.

3. Add a claim system

Rust uses [@rustbot claim](https://github.com/rust-lang/rust-clippy/blob/master/CONTRIBUTING.md) to let contributors claim issues.

I like this option less because of the risk of people claiming issues and disappearing, but claims could expire after a few days unless there is an open PR or visible progress.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Esamina l’attuale label good first issue e l’esempio nell’issue #60884, quindi confronta gli approcci proposti: un label diverso, rimuovere il label quando esiste una PR attiva oppure un sistema di rivendicazione. Controlla le guide collegate di Godot e Rust per individuare i dettagli rilevanti del workflow. Il lavoro è completato quando viene selezionato e documentato un approccio concordato per Node.js; non è ancora stato scelto alcun approccio.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
github
Ambito
developer-experience
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Tranquilla
Chiarezza
Da chiarire
Idoneità per principianti
30/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.