Our FR10 sample-check request is a short PLC pulse and the app sometimes misses it (ordinary job signals, separate safety system), so who should keep it around until somebody actually acknowledges it?
Who sets and clears it now? I'd write that down first. Making the pulse longer may hide the missed-read case without answering what either side should do after a disconnect.
Ours looked fine until the display restarted. Then nobody knew whether the request was old or new. Put request identity into the discussion as well as the bits.
I'd have the PLC and application owners agree a retained request and an acknowledgement tied to that request. Include who clears each state, timeout behaviour and what survives restart. Don't just add a sticky bit and stop there.
In that proposal, accepted, not finished. Completion needs its own meaning and association with the request. The names on your interface should make that distinction obvious to whoever supports it.
Ask what happens when the app accepted the request but the PLC never saw that acknowledgement. That is the awkward case a clean sequence diagram tends to leave politely outside.