Re: [Ietf-and-github] Mirja Kühlewind's No Objection on draft-ietf-git-using-github-05: (with COMMENT)

Martin Thomson <mt@lowentropy.net> Wed, 11 March 2020 06:50 UTC

Return-Path: <mt@lowentropy.net>
X-Original-To: ietf-and-github@ietfa.amsl.com
Delivered-To: ietf-and-github@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 57D4A3A1342; Tue, 10 Mar 2020 23:50:41 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Level:
X-Spam-Status: No, score=-2.1 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=lowentropy.net header.b=ijo25rUA; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=Hc5wzEHo
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UrYjpvT5S3P9; Tue, 10 Mar 2020 23:50:38 -0700 (PDT)
Received: from wout4-smtp.messagingengine.com (wout4-smtp.messagingengine.com [64.147.123.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A7FF33A1340; Tue, 10 Mar 2020 23:50:38 -0700 (PDT)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.west.internal (Postfix) with ESMTP id 7D87A596; Wed, 11 Mar 2020 02:50:37 -0400 (EDT)
Received: from imap2 ([10.202.2.52]) by compute2.internal (MEProxy); Wed, 11 Mar 2020 02:50:37 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lowentropy.net; h=mime-version:message-id:in-reply-to:references:date:from:to :cc:subject:content-type:content-transfer-encoding; s=fm1; bh=kn cAXyf1KOA4JM510QHkzdE77AJAdjmvrr7ESJ6k5ck=; b=ijo25rUA9ZqnDFfYY9 WuJ7dto50m1gBNQl6cFtA7ZAZ7czxGsRiHrnbSj7V003viVosaeowxNIVvti1mxb 9edhMUOM9XD+Px2/c74VgjWUFNy7I5Z3WFoA3atnS8J8/Dx5bZEfbmiv5xZ5syfw V3/mn/RExePeCA4Dt21jp37jNiYX4m7zcelyVcbckJVsGMR7sdRFCryDYXRKfKX6 DkLTLU+GUOm4mtaLJj1fAfQVZAA8ArTN2Vy882EPuAgpe9+C1xux/6jnAjriS+uY NhPI2QdZck4cOhs+sp8lhuGKo2j28Q9lA68KIlLPT4iI+YUWJfBOesJZmQEQwXsf GY6w==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=kncAXyf1KOA4JM510QHkzdE77AJAdjmvrr7ESJ6k5 ck=; b=Hc5wzEHoiyUo4hvj4S4qS5NvIWmbc9T2ZPcW9evtqmXm5GfCS3J+0qF5D CeGbB6jMbsnXCLBzdUHAFFZIUPRuyc/v/OMAqieUUyqnUxwmdDiu7RMrE+QoFh22 sY2KUUx2eVJWXSTd5dVGpuLpIOIVrgfKgNVXRX+5lYgeNSw7IIf/GAvqy3LNGWTZ Fs9XzDS/L6FtDxY44UKeFR2qMdP+aVobnyErD+PkSlH6wzICRd00HNEDLafebT+4 ITOcf4My00tFvEzzaEkwj1g8Kfk63Psi7uc9t+5ZUhoOV2pciScXEPpM3xOEOt9t zdz8B0r+qYkh+9F+WXeIDpoeCgaKQ==
X-ME-Sender: <xms:PIpoXs4D2WUv9160lMS5sR3CPozw--k4QO3LiwrrjKEWvxPBSXnxDg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedugedruddvuddguddttdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefofgggkfgjfhffhffvufgtgfesthhqredtreerjeenucfhrhhomhepfdfo rghrthhinhcuvfhhohhmshhonhdfuceomhhtsehlohifvghnthhrohhphidrnhgvtheqne cuffhomhgrihhnpehgihhthhhusgdrtghomhenucevlhhushhtvghrufhiiigvpedtnecu rfgrrhgrmhepmhgrihhlfhhrohhmpehmtheslhhofigvnhhtrhhophihrdhnvght
X-ME-Proxy: <xmx:PIpoXihU6PEtcIHq0-QfCLjx6gTjNaqbx-WXCDX4mMU_ZxOEsnVWrA> <xmx:PIpoXjlc-LsLKNJcbs6dHeTl9EjlMggQxzA9APj-yxF9WoT1ELs7Tg> <xmx:PIpoXrSIA_JJjfwzNRQpkLZ_HfZp325IP0CUFBchLgX_WDIaLto9EA> <xmx:PYpoXjPN8HpD4-Bspj3MGjVWVA878elh0rm8EhS-VQCgRlzZAZytvw>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 97DBDE00B0; Wed, 11 Mar 2020 02:50:36 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.1.7-991-g5a577d3-fmstable-20200305v3
Mime-Version: 1.0
Message-Id: <518946b5-c848-43ec-9ef1-99e9c925a20e@www.fastmail.com>
In-Reply-To: <158384439069.15427.16653271470255787018@ietfa.amsl.com>
References: <158384439069.15427.16653271470255787018@ietfa.amsl.com>
Date: Wed, 11 Mar 2020 17:50:17 +1100
From: Martin Thomson <mt@lowentropy.net>
To: Mirja Kuehlewind <ietf@kuehlewind.net>, The IESG <iesg@ietf.org>
Cc: "draft-ietf-git-using-github@ietf.org" <draft-ietf-git-using-github@ietf.org>, git-chairs@ietf.org, ietf-and-github@ietf.org, Christopher Wood <caw@heapingbits.net>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf-and-github/U03yTOWhK3L5QIsazyoT0Qug7GQ>
Subject: Re: [Ietf-and-github] Mirja Kühlewind's No Objection on draft-ietf-git-using-github-05: (with COMMENT)
X-BeenThere: ietf-and-github@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Discussion of using GitHub in IETF activities, particularly for Working Groups" <ietf-and-github.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf-and-github>, <mailto:ietf-and-github-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf-and-github/>
List-Post: <mailto:ietf-and-github@ietf.org>
List-Help: <mailto:ietf-and-github-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf-and-github>, <mailto:ietf-and-github-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 11 Mar 2020 06:50:41 -0000

Hi Mirja,

Thanks for taking the time to read through this.  I appreciate the input.

I've made some changes in https://github.com/ietf-gitwg/using-github/pull/45 but we might want to iterate on that some more.

On Tue, Mar 10, 2020, at 23:46, Mirja Kühlewind via Datatracker wrote:
> I don't really understand the relationship between this document and
> draft-ietf-git-github-wg-configuration. 

I think that document encompasses most of the stuff that I don't believe is appropriate for a BCP, so I think that the split is useful.  I think that others have addressed questions about the suitability of that document for publication.

> 1) Sec 3.2
> "...or they might create repositories for individual documents on request."
> I made a similar comment in my ballot for
> draft-ietf-git-github-wg-configuration. I think creating repos for individuals
> document is maybe not always the best option. I assume the intention here to
> not out-rule any cases where this might be okay (e.g. if a document is expectd
> to be adopted soon), however, I would rather prefer to see a recommendation to
> usually not do that as there can be many individual drafts in the groups and it
> can provide a wrong signal if repos are created for some and not others.

The intention is to not be specific.  What I have heard, from multiple Working Group chairs, is that they have allowed people to create repos for individual contributions in the organization and that they - and their contributors - have found it to be valuable.  Chairs who do this seem to be quite open about allowing anyone to request a repo.  That seems like a healthy balance.

I think that is good, because it removes any implied status involved in having a draft repo in the org.  I personally have fewer issues with moving repos than Warren does, so maybe I don't mind keeping things private until they are adopted.  Other do report challenges though.

> 2) Sec 4.1.3:
> "   Issues that have reached a resolution that has Working Group
>    consensus MUST NOT be reopened unless new information is presented."
> I do understand the intention here as it is important to make process, however,
> inline with the rest of the document and the general idea that practises can
> vary from group to group, I think this really should be a SHOULD NOT only.

