]> git.donarmstrong.com Git - debian/debian-policy.git/blob - proposal.sgml
Incorporated comments from the list
[debian/debian-policy.git] / proposal.sgml
1 <!doctype debiandoc public "-//DebianDoc//DTD DebianDoc//EN">
2 <debiandoc>
3   <book>
4     <titlepag>
5       <title>PROPOSAL: 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 &#169; 1998 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           `<var>/usr/doc/copyright/GPL</var>'. </p>
23       </copyright>
24     </titlepag>
25     <chapt>
26       <heading>Introduction, and Administrivia</heading>
27       <p>
28         This is a proposal for creating a process through which the
29         Debian Policy documents are to be maintained and updated, it
30         sets forth the processes, and also calls for the creation of a
31         team responsible for the task of updating policy, however,
32         this team does not act as author or editor of Policy itself,
33         that is the task of the Debian Policy mailing list.
34       </p>
35       <p>
36         It should also be pointed out that this proposal itself doess
37         not call for the modificxation of the Policy documents
38         themselves. I would rather not rush into anything as serious
39         as modification of the formal policy documents themselves, and
40         I suspect that we would learn and refine this process in
41         practice. I would rather that the formal modifications be
42         deferred until after the kinks of this process have been
43         worked out.
44       </p>
45       <p>
46         Another thing that bears mentioning is that this proposal is
47         only for the every day routine functioning of the policy
48         group. Traditionally, the policy group, under the aegis of the
49         Policy editor, worked on the basis of a consensus derived in
50         the group. This proposal merely removes the need of a
51         dedicated policy editor, and passes the debian packages that
52         contain the policy into the hands of a few people who no
53         longer exercise editorial control, and, paying homage to our
54         growth, relaxes the requirement for a consensus.
55       </p>
56       <p>
57         This is not supposed to change the way the group works, except
58         in minor detail. There are some policy changes are light
59         weight and can be decided upon within the policy group, by
60         near consensus.  In most day-to-day cases, the Policy group
61         should and must be able to conduct Policy discussions and
62         amendments without the intervention of the Technical Committee
63         or other Constitutional issues.  Only in cases of extreme
64         dispute (formal objection) should the intervention of
65         Constitutional bodies come into play. In any other situation,
66         the Policy group should be able to conduct business
67         unfettered.  This is the only way we can continue to improve
68         Debian.
69       </p>
70       <p>
71         <em>In the following, the term developer refers to registered
72           Debian developers.</em>
73       </p>
74       <p>A copy of this document should also be found at <url
75       id="http://master.debian.org/%7Esrivasta/policy/"></p>
76       <sect>
77         <heading>Deadline for tabling the discussion</heading>
78         <p>       
79           I decided to use the suggested "usual" period of two weeks
80           for this proposal. Therefore, this proposal needs to be
81           acted upon before August the 22nd, 1998.
82         </p>
83       </sect>
84       <sect>
85         <heading>People Seconding the Proposal</heading>
86         <p>     
87           Well, since Michael Alan Dorman, Phil Hands, and Richard
88           Braakman have volunteered to serve on the policy maintainer
89           team, I think they have no objection to being
90           seconds.
91           <enumlist>
92             <item>
93               <p>Michael Alan Dorman <email>mdorman@debian.org</email></p>
94             </item>
95             <item>
96               <p>Richard Braakman <email>dark@xs4all.nl</email></p>
97             </item>
98             <item>
99               <p>Philip Hands <email>phil@hands.com</email></p>
100             </item>
101           </enumlist>
102         </p>
103       </sect>
104     </chapt>
105     <chapt>
106       <heading>Archives and Personnel</heading>
107       <sect>
108         <heading>The policy maintainers team</heading>
109         <p>
110           I propose we select/install a group of people who have
111           access to the CVS repository for the Policy documents;
112           however, this set of people behave more like maintainers
113           rather than authors/editors. This group does not create
114           policy, nor does it exercise editorial control, Policy is
115           decided "upstream".  The group that decides on policy should
116           be the group of developers on the Debian-policy mailing
117           lists, which is how it was always done; so the group of
118           policy maintainers have no real power over policy. Since
119           they would have access to the CVS repository I guess it is
120           desirable that the people so appointed be ``mature'',
121           however that is determined.
122         </p>
123         <p>
124           I think that since the policy maintainers have no special
125           powers, there is no need to restrict their participation in
126           the discussion. We do need to have at least 4-5 people on
127           the job, preferably closer to 8, so that policy does not
128           languish when any maintainer goes missing (we do need
129           vacations, you know, once in a while), and since little
130           creative power is vested in the maintainers, we do not need
131           a central control. And the archives of the list can be used
132           as a record of the action decided upon even if all
133           maintainers are away at some time.
134         </p>
135       </sect>
136       <sect>
137         <heading>The CVS Repository</heading>
138         <p>
139           There should be a repository set up on
140           <tt>cvs.debian.org</tt> for this, with the people on the
141           policy maintainer team having write access to it. 
142         </p>
143         <p>
144           The repository should contain all the packages under the
145           control of the team, and also should have an area where the
146           weekly status document is kept; once the document is under
147           CVS, it should be a simple matter to script exporting the
148           document out to a place where the web server can serve it,
149           as well as create the weekly posting to
150           <tt>debian-policy</tt> and <tt>debian-devel</tt> mailing
151           lists. This document could also be kept under CVS then.</p>
152       </sect>
153     </chapt>
154     <chapt>
155       <heading>Procedures and Processes</heading>
156       <sect>
157         <heading>Proposing amendments to the Policy</heading>
158         <p>
159           Unlike before, when the policy editor gathered in issues
160           which, in his view, were candidates for inclusion in policy,
161           I propose that issues are brought up in the policy group,
162           and, if the initial discussion warrants it, any developer,
163           with at least two(?) seconds can formally propose as a
164           policy amendment.
165         </p>
166         <p>
167           The rationale behind the requirement for seconders is that
168           it would<enumlist>
169             <item>
170               <p>
171                 Encourage people to test the waters on the policy
172                 mailing list, and this could help create an proposal
173                 with a better chance of success</p>
174             </item>
175             <item>
176               <p>
177                 Prevent frivolous or ill conceived proposals from
178                 wasting peoples time (If the proposal does not even
179                 convince two developers, surely this is not ready for
180                 inclusion in Policy?)</p>
181             </item>
182           </enumlist>
183         </p>
184         <p>
185           The whole discussion process is meant to be light weight; If
186           you wish the proposals to be amended, talk to the proposer,
187           and get the amendment in. Or else, post an alternative, and
188           let the  group decide which one is better.
189         </p>
190         <p>
191           If the process gets very contentous, and needs something
192           like votes on amendments and withdrawl of proposal, then
193           this is not the correct forum for this, and the procedures
194           outlied in the constitution should be followed.
195         </p>
196         <p>
197           This document is not suppoed to supplant the processes
198           outlined in the constitution, nor is it an end run around
199           them.
200         </p>
201         <sect1>
202           <heading>Notifications and Status Reports</heading>
203           <p>
204             Periodically, possibly weekly, a summary of current policy
205             topics can be posted to the Developers mailing list, as
206             well as to the policy mailing list. Since the BTS is used
207             for keeping track of policy amendments, the list of
208             current amendments shall always be on the web.</p>
209           <p>
210             Amendments to policy that have been accepted by the policy
211             group shall also be part of the notification. (recently
212             resolved bugs)
213           </p>
214         </sect1>
215       </sect>
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 devolve into endless arguments. In order to get
221           away from the debating society aspect, at the time of the
222           formal proposal, a deadline can be set (probably by the
223           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 s 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. </p>
246         </sect1>
247       </sect>
248       <sect>
249         <heading>Deadlock resolution</heading>
250         <p>
251           Formerly, arriving at a consensus was the only way to amend
252           Policy. That worked well when the Project was small,
253           however, we have apparently grown out of that phase, and even
254           the policy mailing list has grown more fractious than in the
255           days of yore. We now need a formal process of deadlock
256           resolution, and we need to recognize that on non-technical
257           issues a small minority should not always hold up deployment
258           of policy.</p>
259         <p>
260           If the issue raised is especially contentous, or is deemed
261           to be suitable for review by the full set of developers,
262           then four or more developers can call for a hold on the
263           proposal, and move to send the proposal to the larger
264           developer body as a General
265           Resolution. <strong>Note:</strong> The constitution may have
266           additional requirements for submitting a General Resolution,
267           for example, a minimum number of seconders, etc.
268         </p>
269         <p>
270           If a consensus is not reached, (or if someone submits a
271           formal objection to the proposal) and the end of the
272           discussion period is near, then one is faced with a dilemma.
273         </p>
274         <sect1>
275           <heading>Impasse on Technical Issues</heading>
276           <p>
277             On technical issues, popularity is a bad way of arriving
278             at conclusions. Hopefully, the policy group would arrive
279             at a consensus on their own. If that fails to happen, or
280             if there is a formal objection raised on the issue, and
281             the issue is a technical one, then the technical committee
282             may be consulted. This should be a rare occurrence. </p>
283         </sect1>
284         <sect1>
285           <heading>Non Technical and Subjective Disagreements</heading>
286           <p>
287             However, if the issue is non-technical and subjective,
288             then a vote of the developers may be taken (USENET voting
289             software should be available all over the place, right?);
290             and a super-majority of 75% is needed to carry the
291             amendment through. Failing the super-majority, the issue
292             should be shelved. It may be re-submitted as a a fresh
293             proposal after a suitable cooling off period (which should
294             be no less than a month, typically three months being
295             desirable, unless there are significant new
296             developments). (Demote bug, if the BTS is being used)</p>
297         </sect1>
298       </sect>
299       <sect>
300         <heading>Using the Bug Tracking System</heading>
301         <p>
302           A fascinating sub proposal has been that we use the bug
303           tracking system to track policy amendments in progress. If
304           this is used, we may initiate discussions in the policy
305           group by filing wish-list bugs (note: this should be open to
306           anyone at all) This simplies how me manage and track open
307           amendments and issues.  I think both retitling and the
308           severity of the bugs can and should be used.</p>
309         <p>
310           <taglist>
311             <tag>Issue raised</tag>
312             <item>
313               <p>
314                 wishlist bug opened in BTS, with a subject of
315                 "[PROPOSED] ..."
316               </p>
317             </item>
318             <tag>Seconds</tag>
319             <item>
320               <p>
321                 developers may second the issue by emailing "seconded"
322                 to the BTS. (Issue: what if the so called seconder is
323                 not a registered Debian developer?)
324               </p>
325             </item>
326             <tag>Amendment</tag>
327             <item>
328               <p>
329                 when a propsed issue becomes a formal amendment, the
330                 bug severity is raised to "normal" and the bug is
331                 retitled to "[AMENDMENT DD/MM/YYY] ...".  Actually it
332                 might be better to close the proposal and reopen so
333                 the bug date reflects when the clock starts ticking on
334                 the bug; in which case the bug could simply be
335                 retitled "[AMENDMENT] ...".
336               </p>
337             </item>
338             <tag>Accepted</tag>
339             <item>
340               <p>
341                 if the amendment is accepted, the bug is marked
342                 forwarded, until it is actually integrated into Policy
343                 and uploaded and moved into the archive, at which time
344                 the bug is retitled "[ACCEPTED]..." and closed.
345               </p>
346             </item>
347             <tag>Rejected</tag>
348             <item>
349               <p>
350                 if the amendment is closed, it is retitled as
351                 "[REJECTED] ..." and marked as closed
352               </p>
353             </item>
354             <tag>Deadlocked</tag>
355             <item>
356               <p>
357                 if the amendment is deadlocked, it is marked as 
358                 "[DEADLOCKED] ...",
359               </p>
360             </item>
361           </taglist>
362         </p>
363         <p>
364           I think that the Policy is critical enough for the project
365           that any real flaws in the policy be automatically be deemed
366           important bugs, unless they affect release management.</p>
367       </sect>
368     </chapt>
369   </book>
370 </debiandoc>