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