From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id uK3jKaaJcWbbgQAAe85BDQ:P1 (envelope-from ) for ; Tue, 18 Jun 2024 13:20:38 +0000 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id uK3jKaaJcWbbgQAAe85BDQ (envelope-from ) for ; Tue, 18 Jun 2024 15:20:38 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20230601 header.b=jplIdaOj; spf=pass (aspmx1.migadu.com: domain of "bug-mumi-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-mumi-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1718716838; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=Xm5Ad6f5/svGnydkxXaNt/MgXbtuvKP5GWctdU+wWS8=; b=BsOSacSBke8W9cid/nMyHcAYM6uFyOEQVcMcI4OhWFj0Oxw95SuFL7d+jPWnrmWkFxtL+5 sAz+cpxQ9HlucA2CinsHHjiKEc3kF289BOLKLVS9u+sZIyOKMWBeROZA2wQK6NW2cUyXg/ pMN/DB1bVCKqrbb6f+9egU9k6JEyD+2KTFQFPBueGq27uXaug5rZ6ToT7NSk1wALUMFV2U hIHIzMk25MtEWskuyfC/xJwmIIOiD7kaZanhkBvSUjC4UVq35o8bl5SyTJAd5zb+yRVHl9 iMaF/rkER/E8aLTwRanXhmqA46/55dCDQLDrBlbyrWdqKdaaGR2xPfkMLjNKLA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20230601 header.b=jplIdaOj; spf=pass (aspmx1.migadu.com: domain of "bug-mumi-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-mumi-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Seal: i=1; s=key1; d=yhetil.org; t=1718716838; a=rsa-sha256; cv=none; b=PSTQ7kSKAsEAkPc4jdXljPmn3RPBzn3ekkXBRqNa+pbAxzc9gPP2bfa+UqAEmWwZxpTxlt mvq3KXrihvbnXuSND54BJivFQH0vrCf/s/Q/yWyPtYDiI8jdCy7XacjSaKrBAFXUautagV MVMpDJPocLmo+gUXMkUEHn+u5ov7q2E/iG5g9og39K7AC2uNApmZbK1wHV6YGc+m0UmV+I dS5n9WJdFVndNLYQMaCipJ4DEDARq+wcLgRac7bRLqtvPjEERX22Y+msSbzcauTOfXgxlK BUp2ehSCix2rbpXfuMFxSSMNssHRHsxILDCKL1484El7dHyd77DRzFhldMpz9Q== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 5B08D72E9E for ; Tue, 18 Jun 2024 15:20:38 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sJYl8-0007MZ-Lm; Tue, 18 Jun 2024 09:20:26 -0400 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 1sJQJA-0005VG-4a for bug-mumi@gnu.org; Tue, 18 Jun 2024 00:19:00 -0400 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 1sJQJ9-0004ze-TC for bug-mumi@gnu.org; Tue, 18 Jun 2024 00:18:59 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sJQJC-0001rh-8C for bug-mumi@gnu.org; Tue, 18 Jun 2024 00:19:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#71622: mumi CLI client features for review checklists Resent-From: "Suhail Singh" Original-Sender: "Debbugs-submit" Resent-CC: bug-mumi@gnu.org Resent-Date: Tue, 18 Jun 2024 04:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 71622 X-GNU-PR-Package: mumi X-GNU-PR-Keywords: To: Arun Isaac Cc: 71622@debbugs.gnu.org, Ludovic =?UTF-8?Q?Court=C3=A8s?= , jgart Received: via spool by 71622-submit@debbugs.gnu.org id=B71622.17186842827089 (code B ref 71622); Tue, 18 Jun 2024 04:19:02 +0000 Received: (at 71622) by debbugs.gnu.org; 18 Jun 2024 04:18:02 +0000 Received: from localhost ([127.0.0.1]:39072 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sJQID-0001q3-PD for submit@debbugs.gnu.org; Tue, 18 Jun 2024 00:18:02 -0400 Received: from mail-qt1-f195.google.com ([209.85.160.195]:41186) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sJQIC-0001pm-DV for 71622@debbugs.gnu.org; Tue, 18 Jun 2024 00:18:01 -0400 Received: by mail-qt1-f195.google.com with SMTP id d75a77b69052e-440621418aaso4472421cf.0 for <71622@debbugs.gnu.org>; Mon, 17 Jun 2024 21:17:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718684212; x=1719289012; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:message-id:date:user-agent :references:in-reply-to:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Xm5Ad6f5/svGnydkxXaNt/MgXbtuvKP5GWctdU+wWS8=; b=jplIdaOj0Ujw4ZOiaUY2nTtE9Bk/IOxOTa0prz8up6qUch9727xQAPJ84RrrFMgqao Wd5zN+0zHoVeVqs+rLMCrQ+MA2qqISsQTFWm2Il8eExv9ArsoL134F71jX4mXSW9mGUK DFtOx0CSJ+WQKtrh+KM9BglsIZyy7Cuk/5Nvuw1/NXx4OuaEgd25HwwFvE3HqzOkgaVT 5V+CzyBwFNpYcyASZGCdKJDAlobdjaYA4RiDg49cmkFRKTu/yRYqpVCg5pRUZ3IGfdkA i4q4gJVT8AjvT4nAEcZ8X3lZhcQq+OZXrzdJtRNo83yW+l4gwG45r01B6kDqnYRzP/Ti YgJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718684212; x=1719289012; h=content-transfer-encoding:mime-version:message-id:date:user-agent :references:in-reply-to:subject:cc:to:from:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Xm5Ad6f5/svGnydkxXaNt/MgXbtuvKP5GWctdU+wWS8=; b=WBD4RyCnIW9xQzgo0vg3r8jXp4qMfrvzLroDIhoYKJ2zwCGdrgTAs4D7xZh0DJ1RWM yJ57FrdIHgmjrKQyoMJp1us0brHVvDv2zA5xsHFB1+SJRi14HVc58FPYoo0azd0vtwe0 GwL80E+1QpKTyqQG+JgHf56OGqwCJFeJgZSkERXjEw1c7D1Vn5dvXGaO58eZ9SnIAuDf Kxkl+yNyOJlOCTUJkw+q1KJ1bqtXB7Agg+iyJNVWYzWURaXR8mHKW7FPA8yq0+0jui8N mU1TFBTs5b2ae1y+ZI+wt67corMOPdHF+5Nn+rjmCQSmshqGQM4WwbpV6dySGBIz6Svh OD6g== X-Gm-Message-State: AOJu0Yx9GC0ySAYhqz0eeCj/bqNKu2A6kCBnZA4MHCOPxUDiziaA4STV IGz9glCl5yzBWTLB+XVNvqPqY8xoVB3zsLcz/x+JOLpvFXviNRDE X-Google-Smtp-Source: AGHT+IGV+qNwdPMSDH4g4y7cg33qE8sKeK2i52nC4cnQgBXXCUl18/eHbZj80CeuqN8+W0QXNX/ggA== X-Received: by 2002:a05:622a:1999:b0:440:586f:498f with SMTP id d75a77b69052e-44216bbe282mr124850801cf.6.1718684212201; Mon, 17 Jun 2024 21:16:52 -0700 (PDT) Received: from gnus (static-198-54-132-177.cust.tzulo.com. [198.54.132.177]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-441f2ffb4bbsm53058491cf.87.2024.06.17.21.16.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Jun 2024 21:16:51 -0700 (PDT) From: "Suhail Singh" In-Reply-To: <87r0cv6vj0.fsf@systemreboot.net> (Arun Isaac's message of "Mon, 17 Jun 2024 23:42:43 +0100") References: <87r0cv6vj0.fsf@systemreboot.net> User-Agent: Gnus/5.13 (Gnus v5.13) Date: Tue, 18 Jun 2024 00:16:51 -0400 Message-ID: <87o77y3mx8.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Mailman-Approved-At: Tue, 18 Jun 2024 09:20:25 -0400 X-BeenThere: bug-mumi@gnu.org List-Id: "Bug reports for GNU Guix Mumi." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-mumi-bounces+larch=yhetil.org@gnu.org Sender: bug-mumi-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Spam-Score: 2.64 X-Migadu-Queue-Id: 5B08D72E9E X-Migadu-Scanner: mx10.migadu.com X-Migadu-Spam-Score: 2.64 X-TUID: Y4mg0EgmcIAT Arun Isaac writes: > # Idea 1 > > Projects provide a review checklist in their .mumi/config. I think idea #1 can add considerable value. I'll note some opinionated observations below. > For example, something like > > ((review-checklist . (((name . good-commit-message) > (description . "Are the commit messages written we= ll?") > (tag . review-good-commit-message)) > ((name . good-synopsis-description) > (description . "Are the synopsis and description w= ritten well?") > (tag . review-good-synopsis-description)) > ((name . tests-run) > (description . "Are the package tests being run (i= f available)?") > (tag . review-tests-run)) > [=E2=80=A6])) > [=E2=80=A6]) I think the fact that the names are distinct from the actions (the tag that is to be added) is quite important. I.e., the "review-checklist" should provide a convenience around "well-defined state transitions" where the state is being recorded by usertags, but could also be extended to include issue status (open, close, owner etc). For instance as noted in : - When setting yourself as the reviewer, ensure that no-one else has set themselves as the owner. - Assuming above is true, when adding under-review tag, also add yourself as the owner. On a related note, perhaps "review-workflow" might be a better name than "review-checklist"? > When a reviewer checks one of these items (say the good-commit-message), > they run something like > $ mumi review --tick good-commit-message > and that sets the review-good-commit-message tag on the issue. It may be important that when a tag is set, that others are unset. It would help if this were possible to express via the review-checklist. For instance as noted in : There are three possible transitions after a review is completed: - Addition of reviewed-looks-good, removal of under-review . - Addition of escalated-review-request, removal of under-review . - Addition of waiting-on-contributor, removal of under-review . The user-interface (as well as the configuration) should focus on those transitions. Some transitions may indeed be simple and may only result in the addition of a single tag, whereas others may be more complex. Additionally, given the current state, only some transitions may be "sensible" and permissible, i.e., it would help to be able to express conditional/guarded transitions. > One possible downside is that this ties each project (guix, mumi, > etc.) to a single checklist. I think that that's actually a benefit. It can aid review of the transition rules for them to be in one place. > For example, what about guix patches that are not for packages? > Perhaps it is an idea to allow multiple checklists per project. One way to address this would be to have the ability to have multiple conditional "checklists" (or workflows) that are mutually exclusive and exhaustive. I.e., support for nested "checklists" in addition to guarding would be sufficient, but may not be necessary. > Another downside is that this does not provide for multiple reviewers to > review and verify each other's findings. In other words, there is no way > for two reviewers to register that they both verified something > independently. Could that be addressed by ensuring that the control messages are also cc'd to the specific issue? --=20 Suhail