]> git.donarmstrong.com Git - debian/debian-policy.git/blob - policy-process.sgml
A bug fixing non-normative release
[debian/debian-policy.git] / policy-process.sgml
1 <!doctype debiandoc public "-//DebianDoc//DTD DebianDoc//EN">
2 <debiandoc>
3   <book>
4     <titlepag>
5       <title>A mechanism for updating Debian Policy documents</title>
6       <author>
7         <name>Manoj Srivastava</name>
8         <email>srivasta@debian.org</email>
9       </author>
10       <version>$Revision: 1.6 $</version>
11       <copyright>
12         <copyrightsummary>Copyright &copy; 2000 by Manoj Srivastava. 
13         </copyrightsummary>
14         <p>
15           You are given permission to redistribute this document
16           and/or modify it under the terms of the GNU General Public
17           License as published by the Free Software Foundation; either
18           version 2, or (at your option) any later version.</p>
19         <p>
20           On Debian GNU/Linux systems, the complete text of the GNU
21           General Public License can be found in
22           <tt>/usr/share/common-licenses/GPL</tt>. </p>
23       </copyright>
24     </titlepag>
25     <toc detail="sect">
26     <chapt>
27       <heading>Introduction, and Administrivia</heading>
28       <p>
29         This document documents the current practice followed in updating
30         Debian Policy documents. This mechanism has been designed for
31         dealing with policy changes that are light
32         weight and can be decided upon within the policy group, by
33         near consensus.  In most day-to-day cases, the Policy group
34         should and must be able to conduct Policy discussions and
35         amendments without the intervention of the Technical Committee
36         or other Constitutional issues.  Only in cases of extreme
37         dispute (formal objections) should the intervention of
38         Constitutional bodies come into play. In any other situation,
39         the Policy group should be able to conduct business
40         unfettered. A consequence of this goal is that formal
41         objections should not be used lightly, else this mechanism
42         shall be ineffective.
43       </p>
44       <p>
45         It should be noted that the team responsible for the task of
46         updating policy does not act as author or editor of Policy
47         itself, that is the task of the Debian Policy mailing list.
48       </p>
49       <p>
50         <em>In the following, the term developer refers to registered
51           Debian developers.</em>
52       </p>  
53     </chapt>
54     <chapt>
55       <heading>Archives and Personnel</heading>
56       <sect>
57         <heading>The policy maintainers team</heading>
58         <p>
59           The policy document is maintained by a group of people who have
60           access to the CVS repository for the Policy documents;
61           however, this set of people behave more like maintainers
62           rather than authors/editors. This group does not create
63           policy, nor does it exercise editorial control, Policy is
64           decided "upstream".  The group that decides on policy should
65           be the group of developers on the debian-policy mailing
66           list, which is how it was always done; so the group of
67           policy maintainers have no real power over policy.
68         </p>
69         <p>
70           Since the policy maintainers have no special powers, there
71           is no restriction of their participattion the discussion. It
72           is preferable to have at least 4-5 people on the job,
73           perhaps closer to 8, so that policy does not languish when
74           any maintainer goes missing (we do need vacations, you know,
75           once in a while), and since little creative power is vested
76           in the maintainers, we do not need a central control. And
77           the BTS can be used as a record of the action decided upon
78           even if all maintainers are away at some time.
79         </p>
80       </sect>
81       <sect>
82         <heading>The CVS Repository</heading>
83         <p>
84           There is a repository set up on <tt>cvs.debian.org</tt> for
85           this, and the people on the policy maintainer team have
86           write access to it. The Debian policy mailing list gets
87           copies of all the CVS commit notices.
88         </p>
89       </sect>
90     </chapt>
91     <chapt>
92       <heading>Procedures and Processes</heading>
93
94       <sect>
95         <heading>Initiating discussions</heading>
96         <p>
97           Unlike before, when the policy editor gathered in issues
98           which, in his view, were candidates for inclusion in policy,
99           any one can raise an issue in the mailing list. It is
100           advisable, but by no means mandatory, that the proposer
101           tries an idea out on the mailing list, which can help flesh
102           out details rapidly, and test the sentiment and the
103           collective wisdom of the list. Discussion may be intiated by
104           any member of the list. 
105         </p>
106         <p>
107           Once the proposer is satisfied that the proposal has merit
108           (with or without trying the waters on the list), the
109           proposer should file a <em>wishlist</em> bug against the
110           debian-policy package. This stage can be initiated by any
111           member of the list.
112         </p>
113       </sect>
114       <sect>
115         <heading>Creating a proposal</heading>
116
117         <p>
118           Any Debian developer can create a proposal by retitling the
119           wishlist bug in the BTS to have the subject of the form
120           <strong>"[PROPOSED] ..."</strong> or
121           <strong>"[PROPOSAL] ..."</strong>. (Note: The developer may
122           coalesce these steps into one by directly filing a
123           <em>wishlist</em> bug with the proper subject format).
124         </p>
125         <p>
126           This is the pre-discussion period, when the idea is kicked
127           around, and polished. There is no preset time limit, but at
128           some point, if it is stalled, the bug should be closed. A
129           suggested time period is 6 months, since if the
130           proposal has had no action in that period, it is very likely
131           dead. If six months have actually passed, the bug should be
132           retitled <strong>"[OLD PROPOSAL] ..."</strong>, and have the
133           severity set to fixed. The maintainers shall flush out old
134           proposals after a a sufficiently long period of time has
135           elapsed (certainly more than a year or so after the initial
136           proposal).
137         </p>
138         <p>
139           Developers may second the issue by emailing a message
140           containing the text "seconded" to the proposal in the
141           BTS. Only registered Debian developers may second proposals.
142         </p>
143       </sect>
144       <sect>
145         <heading>Creating an Amendment</heading>
146         <p>
147           When a proposal in the BTS has acquired two seconds (apart
148           from the proposer), it becomes a formal amendment. The bug
149           severity is raised to "normal" and the bug is retitled to
150           <strong>"[AMENDMENT DD/MM/YYYY] ..."</strong>.  
151         </p>
152         <p>
153           The rationale behind the requirement for seconders is that
154           it would<enumlist>
155             <item>
156               <p>
157                 Encourage people to test the waters on the policy
158                 mailing list, and this could help create an proposal
159                 with a better chance of success</p>
160             </item>
161             <item>
162               <p>
163                 Prevent frivolous or ill conceived proposals from
164                 wasting peoples time (if the proposal does not even
165                 convince two developers, surely this is not ready for
166                 inclusion in Policy?)</p>
167             </item>
168           </enumlist>
169         </p>
170         <p>
171           The whole discussion process is meant to be lightweight; if
172           you wish the proposals to be amended, talk to the proposer,
173           and get the amendment in. Or else, post an alternative, and
174           let the  group decide which one is better.
175         </p>
176         <p>
177           If the process gets very contentious, and needs something
178           like votes on amendments and withdrawal of proposal, then
179           this is not the correct forum for this, and the procedures
180           outlined in the constitution should be followed. Note that
181           only non-technical issues can be resolved using the general
182           resolution protocol; technical issues would hopefully be
183           resolved in the group itself, or the technical committee can
184           be called upon to render a decision.
185         </p>
186         <p>
187           This document is not supposed to supplant the processes
188           outlined in the constitution, nor is it intended to run
189           around them.
190         </p>
191       </sect>
192
193       <sect>
194         <heading>Final disposition of the proposal</heading>
195         <sect1>
196           <heading>An accepted amendment</heading>
197           <p>
198             If the amendment is accepted, the bug is marked
199             forwarded and retitled
200             <strong>"[ACCEPTED DD/MM/YYYY] ..."</strong>.
201           </p>
202         </sect1>
203         <sect1>
204           <heading>An amendment that stalls or is rejected</heading>
205           <p>
206             If the amendment is stalls, or otherwise fails to pass, it
207             is retitled as <strong>"[REJECTED DD/MM/YYYY] ..."</strong>
208             and has its severity set to <tt>fixed</tt>. 
209           </p>
210         </sect1>
211       </sect>
212
213
214       <sect>
215         <heading>Deadlines for Tabling Discussions</heading>
216         <p>
217           It has been observed in the past that discussions on the
218           mailing list tend to devolve into endless arguments. In
219           order to get away from the debating society aspect, at the
220           time of the formal proposal, a deadline can be set (probably
221           by the proposer, since they are likely to have an idea how
222           contentious the discussion is likely to be) for ending
223           discussion on the issue, which should rarely be less than 10
224           days, and typically two weeks or so. I hope that a hard
225           minimum period need not be set, and that the proposers would
226           be reasonable, and not set too short or too long a time for
227           discussion.
228         </p>
229         <p>
230           If a consensus is reached by the policy group, then the
231           maintainers shall enter the amendment into the Policy
232           document, announce the inclusion in the periodic report, and
233           release a new version.</p>
234         <sect1>
235           <heading>Extensions to Deadlines?</heading>
236           <p>
237             If a deadline is approaching, and the discussion is almost
238             concluded (in other words, it has not reached an impasse),
239             and the consensus on the policy group is that an extension
240             of a week would resolve the issues better, a one-time
241             extension could be granted. Care should be taken in
242             exercising this option, since abusing this would merely
243             postpone closures. Anything that is still not resolved is
244             too contentious not to be sent to the full set of
245             developers in a general resolution proposal.
246           </p>
247         </sect1>
248       </sect>
249       <sect>
250         <heading>Deadlock resolution</heading>
251         <p>
252           Formerly, arriving at a consensus was the only way to amend
253           Policy. That worked well when the Project was small,
254           however, we have apparently grown out of that phase, and even
255           the policy mailing list has grown more fractious than in the
256           days of yore. We now need a formal process of deadlock
257           resolution, and we need to recognize that on non-technical
258           issues a small minority should not always hold up deployment
259           of policy.</p>
260         <p>
261           If a consensus is not reached, (or if someone submits a
262           formal objection to the proposal) and the end of the
263           discussion period is near, then one is faced with a dilemma.
264         </p>
265         <sect1>
266           <heading>Impasse on Technical Issues</heading>
267           <p>
268             On technical issues, popularity is a bad way of arriving
269             at conclusions. Hopefully, the policy group would arrive
270             at a consensus on their own. If that fails to happen, or
271             if there is a formal objection raised on the issue, and
272             the issue is a technical one, then the technical committee
273             may be consulted. This should be a rare occurrence. </p>
274         </sect1>
275         <sect1>
276           <heading>Non Technical and Subjective Disagreements</heading>
277           <p>
278             However, if the issue is non-technical and subjective,
279             then a vote of the developers may be taken (USENET voting
280             software should be available all over the place, right?),
281             and a super-majority of 75% is needed to carry the
282             amendment through. Failing the super-majority, the issue
283             should be shelved. It may be re-submitted as a a fresh
284             proposal after a suitable cooling off period (which should
285             be no less than a month, typically three months being
286             desirable, unless there are significant new
287             developments). (Demote bug, if the BTS is being used)</p>
288           <p>
289             If the issue raised is especially contentious, or is
290             deemed to be suitable for review by the full set of
291             developers, then four or more developers can call for a
292             hold on the proposal, and move to send the proposal to the
293             larger developer body as a General
294             Resolution. <strong>Note:</strong> The constitution may
295             have additional requirements for submitting a General
296             Resolution, for example, a minimum number of seconders,
297             etc.
298           </p>
299         </sect1>
300       </sect>
301     </chapt>
302
303   </book>
304 </debiandoc>