How about:
resp-text-code /= "PROGRESS" SP tag SP progress SP time-to-go
progress = number ; 0 <= progress <= 100: estimated progress as a percentage
/ nil ; no reliable estimate available
time-to-go = number ; 0 <= time-to-go: estimated time remaining in seconds
/ nil ; no reliable estimate available
with a "SHOULD NOT send this response if both progress and time-to-go
are NIL." (Sending *one* nil/nil after a non-nil would be a valid way to
communicate that the previous estimate is now out-to-lunch.)
I don't think the arbitrary text field Pete proposed is useful in practice,
so I left it out; we already have ALERT for annoying the user.
--lyndon