Our FR5 coupon inspection timed out, then the Python application restarted and reused the job label. I have a later acknowledgement in the PLC log, but the clocks disagree and I cannot tell which attempt owns it. I want the support account to show what we know without assigning that receipt by guesswork.
Keep each source's event order first. Look for an exchange identity or sequence field that survives across the systems, rather than matching the reused job name by the nearest clock time
Clock correction may narrow the window, but it won't create the link Python never recorded. Don't let a neat merged timeline make that receipt look assigned.
It says check failed, which reads like a rejected coupon. Quality has the piece held because its inspection result is unassigned, not because a defect was found.
For the next recorder, retain an application attempt identity that is not reused on restart and its explicit relationship to the PLC exchange reference.
Author is adding that relationship. Support has accepted the existing event order with the acknowledgement unassigned, and is investigating the timeout without waiting for an impossible exact match.
That's useful. Keep the known controller and PLC sequence in the ticket even though the Python side is incomplete. Uncertain ownership doesn't make every event useless.
That replay is specified, including the old receipt remaining associated only when its explicit identity matches. Unknown receipts stay unresolved. The implementation is not finished.
Yes. They identified the coupon as awaiting reconciliation, not rejected, and named quality as the next contact. The historical receipt still cannot be assigned; we have closed the misleading wording, not the old inspection outcome.