From patchwork Fri Jan 17 00:53:02 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Simon Tournier X-Patchwork-Id: 37092 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 8677C27BBE9; Fri, 17 Jan 2025 00:54:33 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id CFB6E27BBE2 for ; Fri, 17 Jan 2025 00:54:30 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYaci-00040Z-Be; Thu, 16 Jan 2025 19:54:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tYacc-0003zn-RB for guix-patches@gnu.org; Thu, 16 Jan 2025 19:54:03 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tYacc-0004zu-J2 for guix-patches@gnu.org; Thu, 16 Jan 2025 19:54:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:Date:References:In-Reply-To:From:To:Subject; bh=m+SuEFyCCV4Ba5vk04aKKnkOfZ0VvInNA5A8ppNWebk=; b=f59fxsS4YX6bG9X0xKPvUyYNBlpx/8HuXVUfqT9JkcoopY6C8K78ckKehrpGZG5XQYb2jAqHe7pzWlr3wXwKP/hGK1PCnDaz2Eaa2AWPQq0N3Ds6sH6u/JOi4DMcdfgSUS/YoRHzWcQVrTd1n6L8q2Vl4bn33OVej83hmsyR+i4NP+VDg/GvKNsQukEOzzjlffTVDF3DrCVnJg3Vo1a8pqjl13xTWUqLu7ZvkfbF0uzZxNEh1Rc+Mg6xoy18blyf+jfRK4tsspIpWMYivk/8u72I75d0JWPyqA6Ghqel6Z6mwU9kFj1wymTuF8BnCq9qhhePLIPfq0y3OJaQYoM01g==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tYacc-0006vR-4T for guix-patches@gnu.org; Thu, 16 Jan 2025 19:54:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#74736] [PATCH v10] Add Guix Consensus Document process Resent-From: Simon Tournier Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 17 Jan 2025 00:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74736 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 74736@debbugs.gnu.org Received: via spool by 74736-submit@debbugs.gnu.org id=B74736.173707520326567 (code B ref 74736); Fri, 17 Jan 2025 00:54:02 +0000 Received: (at 74736) by debbugs.gnu.org; 17 Jan 2025 00:53:23 +0000 Received: from localhost ([127.0.0.1]:35264 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tYabu-0006uL-6Z for submit@debbugs.gnu.org; Thu, 16 Jan 2025 19:53:23 -0500 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]:54720) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tYabq-0006u5-LH for 74736@debbugs.gnu.org; Thu, 16 Jan 2025 19:53:16 -0500 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-4361815b96cso9842165e9.1 for <74736@debbugs.gnu.org>; Thu, 16 Jan 2025 16:53:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737075188; x=1737679988; darn=debbugs.gnu.org; h=mime-version:message-id:date:references:in-reply-to:subject:to:from :from:to:cc:subject:date:message-id:reply-to; bh=m+SuEFyCCV4Ba5vk04aKKnkOfZ0VvInNA5A8ppNWebk=; b=MGnv4Mc6oaGtRDElB1VIgVajgZ9axUl2v1cbN0rUXmmz4m4kR8MJDaPL+KlAl6IolO FUVHuI+vtMsTUdv8vKyagkaMnND3vkKhWJjsXU6DxPZ02jvBQOy+4KJzdohSlGmzl3CF OVHxHa36PAhTlj9X4VkdvgNjRxBhovthHZNuf/LtETB0rbFMg101AWYp5+CNyC4uFh7d 8G6x6bg/rzm9t4BdXVfSZa70EZjX/CS2PQf2U939v7VhwGhntXiinE7hTRi657niPKuT M5UG8J81gaJK0JNxLi0wcSnIygWFVaGVFzaNL51Bj4fkXb6gboHJhyY96b3lBV35Qcs6 kqtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737075188; x=1737679988; h=mime-version:message-id:date:references:in-reply-to:subject:to:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=m+SuEFyCCV4Ba5vk04aKKnkOfZ0VvInNA5A8ppNWebk=; b=Ksl8oCqbELyqr2PtXddFWg+RKqKUYM5KwNYbXi2o4iD/6qGvNwBGcVPkhFWcaKRspj 5EwGB1XFYX4kh933F9YUxNlhxjSx0Ab48F4MfNb1Q+/gpLugnCWZ9X97Fb9GWk5Zr1sS 8X7n6kCp1wAIJ7ZlpzReR3VUvIkE4bErPATIt5bbqAgN8p5bcbTnvLF9i8JOrkwqte/o SSveALjgwoCLGuCtQ9ur+ydeMhbgs3o/FIzNg90WyEsMgfzVZGg/lxAxjWbEKvA3/d9s msWkXZyYCt7hlfPWpY5Y7tkXXO6rRUw/WctDlf6AWKuq8cxgFowAz6rrQG5XLBF++5pX XYxg== X-Gm-Message-State: AOJu0Yy29bi5KcKCveDMxNerF2E2GvrO1Pws8g5f+tocQy0aJyf/65WF raLHdqAeZX4QTL6EoMjqmFiLallOAHZWGZV39vFY8uXoDlCAzGK/PPG1qA== X-Gm-Gg: ASbGncvs2va79+CY5woMGEJ1UV2BAKFSdz9HIy7mT5lgjTYhCqU3wj3uOW5xqcc+1xn zPpSWY8m9FSNjsRh+ljOCULLLDX8ICDj3938bgDCkJUR7Hlaz4MLmeBxDEyA0lQGsrrTjZ1d9xD WKum3D+uU7rk1WNXBnTq7zYPzwoe1VehYgIUnIG4S4HyTj2P1Lr0oKzExr00n0noGqkt0vmk4c3 VTiA+3nWMy7NUulvcnV4Tj1iqNGu+aReniu5ZW8rdcSVn694qGC/g== X-Google-Smtp-Source: AGHT+IEKSd9vvzcCQo051O+SGbX1r4YWf3oPzeAxgikgFVFlwe9TuhRl8krYbDdpOmcJkzfK/6kifw== X-Received: by 2002:a05:600c:1d07:b0:436:488f:50a with SMTP id 5b1f17b1804b1-438913ef4b7mr5653485e9.17.1737075188421; Thu, 16 Jan 2025 16:53:08 -0800 (PST) Received: from lili ([2a01:e0a:59b:9120:cadd:a17:8766:e21f]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-437c753caf3sm73558385e9.38.2025.01.16.16.53.06 for <74736@debbugs.gnu.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jan 2025 16:53:07 -0800 (PST) From: Simon Tournier In-Reply-To: References: Date: Fri, 17 Jan 2025 01:53:02 +0100 Message-ID: <87h65ymfbl.fsf@gmail.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Hi, I sent v9 (Message-ID: 8734hiskwm.fsf@gmail.com) but that has not reached the list, hum?! And Hartmut sent a diff as v9, hence v10. :-) Changes compared to v8: • Changed some level for the subtitles. And added “Getting Started”. • Removed trailing dot after repository URL. • Reworded ’prospective’. • Removed redundant information about “submitted” and pointed to the dedicated section. Clarified using the term “draft”. • Replaced the term RFC by GCD. • Added a sentence about the role of “Sponsor”. And added a “Contributor” role. The idea is to rely on that term for clarifying “author” and who can discuss. But then, the term does not appear… • Add section “Channel of Communication”. • Revamped the artist view of the timeline. • Minor tweaks under “Submission Period”. • Minor tweaks under “Discussion Period”. Added a paragraph to deal with the case where “Author” and “Sponsor” vanish. • Minor tweaks under “Deliberation Period”: moved sentence; removed redundant information. • Minor tweaks under “Merging GCD”. WDYT? Cheers, simon --- -- diff -u /tmp/001-gcd-process-v8.md /tmp/001-gcd-process-v10.md --- /tmp/001-gcd-process-v8.md 2025-01-17 01:21:27.574454166 +0100 +++ /tmp/001-gcd-process-v10.md 2025-01-17 01:36:03.524561874 +0100 @@ -70,37 +70,39 @@ These day-to-day contributions remain governed by the process described by the manual in its “Contributing” chapter. -## How the Process Works +# How the Process Works + +## Getting Started 1. Clone - https://git.savannah.gnu.org/git/guix/guix-consensus-documents.git . + https://git.savannah.gnu.org/git/guix/guix-consensus-documents.git 2. Copy `000-template.md` to `XYZ-short-name.md` where `short-name` is a short descriptive name and `XYZ` is the sequence number. -3. Write your GCD following the template’s structure. The GCD must not - be prospective; it must formalize an idea and sketch a plan to - implement it, even if not all details are known. If it intends to +3. Write your GCD following the template’s structure. The GCD must + describe a concrete idea and sketch a plan to implement it, even + if not all details are known; the GCD must not be a brainstorming + session or a vague idea but a concrete proposal. If it intends to deprecate a previously-accepted GCD, it must explicitly say so. 4. Submit the GCD as a patch to `guix-patches@gnu.org`. 5. Announce your GCD at `guix-devel@gnu.org` and look for *sponsors*: one or more people who will support the GCD and participate in discussions by your side (see below). -The GCD is *submitted* once it has at least one sponsor in addition to -the author(s). See “Submission Period” below. - -Submitted GCD is announced at `info-guix@gnu.org`. +The GCD is now in “draft” state and will be *submitted* once it has at least +one sponsor in addition to the author(s). See “Submission Period” below. ## Roles - - An *author* is the person or one of the persons submitting the RFC. + - An *author* is the person or one of the persons submitting the GCD. Authors bear the responsibility to carry out the process to its conclusion. - A *sponsor* is a contributor who, during the submission period (see below), informs the author(s) that they would like to support the - RFC by participating in discussions, providing constructive comments + GCD by participating in discussions, providing constructive comments to help the author(s), soliciting opinions, and acting as - timekeepers. + timekeepers. As a sponsor, please make sure that all have the time + and space for expressing their comments. Sponsors should be contributors who consider being sufficiently familiar with the project’s practices; hence it is recommended, but @@ -111,6 +113,20 @@ members is maintained in the file `etc/teams.scm` in the Guix repository. + - A *contributor* is a person contributing to Guix either with code, + translation, reviewing, etc. and more broadly any person feeling part + of the Guix community. + +## Channels of Communication + + - The *draft* is sent to `guix-devel@gnu.org`. + + - Once *submitted*, the GCD is announced to `info-guix@gnu.org` and discussed + using the assigned issue number. + + - The *final* document is published to `info-guix@gnu.org` and the + deliberating replies are sent to the assigned issue number. + ## Timeline A GCD must follow the process illustrated by the diagram below, @@ -118,49 +134,60 @@ ``` - +-----------+ - +- - - - - - ->| Withdrawn |<----------------------+ - : +-----------+ | - : ^ | - : : | -+--------------------+ +---------------------+ +---------------------+ -| Submission Period | | Discussion Period | | Deliberation Period | -| (up to 7 days) |-->| (30–60 days) |-->| (14 days) | -+--------------------+ +---------------------+ +---------------------+ - | - | + draft submitted final ++--------------------+ +---------------------+ +---------------------+ +| Submission Period | | Discussion Period | | Deliberation Period | +| (up to 7 days) |-X->| (30–60 days) |-->| (14 days) | ++--------------------+ : +---------------------+ +---------------------+ + : : : | + : v : | + : canceled v | + : o-----------o | + +- - - - - - - - ->| Withdrawn |<----------------- X + o-----------o | V - +----------+ - | Accepted | - +----------+ + o----------o + | Accepted | + o----------o ``` The subsections below detail the various periods and their duration. ### Submission Period (up to 7 days) -Anyone can author and submit a GCD as a regular patch and look for -sponsors (see below). The GCD is *submitted* once one or more people +Anyone can author and propose a GCD as a regular patch and look for +sponsors (see “Roles”). The GCD is *submitted* once one or more people have volunteered to be sponsors by publicly replying “I sponsor”; it is -canceled if no sponsor could be found during that period. The next step +*canceled* if no sponsor could be found during that period. The next step is the *discussion period*. Authors may withdraw their GCD at any time; they can resubmit it again -later, possibly under a new GCD number. +later (under a new GCD number). ### Discussion Period (at least 30 days, up to 60 days) -Once submitted, the GCD is publicly discussed; authors are encouraged to -publish updated versions incorporating feedback during the discussion. +Once submitted, the GCD is publicly discussed by all the members of the +community. Authors are encouraged to publish updated versions +incorporating feedback during the discussion; members are encouraged to +share a summary of their main concerns or opposition, if any, for being +included under section “Open Issues” in the document. When deemed appropriate, between 30 days and 60 days after the start of the discussion period, the author(s) may publish a final version and announce the start of the *deliberation period*. +If after 60 days, a final version is not yet published, then a grace period +of 14 days is granted. Finally the GCD is considered as *stale* and the last +update is picked for the final version. + ### Deliberation Period (14 days) -All team members can participate in deliberation and are encouraged to -do so. +Deliberation aims at consolidating consensus; see “Decision Making” +below. + +The *deliberation period* starts when the authors publish a final version of +the GCD at `info-guix@gnu.org`. Anyone who is a team member is a +deliberating member and is encouraged to contribute to the deliberation. Once the final version is published, team members have 14 days to send one of the following replies on the patch-tracking entry of the GCD: @@ -172,16 +199,9 @@ proposal. A team member sending this reply should have made constructive comments during the discussion period. -The GCD is *accepted* if (1) at least 25% of all team members send a -reply, and (2) no one disapproves. In other cases, the GCD is -*withdrawn*. - -Deliberation aims at consolidating consensus; see “Decision Making” -below. - -Anyone who is a team member is a deliberating member and is encouraged -to contribute to the deliberation. Team members are defined by the -file etc/teams.scm (see “Teams” in the manual). +The GCD is *accepted* if (1) at least 25% of all team members–as of +the start of the “Deliberation Period”–send a reply, and (2) no one +disapproves. In other cases, the GCD is *withdrawn*. GCD acceptance is not a rubber stamp; in particular, it does not mean the proposal will effectively be implemented, but it does mean that all @@ -206,16 +226,16 @@ details, you are encouraged to read . -## Merging Final GCDs +## Merging GCD -Whether it is accepted or withdrawn, a committer merges the final GCD -following these steps: +Whether it is accepted or withdrawn, a person who has commit permission +to the GCD repository merges the GCD following these steps: 1. filling in the remaining metadata in the GCD headers (changing the `status` to `accepted` or `withdrawn`; adding the URL of the discussion in the `discussion` header; updating the `date` header; if previously-accepted GCDs are deprecated by this new GCD, change the - `status` header accordingly); + `status` header accordingly with `deprecated`); 2. committing everything; 3. announcing the publication of the GCD. Diff finished. Fri Jan 17 01:36:38 2025