This has been iterated on since after Barry's review.  Do the changes in https://github.com/ietf-gitwg/using-github/pull/43 work here?

> 3) Sec 4.2:
> "   Editors SHOULD make pull requests for all substantial changes rather
>    than committing directly to the "master" branch of the repository."
> I think this does not align well with how we work today (without GitHub). E.g.
> if a group decides to use GitHub to better track changes and maybe easily
> integrate editorial comments, but decide to have all discussion on the mailing
> list (and not use github issues), I think it would be fully okay for the
> editors just commit directly based on the consensus on the mailing list. So I
> think the important part is that substantial comments should only be committed
> with wg consensus and therefore it is a good practice to have pull requests
> first to declare consensus based on the concrete proposed edits. However, if a
> different way to declare consensus is used that's fine as well. In short, I
> think the SHOULD is to string here for the general case.

I think that it greatly improves transparency, and I want to add that WG policies could insist upon this practice, but we don't need normative force in the two statements in this paragraph.

> 4) Sec 5.3 (mostly editorial): [...]
> This text seems to apply more general to all content in section 5 and should
> maybe be moved out of section 5.3. Similarly I'm not sure if section 5.3.1 and
> 5.3.2 should actually be subsection of 5.3. The question of which issue to
> track seem rather orthogonal to the question who resolves the issue (I agree
> that this discussion does not make sense when no issue are tracked like in sec
> 5.1 but it could make sense for the mode in section 5.2)

The organization here is tricky, but I do agree that this text is generic.  I've moved the piece you quoted up to the intro to Section 5.


> 5) Sec 5.3.1:
> "The risk is that
>    design changes might not always reflect the consensus of the Working
>    Group."
> I know that happens, even without GitHub, but should ideally not be the case.
> However, I think the root cause is rather that changes were incorrectly not
> identified by the editors as requiring consensus. Maybe this can be reworded
> accordingly to not give the impression that it is okay to implement design
> changes in a working group without consensus. Actually this is a broader
> problem (independent of GitHub) because some editors, especially when they also
> have been the authors of the individual draft, often implement design changes
> first in a new version and then ask the working group for consensus. As I said
> that's a different issue but it could be good to mention that GitHub and the
> use of PRs can actually help to not use this practice but always each consensus
> first.

