Re: [yang-doctors] [IANA #1289473] Revision statements in IANA-maintained YANG modules

Kent Watsen <kent+ietf@watsen.net> Mon, 11 March 2024 21:31 UTC

Return-Path: <0100018e2f6dbce4-85fb7b25-c2a7-4c26-bc81-bada63b8c487-000000@amazonses.watsen.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AF1E8C14F70C for <yang-doctors@ietfa.amsl.com>; Mon, 11 Mar 2024 14:31:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.904
X-Spam-Level:
X-Spam-Status: No, score=-1.904 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=amazonses.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6uw6CNlyAk8L for <yang-doctors@ietfa.amsl.com>; Mon, 11 Mar 2024 14:31:46 -0700 (PDT)
Received: from a8-33.smtp-out.amazonses.com (a8-33.smtp-out.amazonses.com [54.240.8.33]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D35E3C14F5E9 for <yang-doctors@ietf.org>; Mon, 11 Mar 2024 14:31:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=ug7nbtf4gccmlpwj322ax3p6ow6yfsug; d=amazonses.com; t=1710192704; h=From:Message-Id:Content-Type:Mime-Version:Subject:Date:In-Reply-To:Cc:To:References:Feedback-ID; bh=ZiqcwtXUL0/74gOyMfdmLW+1E9nyfnlcBzsqxg6zmnM=; b=uR9OT9LYld76dpMSe19m9Er8dLNK0NZPXlEn20kgw0tZP27Lsr471lHLB0e6oQ4c QQp+JqS3aJ8/z0kHgrYI764ttOJdwGGaSMfyFQQgHMLfrxPfTb5g4AoR1U2kBqAMVBl 5WN4YgDiiYLZaFPZuPA3Q1OF+0cqbi00vWkWWmfY=
From: Kent Watsen <kent+ietf@watsen.net>
Message-ID: <0100018e2f6dbce4-85fb7b25-c2a7-4c26-bc81-bada63b8c487-000000@email.amazonses.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_0E021C91-0FEB-4ACB-80EC-3F23610276E5"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.400.31\))
Date: Mon, 11 Mar 2024 21:31:44 +0000
In-Reply-To: <AA51BCB6-EE65-4349-B1C5-85353BAAE657@gmail.com>
Cc: YANG Doctors <yang-doctors@ietf.org>, iana-issues@iana.org
To: Mahesh Jethanandani <mjethanandani@gmail.com>
References: <RT-Ticket-1289473@icann.org> <rt-5.0.3-866735-1709871684-909.1289473-37-0@icann.org> <0100018e1e0366b7-31bae558-303e-470d-b510-98401e63ea9c-000000@email.amazonses.com> <rt-5.0.3-914242-1709900546-350.1289473-37-0@icann.org> <rt-5.0.3-939729-1709923874-1278.1289473-37-0@icann.org> <AA51BCB6-EE65-4349-B1C5-85353BAAE657@gmail.com>
X-Mailer: Apple Mail (2.3774.400.31)
Feedback-ID: 1.us-east-1.DKmIRZFhhsBhtmFMNikgwZUWVrODEw9qVcPhqJEI2DA=:AmazonSES
X-SES-Outgoing: 2024.03.11-54.240.8.33
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/LJ3FKOCIK-hoZLBE9F189V3SIdQ>
Subject: Re: [yang-doctors] [IANA #1289473] Revision statements in IANA-maintained YANG modules
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Email list of the yang-doctors directorate <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 11 Mar 2024 21:31:49 -0000

Hi Mahesh, Amanda,


> On Mar 8, 2024, at 8:12 PM, Mahesh Jethanandani <mjethanandani@gmail.com> wrote:
> 
> Hi Amanda, please wait on further instructions before implementing anything new at this time.
> 
> I went back to the thread that Amanda started in November, and here is a summary of discussion we have had. Cutting and pasting some of the text from earlier threads as needed.
> 
> 1. When an IANA module is first published on IANA’s web site, the IANA module is copied as-is from the RFC to form the original version. Subsequent updates, should result in:
> 
> 1a. Adding a “revision” statement at the top level that contains a “description" statement as discussed in 2.
> 1b. Addition of a “reference” statement in the same “revision” statement as discussed in 3.
> 1c. The description of the module should be updated from:
> 
>     This version of this YANG module is part of RFC XXXX; see
>     the RFC itself for full legal notices.”;
> 
>      to say:
> 
>     This original version of this YANG module is part of RFC XXXX; see
>     the RFC itself for full legal notices.";
> 
> 2. IANA will ask the requestor to provide a “description” statement to be inserted as part of the update to the “revision” statement. That “description" statement may or may not include a RFC number.
> 
> 3. Cutting and pasting Martin’s response here.
> 
>>  RFC 8407 currently says:
>> 
>>   A "revision" statement MUST be present for each published version of
>>   the module.  The "revision" statement MUST have a "reference"
>>   substatement.  It MUST identify the published document that contains
>>   the module.
>> 
> 
> [My own addition] In the case there is an RFC that updates the IANA module, that RFC should be used in the “reference" statement.
> 
>> 
>> In this case, there really isn't any "published document" - the module
>> is published directly on the web.  One option could be to add the URL
>> to the module in "reference".  The motivation for the rule is:
>> 
>>   Modules are often extracted from their original
>>   documents, and it is useful for developers and operators to know how
>>   to find the original source document in a consistent manner.
>> 
>> So the URL would help for this.
> 
> In light of the fact what Amanda stated, that the IANA ticket system is not visible to outsiders, it makes sense to go with Martin’s proposal. Does anyone strongly disagree. In other words. 
> 
> Is it agreed that if IANA registers a codepoint in a First Come First Served or Expert Review range, and there is no associated specification, IANA will list a URL in the reference statement. It would for example use https://www.iana.org/assignments/yang-parameters/iana-dns-class-rr-type@2023-11-08.yang.

I don’t agree.  

As I wrote before, I never want to see a URL to https://www.iana.org/assignments/yang-parameters in the “reference”.   To which, Martin said my proposal seemed better and you wrote "I like Kent’s idea of linking this somehow to the request that resulted in the update to the module, however that comes to IANA. If it comes in the form of a ticket, then hopefully that ticket explains who made the request, why they made the request etc. In other words, some form of traceability."

Just because Amanda explains their ticketing system is private doesn’t mean we have to throw out the whole idea.   Amanda’s proposal to have "[IANA #123456]: iana@iana.org <mailto:iana@iana.org>” would be fine, IMO.

That said, it seems odd that the authoritative reference is something the IETF has to discuss at all.  It is wholly in IANA’s court.  The YANG-module for any underlying IANA-maintained registry should get all its data from that registry.  Never should IANA have to create a secondary reference that isn’t in the underlying registry.  Stated differently, I don’t think rfc8407bis should have recommendations that exceed what is possible using just the data in the underlying registry.

Case in point, [1] points to [2] and [3] as examples of a First Come, First Served registries.  In both cases there is a column called “Reference” that usually points to an RFC, but sometimes points to a “Contact”, which is effectively a name and an email address.
[1] https://datatracker.ietf.org/doc/html/rfc8126#section-4.4
[2] https://www.iana.org/assignments/sasl-mechanisms/sasl-mechanisms.xhtml
[3] https://www.iana.org/assignments/ldap-parameters/ldap-parameters.xhtml


IMO, these are not great “references”, such that I recommend IANA institute a global update for how non-RFC references are tracked, but that is out-of-scope to rfc8407bis.  


With this in mind, perhaps the “revision” statement might be like this?

	If the reference a via an RFC
	======================
	revision 2024-03-11 {
		description
			“Added the FOO_BAR algorithms per RFC 1234"
		reference 
			“RFC 1234: Additional Foo Bar Algorithms.”

	If the reference is via an individual
	==========================
	revision 2024-03-11 {
		description
			“Added the FOO_BAR algorithms per request by John Smith."
		reference 
			“John Smith: john@example.com”

	If the reference is unknown
	=====================
	revision 2024-03-11 {
		description
			“Added the FOO_BAR algorithms."
		reference 
			“Unknown: The underlying foo-bar registry does not track this information.”


Thoughts?

Kent



> If agreed, we will ask Med to update 8407bis to reflect this.
> 
> Thanks.
> 
> 
>> On Mar 8, 2024, at 10:51 AM, Amanda Baber via RT <iana-issues@iana.org <mailto:iana-issues@iana.org>> wrote:
>> 
>> Hi Kent,
>> 
>> Sorry, I didn't make this clear: tickets (and the IANA github) aren't public. They require an IANA login. That's why, if you want to use the ticket number, I was suggesting something like
>> 
>> reference
>> [IANA #123456]: iana@iana.org <mailto:iana@iana.org>
>> 
>> instead of 
>> 
>> reference:
>> https://iana.org/tickets/123456 [not the actual link]
>> 
>> That way someone could contact us and refer to ticket 123456, which we could then use to find the ticket quickly. 
>> 
>> It should be noted, though, that in addition to not giving the requester direct access, all this does for IANA is save a minute or two. We can also search the ticket system for the name of the registration or the date it was completed, or we can look at the commit message for the file that was created on that date.
>> 
>>> From our perspective, it might be more useful to link to, e.g., https://www.iana.org/assignments/address-family-numbers for an Address Family Number registration, which would allow the reader to find the contact information for John Smith directly via the registration's reference field.
>> 
>>> It was my assumption that all existing registrations would be
>>> grandfathered together under a single top-level “revision” statement,
>>> pointing to the RFC that created the IANA-defined YANG module (e.g.,
>>> my two drafts going thru the IESG right now).
>> 
>> That's our understanding as well.
>> 
>>> What we’re discussing here/now is how IANA sets the top-level
>>> “revision” statement for all subsequent updates to the YANG module,
>>> made by IANA.
>> 
>> That's our understanding too.
>> 
>>>> 2) If we use the submitter's description, would it be useful for us
>>>> to automatically prepend something like "Added value 47."?
>>> 
>>> Yes.  In general, it would be helpful towards making the top-level
>>> “revision” statement’s “description” better at explaining *why* the
>>> module was updated, to include whatever tid-bits of information
>>> possible.
>>> 
>>> That said, I suggest using discretion, as sometimes it may be
>>> overwhelming to list out, e.g., a family of updates, in which case, it
>>> might be better for the description to refer to the family as a whole.
>>> 
>> <snip>
>>> 
>>>> 4) For the submitter-provided description, could a document like
>>>> 8407bis provide examples in this style that we can refer Expert
>>>> Review/FCFS requesters to? If not, would it be possible to provide
>>>> something for our internal records? At the moment I'm not sure we
>>>> have any particularly verbose ones (outside of the initial
>>>> revisions).
>>>> 
>>>> Or would this just be the description that we entered in the
>>>> registry's name/description field?
>>> 
>>> We’re possibly overthinking this  :/
>> 
>> I'm asking for examples because applicants (for various types of registrations) don't always know what kind of answers they're expected to provide. In this case, we wouldn't be able to tell them, and would have to put the registration on hold while we asked the YANG doctors.
>> 
>>> For updates to the underlying registry that did NOT come from a
>>> normative document, no user-supplied description is needed.  The
>>> important thing to capture is:
>>> 
>>> 1) *why* is the module being updated
>>>       - this is in the “description” statement
>>> 
>>> 2) *where* is the proof that the *why* occurred
>>>      - this is in the “revision” statement
>> 
>> If descriptions need to be captured for some revision statements and not for others, and this can't be recorded in an RFC (as in 8407bis or a similar document rather than a document that creates a specific module), we need clear instructions from the group. 
>> 
>> IANA maintains more than 3000 registries, and won't always have the same staff working in the IETF area, so special instructions need to be recorded, if only in our internal wiki. If the instructions are coming informally, from correspondence, we'd also like them to be validated by the AD on the list.
>> 
>>> We may wish to  have a meeting, but maybe the following will make
>>> sense.  Let me expand on the why/where from above:
>>> 
>>> 1) *why* is the module being updated
>>>       - this is in the “description” statement
>>>       - the description statement SHOULD contain an identifier of
>>> some sort.  E.g., an RFC number, an IANA-ticket number, etc.
>> 
>> Does the RFC number belong in both the description field and the reference field?
>> 
>> thanks,
>> Amanda
>> 
>> _______________________________________________
>> yang-doctors mailing list
>> yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>
>> https://www.ietf.org/mailman/listinfo/yang-doctors
> 
> 
> Mahesh Jethanandani
> mjethanandani@gmail.com <mailto:mjethanandani@gmail.com>
> 
> 
> 
> 
> 
> 
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors