From 72de494b9f7a2527cbc44c3bda7d205125f4724e Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Wed, 3 Jun 2026 16:30:07 -0400 Subject: [PATCH] =?UTF-8?q?docs(audit):=20Client.UI.md=20=E2=80=94=20accur?= =?UTF-8?q?acy=20pass?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CODE-REALITY fixes (file:line evidence): - Read/Write tab write description was wrong: claimed the service reads current value first to determine the target type before writing. ReadWriteViewModel.WriteAsync (ReadWriteViewModel.cs:97-113) calls WriteValueAsync directly with the raw string — no pre-read. The type-inferring read-before-write lives only in the Subscriptions tab write dialog (SubscriptionsViewModel.ValidateAndWriteAsync). Button label is also "Write", not "Send" (ReadWriteView.axaml:35). - Settings save timing was incomplete: MainWindowViewModel.DisconnectAsync (MainWindowViewModel.cs:309) calls SaveSettings() on disconnect too; doc said only "after successful connect and on window close". STRUCTURAL: no rows in links-report.md for this file. STALE-STATUS: no stale-status language found. INLINE COMPLETENESS: no inventory gaps found. --- docs/Client.UI.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/Client.UI.md b/docs/Client.UI.md index 0233d074..f8a9c25d 100644 --- a/docs/Client.UI.md +++ b/docs/Client.UI.md @@ -65,7 +65,7 @@ The top bar provides the endpoint URL, Connect, and Disconnect buttons. The **Co ### Settings Persistence -Connection settings are saved to `{LocalAppData}/OtOpcUaClient/settings.json` after each successful connection and on window close. Dev boxes upgrading from a pre-task-#208 build still have the legacy `LmxOpcUaClient/` folder on disk; `ClientStoragePaths` in `Client.Shared` moves it to the canonical path on first launch so existing trusted certs + saved settings persist without operator action. The settings are reloaded on next launch, including: +Connection settings are saved to `{LocalAppData}/OtOpcUaClient/settings.json` after each successful connection, on disconnect, and on window close. Dev boxes upgrading from a pre-task-#208 build still have the legacy `LmxOpcUaClient/` folder on disk; `ClientStoragePaths` in `Client.Shared` moves it to the canonical path on first launch so existing trusted certs + saved settings persist without operator action. The settings are reloaded on next launch, including: - All connection parameters - Active subscription node IDs (restored after reconnection) @@ -100,7 +100,7 @@ Select a node in the browse tree to auto-read its current value. The tab display - Status code (e.g., `0x00000000 (Good)`) - Source and server timestamps -To write a value, enter the new value and click Send. The service reads the current value first to determine the target type, then converts and writes. +To write a value, enter the new value and click Write. The write is sent as a raw string; the server resolves the target type. ## Subscriptions Tab