[calsify] WGLC feedback for draft-ietf-calext-ical-tasks-05

Robert Stepanek <rsto@fastmailteam.com> Thu, 01 December 2022 12:02 UTC

Return-Path: <rsto@fastmailteam.com>
X-Original-To: calsify@ietfa.amsl.com
Delivered-To: calsify@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9CD46C14CE2F for <calsify@ietfa.amsl.com>; Thu, 1 Dec 2022 04:02:49 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.093
X-Spam-Level:
X-Spam-Status: No, score=-2.093 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, 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 (2048-bit key) header.d=fastmailteam.com header.b=j43cUhSB; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=Ht0QNWSU
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 rhZfbwkgtfNT for <calsify@ietfa.amsl.com>; Thu, 1 Dec 2022 04:02:44 -0800 (PST)
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B5302C14CF14 for <calsify@ietf.org>; Thu, 1 Dec 2022 04:02:44 -0800 (PST)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 079215C0072 for <calsify@ietf.org>; Thu, 1 Dec 2022 07:02:40 -0500 (EST)
Received: from imap43 ([10.202.2.93]) by compute3.internal (MEProxy); Thu, 01 Dec 2022 07:02:40 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= fastmailteam.com; h=cc:content-type:date:date:from:from :in-reply-to:message-id:mime-version:reply-to:sender:subject :subject:to:to; s=fm2; t=1669896160; x=1669982560; bh=1/V6zLjsg4 XnQ/+uLcKUp4zFWn15yOUtVhjwNwPWI+w=; b=j43cUhSBMFn+WbgKxdgk3RZrow J4wJ9dcfzBbBkbbjrsgm7eZr0rEukK83HqLaAkngkCHoECbj78c5UEgLP6KMrBEP BAI5WE0+9O0LNnKyOxiWk9vaSp0FGZkVsKIIF4XyqtTyU78cmRXB+rw6JiyjbJrJ +GvCN0V3BlPi41N5MHTQ6kC3tryRkDsjONLsohXouuN4P9WAQRy64LXfGQ3X6ohb CPOwJp9/EINn7pGXd2+08+IB+3KxaFYHkbEeoJAOlfj99GbXfTMGB4NHa+C7aF42 /vpDr/Ww+fnwcGQtnFiuWXi2TfRqfG0KfakfEsrPN6QyWByoFvDhcVCgX72w==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:date:feedback-id :feedback-id:from:from:in-reply-to:message-id:mime-version :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1669896160; x= 1669982560; bh=1/V6zLjsg4XnQ/+uLcKUp4zFWn15yOUtVhjwNwPWI+w=; b=H t0QNWSUKRwNCBjOBXJGowrfOOxoZsCkwPVPDdMotDzj4+eLHxyFVHJQAdspQTIM9 sEDYWDfOYV9dieVsiXg6eOUzll4lSZWNPyo0eBMyhPrtAMEouP2NSRHQyFdfJhrY EByvusIjvvAWgL0XNs0oRNVY/fNhwEZjEyxbBy1jYjl4wXNtKGnV+A6QmhE2/QRS WWmNnl2eiPi0LjRk2QK2Z7w4ubA5V7PKbb47MF0scoJBaqV0YUqFe+9EYFSXtn4B Azav4/2f0FeOBRWd8AEjL9vium2ymvKb9FRZ1cEjL1NtN5aXX00P4bdNtNAQ0H4S UNzoZR84SNSp53SKydD5A==
X-ME-Sender: <xms:35eIY8M6-8eHjEu0QY7J1y89DSaLddL9CzbZJj-sv4h1VFXtRlIitQ> <xme:35eIYy9TfWrIQIWWhJZdJH1SCs_jJ9O6mjIjuvdWZMkvrdw4wePg5INjNbT2pEanf 9QeYAPXenX0Xg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrtdehgdefhecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecunecujfgurhepofgfggfkfffhvffutgesrgdtreerre erjeenucfhrhhomhepfdftohgsvghrthcuufhtvghprghnvghkfdcuoehrshhtohesfhgr shhtmhgrihhlthgvrghmrdgtohhmqeenucggtffrrghtthgvrhhnpeffleektefghfefge etleeiieevgfefkeettefhuddukeeuveejudettdelveffveenucevlhhushhtvghrufhi iigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehrshhtohesfhgrshhtmhgrihhlth gvrghmrdgtohhm
X-ME-Proxy: <xmx:35eIYzT9zFjgPDdVo7PYCkxGOlSDYgXyhB63pzOTT260q1u3k8Wnhw> <xmx:35eIY0vzl8OoqKl4IFwYx-X2eh754LAL4O_A__Kra7bY5ZqfLNSRPw> <xmx:35eIY0e9r1vTUMs3N4ir94QwenhuDPGSyHD3raHAj2wKO47SLq7iCw> <xmx:4JeIY-oaYfjNCCRB25rgQ0PWDB23oXyX84nez1Ic-xHcP3Q8osUJcg>
Feedback-ID: ia5d944da:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501) id C95A02D40074; Thu, 1 Dec 2022 07:02:39 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.7.0-alpha0-1125-g7494ea21c7-fm-20221114.002-g7494ea21
Mime-Version: 1.0
Message-Id: <51fa7cae-921a-4eee-8341-43223a83e35c@app.fastmail.com>
Date: Thu, 01 Dec 2022 13:02:19 +0100
From: Robert Stepanek <rsto@fastmailteam.com>
To: calsify@ietf.org
Content-Type: multipart/alternative; boundary="3e3c31114e264ad9bacfa94e857b5b0d"
Archived-At: <https://mailarchive.ietf.org/arch/msg/calsify/c48tM54VQvY5sOh-DToregJ01gk>
Subject: [calsify] WGLC feedback for draft-ietf-calext-ical-tasks-05
X-BeenThere: calsify@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Calendaring and Scheduling Standards Simplification <calsify.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/calsify>, <mailto:calsify-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/calsify/>
List-Post: <mailto:calsify@ietf.org>
List-Help: <mailto:calsify-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/calsify>, <mailto:calsify-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Dec 2022 12:02:49 -0000

