Expand contribution guidelines
The README has a section on changing these documents, but there are some issues:
- The third point ("Announce the MR on arch-dev-public.") sounds like merge requests are not welcome from people who can't post to arch-dev-public (this includes even some team members – staff).
- It also seems that the rule has not been enforced even once since its addition in b861e285 on May 31.
- The fifth point states: "If the lawyer has some comments, we'll apply them without further discussion." I think there should still be some room for discussion, otherwise the lawyer could dictate us whatever they want. Or those who communicate with the lawyer (if the communication is not made transparent).
- The approval process for merge requests is not defined. The default "1 or 2 approvals from maintainers are enough" that is used in other software projects is not suitable for legally binding documents.
- We should also add a clear definition of the group of people who can approve. Although it will be likely visible on Gitlab/Keycloak, it deserves a definition in the text.
- How do we ensure that enough people (ideally all team members) are aware of the proposed changes and pending approvals? Note that this issue includes also new team members.
- The third point attempts to solve this with announcements to arch-dev-public, but it has the aforementioned issue. And we still don't require, nor encourage, all team members to subscribe to the list. Also the announcements are not automated, which leaves space for forgetting and highers the bar for contributions.
- As an alternative, we can strive for a pro-active approach where people interested in following the changes and participating in the discussion (i.e. reviewing and approving) enable notifications for this project on Gitlab. But we'd still need to encourage people to do that, otherwise the result can be close to the "1 or 2 approvals from maintainers are enough".
Finally, would it make sense to move the guidelines to CONTRIBUTING.md? Could be still referenced from the README as well as from issue templates.
Edited by Jakub Klinkovský