Section 4.1:
Syntax: reject <reason: string>
^^^^^^ Usage
The example uses a string that spans multiple lines. I don't know if
that is intentional, as the output would be different. How about using
text:?
Section 5.1:
If the "reason" string is multiline, than the reason text MUST be
returned as a multiline SMTP/LMTP response, per [SMTP], section
4.2.1.
What should happen for plain old SMTP sessions?
require ["refuse", "spamtest"]
I miss "comparator-i;ascii-numeric".
Section 5.2:
If a script attempts to "refuse" the same message more than once,
the implementation may ignore the later attempts or consider it
an error."
^ extra double quotes
Section 5.3:
implementation, the example in section 4.1 would show up in SMTP
^^^ section 5.1 instead?
But that are just minor points; all in all the draft is fine with me.
Michael