First, my apologies for waiting until last call for a thorough re-read of the document.

I support the proposals in this RFC.

I have a few remarks about its definitions.I think the RFC presentation could be improved. For details, see below.

*Feedback on definitions:*
 * Section 7.2: the REL parameter in the example is not defined, it should read LINKREL as defined in RFC 9253.
 * Section 7.3: it's unclear why LINK is the better choice over ATTACH in these examples. Even the text in this section talks about "attachments".
 * Section 12.3: The examples for SUBSTATE confused me:
   * First example: What does SUBSTATE:ERROR tell more than STATUS:FAILED?
   * Second example: Wouldn't a SUSPENDED value for STATUS be more appropriate?
 * Section 12.4: The AUTOMATIC-COMPLETION and AUTOMATIC-FAILURE modes for TASK-MODE are defined for server. First, it's not clear to me which server is meant. It seems as if the server of the organizer of the task is the one that should enact these modes? If so,
   * Would it make sense to define the TASK-MODE property as follows:
     * Define a STATUS-AGENT (or TASK-AGENT) property with allowed values "SERVER" / "CLIENT". This is similar to the SCHEDULE-AGENT property that RFC 6638 defined.
     * Define a STATUS-MODE (or TASK-MODE) parameter with the AUTOMATIC-.. modes?
 * Section 17: The IANA registration for VSTATUS is missing.

*Feedback on presentation:*

The RFC introduces an architecture and terminology which I found to not contribute much to the actual iCalendar-related changes proposed in later sections. It seems most of the terminology introduced only is required to define the architecture itself. Putting my implementors hat on, and trying to understand what this RFC brings new to VTODO, I did not see what the architecture provides for me. Maybe there is an audience for this, though, it wasn't just me.

I wonder if sections 3 to 10 could be condensed to some definitions in the Introduction section and some in the sections with iCalendar definitions. This would also align the RFC document structure with the other iCalendar-related RFCs.

What follows is detailed feedback on phrasing, typos, etc:
 * Section 4: the ERP acronym is undefined
 * Section 7.1: adding a reference to RFC 9253 for the CONCEPT property would help
 * Section 7.2:
   * "REFID is used to identify a key allowing the association of tasks "... I found this hard to parse, both the "used to identify" and "allowing the association". The REFID already is defined in RFC 9253. Why not just say here that it can be used to group tasks by that reference key?
   * The "Doug114" reference is outdated and should mean RFC 9253.
 * Section 7.3:
   * "standard calendar user agents.. “ What does “standard” mean?
   * The newlines in the examples are confusing
 * Section 8:
   * A document-internal link to the ESTIMATED-DURATION definition might be good here.
   * Split the two paragraphs into two sections? It was a hard cut from estimated durations to intermediary deadlines.
 * Section 9:
   * "supports the two distinct models “. Remove "the”?
   * This whole section reads as if it could be shortened to: “Tasks are assigned to actors with the ATTENDEE property and schedulding is done with iTIP.”
 * Section 10:
   * "about the status." The status of what? Which status?
   * Add VSTATUS component name: "“...defines a new status component _VSTATUS_ that..”
 * Section 10.2: A sentences that describes the scenario in the example would help to better understand it.
 * Section 10.4:
   * "Note: there is no constraint in the current standards on the propagation of alarms specified on calendar objects by organizers to individual attendees." What does this note hint at? That alarms may be sent from the organizer to attendees? Does this specification recommend to do that? Some servers (ours) strip alarms from calendar events that come in through iTIP.
   * BPMS: unexplained acronym.
   * No such reference: Doug214
 * Section 11:
   * Replace "/=" with "=/", the latter is defined in ABNF RFC 5234
 * Section 12.1. rephrase example description from " that specifies an interval of time of exactly one hour” to “that estimates the duration of a task to be one hour”.
 * Section 12.2: Purpose/Description: rephrase "reason for a change in status of a task“ to “reason for a status change” (e.g. omit "task").
 * Section 13.1:
   * fix typo "MUSt" to "MUST"
   * "is replaced by" should not be formatted as code
 * Section 13.2:
   * replace "/ =" with "=/"
   * the inline comments here and in some other sections are off:
     * they do not vertically align the ";" characters, so comments are not formatted as a paragraph
     * The comments mostly describe the semantics. If anything, they should be used to describe value restrictions that can't be expressed with ABNF (but ABNF recommends not to use comments for this, too).
   * PENDING - "A Task. FAILED - "task". The start of these sentences should be the same
 * Section 14.1:
   * Conformance: “In any appropriate calendar component.” What does “appropriate” mean?
   * Description: just add participant here in addition to event and task types?

That's all!
Robert