Gentoo Archives: gentoo-dev

From: Mark Loeser <halcy0n@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] QA Team's role
Date: Mon, 27 Feb 2006 00:38:47
Message-Id: 20060227003413.GE17257@aerie.halcy0n.com
In Reply to: Re: [gentoo-dev] [RFC] QA Team's role by Stuart Herbert
1 Stuart Herbert <stuart@g.o> said:
2 > On Sun, 2006-02-26 at 17:22 -0500, Mark Loeser wrote:
3 > > * In case of emergency, or if package maintainers refuse to cooperate,
4 > > the QA team may take action themselves to fix the problem.
5 >
6 > I'd like to see this say
7 >
8 > * In case of emergency, or after a failed appeal by the package
9 > maintainer to the council, the QA team may take action themselves
10 > to fix the problem, if the package maintainer(s) are unavailable
11 > or refuse to co-operate.
12 >
13 > That still gives the QA team the powers it needs for an enforcement
14 > role, which is all that it needs.
15
16 Your change seems to imply that the QA team must wait for the council's
17 okay to go forth and fix the package, rather the QA team able to act on
18 its own. If that is the case, I don't see how we would ever be able to
19 get things done when someone disagrees with us.
20
21 > > * In the event that a developer still insists that a package does not
22 > > break QA standards, an appeal can be made at the next council meeting. The
23 > > package should be dealt with per QA's request until such a time that a
24 > > decision is made by the council.
25 >
26 > I'd like to see an alternative wording:
27 >
28 > * In the event that a developer still insists that a package does not
29 > break QA standards, or that the QA standards are somehow defective,
30 > an appeal can be made at the next council meeting.
31 >
32 > If it is an emergency, then the QA team is still free to intervene
33 > before the council meeting. But, where it isn't an emergency, there is
34 > no need for immediate action, and so there should be no action until the
35 > appeal has been heard.
36
37 Again, then we are going to get into the argument of the definition of
38 an emergency and never be able to get anything done. We really hope
39 problems never come down to this, which is why we left it worded this
40 way.
41
42 > The QA team has no monopoly on what is right or wrong in Gentoo, and
43 > neither do package maintainers. If there is a disagreement that leads
44 > to an appeal, the onus should be on the QA team to have to present their
45 > case to the council, as they are the ones pushing for change.
46
47 Again, this is taking away any power that the QA team might have, and
48 gets us stuck in the current situation where we can't do anything when
49 someone disagrees with us. We are hoping that most people are not going
50 to see us as idiots running around trying to change everything just because
51 we don't like it. It is expected that people will trust us to some degree,
52 and we are giving a way for people to challenge our decisions if they
53 believe we are wrong.
54
55 >
56 > > * Just because a particular QA violation has yet to cause an issue does
57 > > not change the fact that it is still a QA violation.
58 >
59 > I'd support the above if the following statement was also included:
60 >
61 > * QA standards, and the actions required to resolve them, must be
62 > pragmatic and proportional to the impact on actual end-users of
63 > Gentoo.
64 >
65 > Gentoo would be best served by a QA team that spent its time tackling
66 > issues that are urgent and important to end-users (quadrant 1 & 2
67 > activities). A QA team that gets bogged down in the thick of thin
68 > things is a symptom of a team that has become self-serving.
69
70 This is not quantifiable at all and will just get us into arguments with
71 people that disagree with us that there is a problem present.
72
73 >
74 > > * The QA team will maintain a list of current "QA Standards". The list
75 > > is not meant by any means to be a comprehensive document, but rather a
76 > > dynamic document that will be updated as new problems are discovered.
77 >
78 > These QA standards are policy changes that affect the whole tree. The
79 > QA team does *not* own QA policy - we all do, as contributors to Gentoo.
80 > I'm asking the council to agree an adequate process for the approval of
81 > QA standards by a wider group than just the QA team. Maybe changes
82 > could be batched up into a GLEP, say once a quarter, with the option of
83 > fast-tracking GLEPs in between for emergency QA policy changes? This
84 > would allow the QA team to perform effectively, and have the added
85 > benefit of ensuring that the wider developer community knew what was
86 > coming in advance, and could "buy in" to the changes.
87
88 Again, this bogs us down in useless process if someone wants to argue a
89 change that clearly breaks things, but isn't documented. It is
90 impossible to document every single thing that is a problem, and we are
91 asking for some freedom to be able to work on issues that fall under QA.
92
93 > There's a secondary issue here for me. None of our tools are perfect;
94 > we all have to work pragmatically within the capabilities of what we
95 > have. Some of the real QA issues in the tree arise from the limitations
96 > of our tools. I'd like to see the following incorporated into the QA
97 > team's mandate.
98 >
99 > * If the QA team wishes to push standards about specific aspects of
100 > our tools, then those standards must be endorsed by the leads of
101 > those tools.
102
103 So the Portage team will have to agree with us on every single problem
104 that is a QA issue? This seems like something we can leave alone until
105 it doesn't work, at which point we bring it before the council to figure
106 out how we can best handle this situation. Saying that another team
107 must approve all QA checks just seems silly.
108
109 > Why? Because the QA team has no monopoly on what is right and wrong
110 > with the tree. If any proposed QA standard cannot pass a simple litmus
111 > test of the endorsement of the leads of the tools, how can it be fit for
112 > enforcement against the wider development community? What is a package
113 > maintainer to do? He/she can't go back to the tools team in question
114 > and ask for a fix; all they will get is that the tools team in question
115 > doesn't agree with the QA team, and doesn't support that particular
116 > standard. Better to have QA standards that are strongly supported than
117 > to have QA standards supported by just the one team.
118
119 All of this seems to assume that the QA team is going to abuse its
120 power. So far we have had very few problems when we ask people to
121 fix issues that we have found for their packages. Is this going to
122 always be true? No, and someone needs to be able to get problems fixed
123 instead of just leaving things the way they are, and we want to fill
124 that role.
125
126 > I'd like to see the QA team's primary role stated as "educational"
127 > first, then watchdog, then intervener in that order (emergencies
128 > not-withstanding).
129
130 Which is what we plan on doing, and have been doing so far.
131
132 > With that in mind, I suggest that the QA standards must include
133 > educational information about the problem(s) that the standard
134 > addresses, before they can be approved. This is in no way to challenge
135 > the legitimacy of the agreed standards. It's to help all developers do
136 > better QA on their own work (everyone does a better job if they
137 > understand the reasons why). It also serves the dual purpose of helping
138 > the next generation of QA testers when the current team members have
139 > moved on. This could be Ciaran's opportunity to see TheDoc become an
140 > "offical" document.
141
142 We are working on a document, and hope to document all of the problems
143 and why they are problems. We don't plan on saying something is just
144 wrong and not give an explanation.
145
146
147 --
148 Mark Loeser - Gentoo Developer (cpp gcc-porting qa toolchain x86)
149 email - halcy0n AT gentoo DOT org
150 mark AT halcy0n DOT com
151 web - http://dev.gentoo.org/~halcy0n/
152 http://www.halcy0n.com

Replies

Subject Author
Re: [gentoo-dev] [RFC] QA Team's role Daniel Goller <morfic@g.o>
Re: [gentoo-dev] [RFC] QA Team's role Stuart Herbert <stuart.herbert@×××××.com>