Parent issue: Incentivize maintainership for long-term project health
Proposal
Establish a formal definition of which GitHub teams represent maintainers, codified in workstreams.yml.
Today, there are 73 GitHub teams with names ending in -maintainers, but there is no authoritative mapping between these teams and the SIGs defined in workstreams.yml. Some teams were created for projects that never materialized, some are redundant due to parent-child relationships, and other various quirks.
If we're going to tie governance rights to maintainer status — voting weight, project proposal roles, roadmap participation — we need a clear, auditable answer to "who is a maintainer?"
Why workstreams.yml
workstreams.yml is already the source of truth for how the project organizes its work. Each SIG entry includes its people (GC liaison, TC sponsors), meetings, Slack channels, and repositories. It's the natural place to also declare which GitHub team represents maintainers for each SIG.
This would extend each SIG entry with something like:
- id: java-sdk-instrumentation
kind: sig
...
people:
- gcLiaison: trask
- tcSponsor:
username: jack-berg
level: leading
- maintainerTeam: java-maintainers # <-- new
resources:
- repository: open-telemetry/opentelemetry-java
...
What this enables
- Clear governance scope. When a process says "maintainers vote on X," we know exactly which teams and people that includes.
- Auditable membership. workstreams.yml is version-controlled and reviewed via PR, unlike ad hoc GitHub team creation.
- Repository ownership. Formalizing the relationship between SIGs, their maintainer teams, and their repositories in one place.
- Cleanup opportunity. Forces us to reconcile the 73 existing
-maintainers teams against the actual SIG structure and identify teams that are stale, redundant, or misclassified.
Parent issue: Incentivize maintainership for long-term project health
Proposal
Establish a formal definition of which GitHub teams represent maintainers, codified in workstreams.yml.
Today, there are 73 GitHub teams with names ending in
-maintainers, but there is no authoritative mapping between these teams and the SIGs defined in workstreams.yml. Some teams were created for projects that never materialized, some are redundant due to parent-child relationships, and other various quirks.If we're going to tie governance rights to maintainer status — voting weight, project proposal roles, roadmap participation — we need a clear, auditable answer to "who is a maintainer?"
Why workstreams.yml
workstreams.yml is already the source of truth for how the project organizes its work. Each SIG entry includes its people (GC liaison, TC sponsors), meetings, Slack channels, and repositories. It's the natural place to also declare which GitHub team represents maintainers for each SIG.
This would extend each SIG entry with something like:
What this enables
-maintainersteams against the actual SIG structure and identify teams that are stale, redundant, or misclassified.