Re: Updated Sieve notification draft

"Mark E. Mallett" <mem@mv.mv.com> Fri, 30 September 2005 17:58 UTC

Received: from above.proper.com (localhost.vpnc.org [127.0.0.1]) by above.proper.com (8.12.11/8.12.9) with ESMTP id j8UHwPuF002757; Fri, 30 Sep 2005 10:58:25 -0700 (PDT) (envelope-from owner-ietf-mta-filters@mail.imc.org)
Received: (from majordom@localhost) by above.proper.com (8.12.11/8.12.9/Submit) id j8UHwP6e002756; Fri, 30 Sep 2005 10:58:25 -0700 (PDT)
X-Authentication-Warning: above.proper.com: majordom set sender to owner-ietf-mta-filters@mail.imc.org using -f
Received: from mv.mv.com (osmium.mv.net [199.125.85.152]) by above.proper.com (8.12.11/8.12.9) with SMTP id j8UHwOpC002750 for <ietf-mta-filters@imc.org>; Fri, 30 Sep 2005 10:58:24 -0700 (PDT) (envelope-from mem@mv.mv.com)
Received: (qmail 32367 invoked by uid 101); 30 Sep 2005 13:58:24 -0400
From: "Mark E. Mallett" <mem@mv.mv.com>
Date: Fri, 30 Sep 2005 13:58:24 -0400
To: Ned Freed <ned.freed@mrochek.com>
Cc: Mark E Mallett <mem@mv.mv.com>, Alexey Melnikov <alexey.melnikov@isode.com>, MTA filtering mailing list <ietf-mta-filters@imc.org>
Subject: Re: Updated Sieve notification draft
Message-ID: <20050930175824.GC40958@osmium.mv.net>
References: <43380526.4070001@isode.com> <20050929223953.GE51878@osmium.mv.net> <01LTMVUHD7WU000092@mauve.mrochek.com>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <01LTMVUHD7WU000092@mauve.mrochek.com>
User-Agent: Mutt/1.4.2.1i
Sender: owner-ietf-mta-filters@mail.imc.org
Precedence: bulk
List-Archive: <http://www.imc.org/ietf-mta-filters/mail-archive/>
List-ID: <ietf-mta-filters.imc.org>
List-Unsubscribe: <mailto:ietf-mta-filters-request@imc.org?body=unsubscribe>

On Fri, Sep 30, 2005 at 08:05:05AM -0700, Ned Freed wrote:
> > On Mon, Sep 26, 2005 at 03:26:46PM +0100, Alexey Melnikov wrote:
> > > Hi folks,
> > > I took a stab at updating draft-martin-sieve-notify-01.txt, which should
> > > be published soon as draft-ietf-sieve-notify-00.txt. The document is
> > > attached.
> 
> > Hi-
> 
> > On my first read through, I had the idea that it was defining an action
> > "notify" that would itself generate a notification, deferred until the
> > end of the script's execution (otherwise the "denotify" made no sense).
> 
> That's exactly what the extension does, or at least should do.
> 
> > After reading this thread and having another go or two at the document,
> > I now get the idea that "notify" merely enables notifications to be sent
> > when *other* actions are taken.
> 
> I cannot believe this was the intent, but it is it needs to be changed ASAP.

My problem is that I couldn't really tell which was the intent.  My
first read was prejudiced by what I expected notify to do, which is that
of an action that had an immediate effect of sending a notice.  But
there are some parts that read as though the intent is to enable
notifications when other actions occur.  e.g.:

    This is an extension to the Sieve language defined by [SIEVE] for
    providing instant notifications of sieve actions that have been
    preformed.

    However, all content specified in the notify action, including Sieve
    actions taken on the message, SHOULD be included.

    If errors occurred in another action they SHOULD be reported in the
    notification.

The kicker being:

    Notifications MUST be sent in all cases, unless a reject action is
    also executed. Users may wish to be notified of a message being
    discarded, for example.   <<The reject action is given an exception
    because implementations may wish to restrict users from seeing the
    contents of a rejected message. However, notifications MAY be
    modified to not include any data from the original rejected message.>>

That paragraph is perplexing, in several ways, if notify simply sends
its own message, but not so much with the other interpretation.


> There is absolutely no reason to make notify actions have special and
> unusual dependencies on other actions. This sort of thing would add all
> sorts of strange interaction semantics to the sieve language that it doesn't
> need and which will make our job of describing action behavior moving
> forward vastly more difficult. It will also make it harder to write
> scripts that function properly, debug scripts, and just about everything
> else.

I don't think that a summary notification of actions taken would have
these dire consequences, any more than logging each action does, or any
more than delaying actions until after script execution does.  (Not that
I'm in favor of having notify work that way, either.)  But I do think
the intent is unclear, and some wording needs to be changed to better
reflect whichever was meant.

mm