From 336879990c4fb8c3b1494dafdecf8dc4a3782f67 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Tue, 16 Jun 2026 18:32:26 -0400 Subject: [PATCH] docs(phase7): desktop client alarm Ack/Shelve/Confirm actions --- docs/Client.UI.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/docs/Client.UI.md b/docs/Client.UI.md index a71fd68f..982c6087 100644 --- a/docs/Client.UI.md +++ b/docs/Client.UI.md @@ -165,9 +165,17 @@ The data grid shows retained alarm conditions with color-coded rows: Alarms are updated in place when the server re-sends condition state changes. Non-retained alarms are automatically removed. -### Acknowledging Alarms +### Alarm Actions (Acknowledge / Shelve / Confirm) -Right-click an active, unacknowledged alarm and select **Acknowledge...**. Enter an acknowledgment comment in the popup dialog. The alarm is acknowledged via the OPC UA `Acknowledge` method on the condition node. +Right-click any alarm row to open the context menu. The menu is suppressed entirely when none of the three actions apply to the selected row. + +| Action | Enabled when | Behaviour | +|--------|-------------|-----------| +| **Acknowledge…** | Alarm is active and not yet acknowledged | Opens a comment dialog. Calls OPC UA `Acknowledge` on the condition node. | +| **Shelve…** | Row has a condition node id (any state) | Opens a dialog with a **Shelve Type** selector (OneShot / Timed / Unshelve) and a **Duration (seconds)** field shown only for Timed. No comment is taken — the OPC UA ShelvedStateMachine methods carry none. Calls `OneShotShelve`, `TimedShelve`, or `Unshelve` accordingly. | +| **Confirm…** | Alarm has been acknowledged (OPC UA two-stage Ack → Confirm flow) | Opens a comment dialog. Calls OPC UA `Confirm` on the condition node. | + +All three route through `IOpcUaClientService` (`AcknowledgeAlarmAsync` / `ShelveAlarmAsync` / `ConfirmAlarmAsync`) — the same methods the Client.CLI `ack` / `shelve` / `confirm` commands use. ### Tab Header