Ask both authors to walk through one exchange with request identity, receipt, result and clearing conditions. Each event needs a meaning and an owner before anyone changes its duration.
Two FR10 programs each expect the other to clear the request
LucyBrown0915 · 10 Feb 2026, 11:17 UTC
21 replies
Application calls its result response an acknowledgement. PLC author expected acknowledgement as soon as the request was received. They weren't even waiting for the same event.
17 pointsThen name receipt and result separately. One word has already cost you a debugging session.
23 pointsWould a simple sequence table help them compare that before implementation? Include a request that is never received, not only the complete exchange where both meanings eventually become true.
4 pointsThe handover also needs the application's restart after receipt. A complete request may still have an uncertain result, and the operator should not be asked to create a new inspection just because the application came back.
17 pointsWill, yes, we have a table now. Dinesh, the restart case is absent from their current diagrams. I've added it as an unanswered case, not drawn my own arrows for them.
2 pointsWhat survives restart on each side? A table with an identity column will not help if one program forgets the value at the exact point it needs it.
11 pointsAnd is that identity an attempt, or just the bracket job name? Same family can be inspected twice.
23 pointsCurrent app keeps only the bracket job name. PLC has an exchange counter, but the application never saves it. That's another explicit gap for the authors.
8 pointsDoes the counter have a defined lifetime across PLC restart too? I would ask that before making it the common identity, rather than discover later that both sides can reuse it.
21 pointsWill's question is important for the maintainer. Please keep the expected behaviour for an unknown old event in the design, even if you choose a better identity for future exchanges.
15 pointsPLC author confirms the present counter resets. They are defining an exchange identity with restart behaviour, rather than simply exporting that counter and calling it unique.
16 pointsInclude clearing an already completed exchange and receiving its result again. Those are separate cases from a new request. Otherwise a repeated event can create new work under the improved names.
14 pointsA longer pulse was looking wonderfully simple before all this.
25 pointsIt can be part of an implementation, Imran, but it cannot answer who still owns an unreceived request. Lucy's original objection survives even if the pulse stops being missed in a demonstration.
14 pointsThe authors now agree separate receipt and result events, explicit ownership, and an unresolved route after uncertain restart. Clearing conditions are written for success and timeout. No code change presented as finished yet.
25 pointsWho will read the proposed operator messages without either author explaining them? That was the useful last step in our handover review; the diagrams made sense sooner than the recovery wording did.
0 pointsOur shift lead and a covering operator. They haven't seen this design discussion. I'll use the missed-receipt and uncertain-result cases, not just ask whether the screen looks clear.
16 pointsAnd let them identify whom to call when the defined review cannot establish the outcome. A recovery page can be clear about the uncertainty and still leave its user stranded.
13 pointsPaper walkthrough caught exactly that: no named escalation contact for unresolved outcomes. Added with the shift lead. The agreed interface is ready for implementation and testing, with the missing cases still on the test list.
10 pointsDiscussion closed
This discussion is closed to new replies after six months without activity. Last activity: .