Define a permission scheme for maintainers
Nobody has claimed this yet.
- Dominant language
- Shell
- Stars
- 48
- Forks
- 36
- Avg merge
- 2m
- Merged PRs (30d)
- 3
Description
For the few formal teams we have as well as generally on NixOS/nixpkgs the process is mostly implicit and unstructured.
Nixpkgs uses a magic issue where @domenkozar essentially hands out commit bits based on comments. The Nix team got into working mode after pestering @edolstra into setting up permissions. This
We are currently blocked on that in the @NixOS/documentation-team where we have to make up the process as we go, and have to resort to ask org owners ad hoc. It would be good to have something written down that the next generation of community members and team leads can refer to.
Proposal
- Implement NixOS/foundation#21 and make team leads maintainers for their GitHub team
- Give team leads merge access to all repositories their team is concerned with
- Give each team triage access to the same repositories
- Give team leads write access to the NixOS Calendar
- Use teams for
CODEOWNERSand establish the practice of team leads merging PRs approved by team members
The advantage of this is what amounts to a hierarchy of responsibilities, where team leads can decide themselves who they trust with curating project boards and how much energy to spend on double checking their team members' reviews, but are ultimately responsible for merging changes.
Related:
- https://github.com/NixOS/rfcs/pull/55 (retire related committers)
- Discourse: Nix deserves great governance (comment by @infinisil)
- https://github.com/NixOS/nix.dev/issues/365
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing foundation#21, the linked RFC, the Discourse discussion, and nix.dev#365 to understand the existing governance context. Document the agreed permission scheme for team leads and teams, including repository access, Calendar access, and CODEOWNERS practice, with the resulting responsibilities clear for future team leads.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github
- Domain
- authorization, documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 20/100