Gentoo Archives: gentoo-project

From: Alec Warner <antarus@g.o>
To: gentoo-project <gentoo-project@l.g.o>
Subject: Re: [gentoo-project] [PATCH] glep-0048: Provide clear rules for disciplinary actions
Date: Tue, 23 Apr 2019 21:35:30
Message-Id: CAAr7Pr96CA3OV_mU8faWzqBtdLsx++ofgovm3eU_73Y4OTAp0g@mail.gmail.com
In Reply to: Re: [gentoo-project] [PATCH] glep-0048: Provide clear rules for disciplinary actions by Thomas Deutschmann
1 On Tue, Apr 23, 2019 at 2:13 PM Thomas Deutschmann <whissi@g.o>
2 wrote:
3
4 > Hi,
5 >
6 >
7 This is my third draft, I'm trying to keep things concise.
8
9
10 > according to the answer to antarus' question, I understand that in the
11 > past there were Gentoo developers violating Gentoo QA standards.
12 >
13 > There must be a clear process how to deal with such a situation:
14 >
15
16 I agree there needs to be a process. I also tend to agree the current
17 process is not working (based on mgorny's comments above.)
18 My guidance is mostly around guardrails; I care less about the specifics
19 and more about getting the project to be run in reasonable way.
20
21
22 >
23 > - Which kind of QA violation can cause a ban? At no time should a single
24 > QA violation allow whoever is current QA lead or QA team to issue a ban.
25 > I am not saying that current QA team wants to do something like that but
26 > we need clear rules everyone can understand.
27 >
28
29 > - It must be clear that a ban is the last resort. I.e. the process must
30 > define something like a warn system so that the developer violating
31 > Gentoo QA standards knows that he/she has been warned and if he/she
32 > won't change his/her behavior, a ban (commit bit will flip) will follow.
33 >
34
35 I'm not convinced bans do anything, but I'll elaborate below.
36
37
38 >
39 > - However, disciplinary actions must happen in time. I.e. you cannot
40 > silently watch and just complain on IRC for x months and suddenly decide
41 > to issue a ban because QA team just lost patience. That said, an issued
42 > warning will time out. If the developer in question stops violating QA
43 > rules for $time, he/she is back at level 0 so that a new issue won't
44 > trigger an action (keep in mind: We assume that we all share the same
45 > goals; if there's a hostile developer causing problems all the time this
46 > is a Gentoo problem, not a QA problem).
47 >
48
49 I agree that its important not to hide problems. We should have some kind
50 of data collection that tracks defects, and be able to identity patterns.
51 If we want to depreciate items (so e.g. mistakes 90d ago mean less) that
52 also seems relevant. Remember that behind this is the idea that everyone
53 will make mistakes; so some background level of defects is expected.
54
55
56 >
57 > - It must be clear that QA can take actions as last resort. Let's say
58 > developer X received first strike, don't change behavior, maybe will
59 > receive second strike and still keep violating QA standards, QA has the
60 > power to remove commit bit.
61 >
62 > BUT:
63 >
64 > QA actions must be limited in time. After 1 or 2 weeks, commit bit must
65 > be restored. If the developer in question will keep behavior causing the
66 > disciplinary action, we can assume that he/she is a hostile developer
67 > for Gentoo and this will become topic of ComRel.
68 >
69
70 I think this is all about intent right.
71
72 - All developers will make mistakes.
73 - Some mistakes are caught by tools, and some are not.
74 - Developers who make more mistakes than expected (because again, everyone
75 makes some) should have more review.
76 - Developers under review who violate policies *deliberately* should not
77 remain committers.
78
79 I'm not sure bans really help with any of this. The challenge is "which
80 developers deliberately violate policy" and which ones violate it because
81 "there are a lot of ways to screw up and everyone screws up sometimes."
82 This is why I think discussion and transparency help.
83
84 - If a committer is committing without repoman for example, its a pretty
85 deliberate step.
86 - If a committer has made some mistake often, and we provided guidance to
87 them (improve documentation, mentorship, etc) and they don't show
88 improvement, we might count that as deliberate.
89
90 I don't think committers who violate policy will be changed by a ban.
91 Certainly not a ban that is time-delimited (it means I get a 2 week gentoo
92 vacation!) I'd consider alternatives like:
93 - A period where the commits need review.
94 - A ban followed by retraining on specific topics.
95 - A period where the developer is required to build / patch a CI tool to
96 catch the bug before getting to commit without review again.
97
98 These are all things that enable. Time passing is not an enabler, IMHO.
99
100 -A
101
102
103 > Based on this, I cannot vote for
104 >
105 > https://archives.gentoo.org/gentoo-project/message/548d9c439a73ae38756c0b92a28137ea
106 > :
107 >
108 > The changed text grants too much power to QA project. As said, QA
109 > project is responsible for QA in Gentoo (technical things in
110 > ebuilds/eclass in most cases). QA should never have the privileges to
111 > decide to forcefully retire a developer or should take actions for
112 > others (like infra, work of others).
113
114
115 >
116 > --
117 > Regards,
118 > Thomas Deutschmann / Gentoo Linux Developer
119 > C4DD 695F A713 8F24 2AA1 5638 5849 7EE5 1D5D 74A5
120 >
121 >

Replies