I've added a piece about identifying the need for consensus, that is a good addition, but I don't see anything else actionable here.  I read the text as saying pretty much what you want it to.

> 6) Sec 5.3.1:
> "... it is likely appropriate to move
>    to a more tightly controlled process."
> Maybe add something like "e.g. potentially during or after after working group
> last call".

I don't want to prompt a particular outcome by making that sort of suggestion.  I appreciate that QUIC is weird, but it isn't THAT weird.  I've had several similar experiences in a relatively short period of time with HTTP/2, TLS, ACME, and a few others.

> 7) Sec 5.3.2:
> "   Chairs might choose to manage the process of deciding which issues
>    are substantive.  For instance, chairs might reserve the ability to
>    use the "design" label to new issues (see Section 5.4.1) and to close
>    issues marked as "design".  Chairs should always allow document
>    editors to identify and address editorial issues as they see fit."
> I guess you could also use normative language here: "MAY choose to" and "Chairs
> SHOULD always allow"

I don't like normative clauses in a for example, but the latter seems good.

> 8) Sec 5.3.2:
> "   As documents mature further, explicit confirmation of technical
>    decisions with the Working Group mailing list becomes more important."
> Not sure I agree here. I know what you mean but explicit confirmation on the
> mailing list is always important. Maybe there is a way to rephrase that (or
> just remove that sentence...?)

This is really only emphasis, but I would prefer to keep it.

> 9) Sec 5.3.2:
> "   Gaining Working Group consensus about the resolution of issues can be
>    done in the abstract, with editors being permitted to capture the
>    outcome of discussions as they see fit."
> I'm actually not sure what you mean here. Can you clarify?

You can get consensus on specific language (usually in the form of a PR in this setting) or you can gain consensus on the outline of a design, without text.  In the past, we've been quite effective at the latter as well as the former.  Specific text is more concrete, but it can be better (particularly for documents in early stages) to just work out a rough outline first.

> 10) Sec 5.3.2:
> "   WGLC SHOULD be proposed as pull requests, and MUST be discussed on
>    the mailing list, and MUST have chairs explicitly confirm consensus."
> I agree with the "MUST be discussed on the mailing list" (as this is inline
> with RFC2418 e.g. 3.2 but therefore doesn't necessarily need to be normative in
> this doc) but find the other two SHOULD and MUST too strict. I don't think this
> is aligned with the process we have today in groups and we should not use this
> document to make the process more strict than it is. Especially I'm not sure
> what "chairs MUST explicitly confirm consensus" really means and it seems to be
> a requirement independent of GitHub and therefore eventually would even update
> RFC2481.

How about:

Ideally, substantive changes to documents that have passed WGLC are
proposed as pull requests, and MUST be discussed on the mailing list. Having
chairs explicitly confirm consensus on changes ensures that previous consensus
decisions are not overturned without cause.

> 11) Sec 5.4.4:
> It might be too late for this kind of input, however, as I review the document
> I'll note it here anyway. In taps we also have a "discuss" label to mark issue
> that has been discussed but need further discussion e.g. at an (interim)
> meeting. For this, one could even create a milestone to indicate at which
> meeting more discussion should take place (or when e.g. a document is
> text-ready until when text should be provided). We/the editors also did this
> for a while in taps.

We used labels like this in QUIC too.  Then we found that project boards were better for this. I think that someone suggested this during WGLC and we decided not to include it.

> 12) Section 6 seems to encourage revision only in preparation for meetings. I'm
> not sure if that is inline with our usual working practice. I mean yes in
> reality we see the draft submission deadline as forcing function for updates
> and there want to keep it but we also do encourage to rev documents more often
> and work continuously, e.g. when a mayor change was implemented or a mayor
> issue resolved. And yes this works probably better for smaller documents but
> the section seems a bit contradicting to this practice. I mean the reason that
> we see many updates just at the draft deadline is because editors assign time
> to make updates to resolve issue to match the deadline. If editors make
> continuous changes we should encourage to update more often. Maybe it could
> rather say something like: "Revisions SHOULD be submitted as I-Ds when a
> signification issue has been resolved. Editors MAY bundle multiple changes in
> one revision if updates are done in timely close coherence and SHOULD update at
> least two weeks before any meeting." However, some of this advise is actually
> not GitHub specific and might again just touch our general guidelines and as
> such update RFC2026 and RFC2418...

The intent here is to reiterate 2418 regarding session documents and to encourage routine publication of snapshots.

> 13) sec 7:
> "   Chairs MUST consider input from all discussion venues when assessing
>    consensus including GitHub, mailing lists, interim meetings, and IETF
>    meetings."
> This seems like an update to RFC2481 again... as maybe also some other notes in
> this section.

If you have concrete alternatives, I'm open to tweaking.  I think that as a restatement of existing principles, this is fine as is, but I'm sure that a different and better formulation is possible.