Our monitor counts the first high completion after reconnect as new, although the PLC held it from before disconnection. I've stopped that counting path while we establish the job identity beside the retained state.
What identifying information is retained with that completion? A job label, an attempt reference, something that changes for each run? The application needs more than a fresh connection and a familiar high bit.
Toby, worth separating those. Even if every completion is matched correctly, a legitimate recheck mustn't quietly turn one housing into two finished pieces.
Toby, accepted housings. The report already links rechecks to the same housing, but this reconnect path adds a raw count outside that logic. It needs to use the reconciled result history too.
Test reconnect after a result was already saved, and after it arrived but saving failed. Same-looking retained signal, different work left for the application.
Unmatched cases now go to review in the offline version. Known saved completion adds nothing on reconnect. Failed-save recovery and controller-counter restart behaviour remain under test. Thanks Toby for checking what the total means.
Try reopening that review case too. The reason and housing identity need to survive, not just a generic warning that sends the next shift back to asking you.