Files
lmxopcua/code-reviews/README.md
Joseph Doherty 0001cdd579 fix(scripted-alarms): reuse per-alarm evaluation scratch on the hot path
Core.ScriptedAlarms-009 resolution: replace the per-call Dictionary +
AlarmPredicateContext allocation with a per-alarm reusable AlarmScratch
held in _scratchByAlarmId, refilled in place under _evalGate on each
evaluation. The hot path no longer allocates per upstream tag change.

Why this matters:
  On a busy line where many tags feeding many alarms change frequently,
  the old BuildReadCache allocated a fresh dictionary + context on every
  predicate evaluation — a steady stream of short-lived allocations the
  GC eventually has to reclaim. With the reuse, the dictionary and
  context are allocated once per alarm (on first evaluation) and refilled
  in place across every subsequent re-eval.

Implementation:
  - New private AlarmScratch class holds the reusable
    Dictionary<string, DataValueSnapshot> read cache (pre-sized to the
    alarm's Inputs.Count) and the AlarmPredicateContext that wraps it by
    reference. The context observes refilled values without being
    re-created.
  - ConcurrentDictionary<string, AlarmScratch> _scratchByAlarmId on the
    engine, cleared in LoadAsync alongside _alarms so a config-publish
    drops the prior generation's scratch (Inputs / Logger may change).
  - EvaluatePredicateToStateAsync looks up scratch via GetOrAdd, calls
    the new RefillReadCache(Dictionary, IReadOnlySet) helper to clear +
    repopulate the dictionary in place, then runs the predicate against
    the reused context.
  - BuildReadCache removed.

Safety:
  Reuse is serialised under _evalGate which guarantees no two threads
  ever observe the same scratch in a half-refilled state. The
  AlarmPredicateContext is bound to the scratch dictionary by reference,
  so the predicate's ctx.GetTag(path) sees the freshly-refilled values
  rather than a stale snapshot.

Verification:
  - All 66 ScriptedAlarms tests pass (was 63 — three new regression tests
    locking the reuse contract).
  - All 56 VirtualTags tests still pass (unchanged).
  - All 104 Core.Scripting tests still pass (unchanged).

New tests in ScriptedAlarmEngineTests:
  - Reevaluation_reuses_the_same_read_cache_dictionary — asserts
    ReferenceEquals(scratch_before, scratch_after) across two
    evaluations of the same alarm.
  - Reevaluation_reuses_the_same_predicate_context — same, for the
    context.
  - LoadAsync_drops_the_prior_generations_scratch — asserts a config
    publish wipes the prior scratch (so a stale Logger / Inputs can't
    leak into the new generation).

Internal test hooks TryGetScratchReadCacheForTest /
TryGetScratchContextForTest added via the existing
InternalsVisibleTo for the tests project. Kept internal — not part of
the public engine surface.

Docs:
  - docs/v2/Galaxy.Performance.md "Scripted-alarm engine" section
    rewritten as "hot-path allocation reuse" documenting the new
    contract + reuse safety reasoning + the three regression tests.
  - code-reviews/Core.ScriptedAlarms/findings.md -009 flipped
    Won't Fix → Resolved.
  - code-reviews/README.md regenerated.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-23 16:10:09 -04:00

50 KiB

Code Reviews

Cross-module code review index for the OtOpcUa server codebase (lmxopcua). The review process is defined in ../REVIEW-PROCESS.md.

Each module's findings.md is the source of truth; this file is generated from them by regen-readme.py and must not be edited by hand.

Module status

Module Reviewer Date Commit Status Open Total
Admin Claude Code 2026-05-22 76d35d1 Reviewed 0 13
Analyzers Claude Code 2026-05-22 76d35d1 Reviewed 0 7
Client.CLI Claude Code 2026-05-22 76d35d1 Reviewed 0 10
Client.Shared Claude Code 2026-05-22 76d35d1 Reviewed 0 11
Client.UI Claude Code 2026-05-22 76d35d1 Reviewed 0 11
Configuration Claude Code 2026-05-22 76d35d1 Reviewed 0 11
Core Claude Code 2026-05-22 76d35d1 Reviewed 0 12
Core.Abstractions Claude Code 2026-05-22 76d35d1 Reviewed 0 8
Core.AlarmHistorian Claude Code 2026-05-22 76d35d1 Reviewed 0 11
Core.ScriptedAlarms Claude Code 2026-05-22 76d35d1 Reviewed 0 12
Core.Scripting Claude Code 2026-05-22 76d35d1 Reviewed 0 11
Core.VirtualTags Claude Code 2026-05-22 76d35d1 Reviewed 0 13
Driver.AbCip Claude Code 2026-05-22 76d35d1 Reviewed 0 15
Driver.AbCip.Cli Claude Code 2026-05-22 76d35d1 Reviewed 0 8
Driver.AbLegacy Claude Code 2026-05-22 76d35d1 Reviewed 0 13
Driver.AbLegacy.Cli Claude Code 2026-05-22 76d35d1 Reviewed 0 7
Driver.Cli.Common Claude Code 2026-05-22 76d35d1 Reviewed 0 6
Driver.FOCAS Claude Code 2026-05-22 76d35d1 Reviewed 0 12
Driver.FOCAS.Cli Claude Code 2026-05-22 76d35d1 Reviewed 0 5
Driver.Galaxy Claude Code 2026-05-22 76d35d1 Reviewed 0 14
Driver.Historian.Wonderware Claude Code 2026-05-22 76d35d1 Reviewed 0 12
Driver.Historian.Wonderware.Client Claude Code 2026-05-22 76d35d1 Reviewed 0 10
Driver.Modbus Claude Code 2026-05-22 76d35d1 Reviewed 0 12
Driver.Modbus.Addressing Claude Code 2026-05-22 76d35d1 Reviewed 0 9
Driver.Modbus.Cli Claude Code 2026-05-22 76d35d1 Reviewed 0 8
Driver.OpcUaClient Claude Code 2026-05-22 76d35d1 Reviewed 0 15
Driver.S7 Claude Code 2026-05-22 76d35d1 Reviewed 0 14
Driver.S7.Cli Claude Code 2026-05-22 76d35d1 Reviewed 0 7
Driver.TwinCAT Claude Code 2026-05-22 76d35d1 Reviewed 0 16
Driver.TwinCAT.Cli Claude Code 2026-05-22 76d35d1 Reviewed 0 7
Server Claude Code 2026-05-22 76d35d1 Reviewed 0 15

Pending findings

Findings with status Open or In Progress, ordered by severity.

No pending findings.

Closed findings

Findings with status Resolved, Won't Fix, or Deferred.

ID Severity Status Category Location
Admin-001 Critical Resolved Security Components/Routes.razor:4-11, Program.cs:150
Admin-002 Critical Resolved Security Components/Pages/Clusters/NewCluster.razor:1-7, Home.razor, Fleet.razor, Hosts.razor, AlarmsHistorian.razor, Clusters/ClustersList.razor, Clusters/Generations.razor, Drivers/FocasDetail.razor
Core.AlarmHistorian-001 Critical Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:255-278
Core.Scripting-001 Critical Resolved Security ForbiddenTypeAnalyzer.cs:45, ScriptSandbox.cs:54
Driver.Galaxy-001 Critical Resolved Error handling & resilience Runtime/EventPump.cs:128, GalaxyDriver.cs:222
Server-001 Critical Resolved Correctness & logic bugs src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/DriverNodeManager.cs:1791
Admin-003 High Resolved Security Program.cs:137-139, Hubs/FleetStatusHub.cs:11, Hubs/AlertHub.cs:10, Hubs/ScriptLogHub.cs:30
Admin-004 High Resolved Security appsettings.json:3,13-14
Admin-005 High Resolved Correctness & logic bugs Components/Pages/Login.razor:15,107-110
Admin-013 High Resolved Error handling & resilience Components/Pages/Clusters/ClusterDetail.razor:180-197, Components/Pages/Clusters/AclsTab.razor, Components/Pages/Clusters/RedundancyTab.razor, Components/Pages/RoleGrants.razor, Components/Pages/Hosts.razor, Components/Pages/ScriptLog.razor, Program.cs:157-159
Client.Shared-005 High Resolved Concurrency & thread safety OpcUaClientService.cs:19, OpcUaClientService.cs:226-249, OpcUaClientService.cs:499-521
Client.Shared-006 High Resolved Concurrency & thread safety OpcUaClientService.cs:97-100, OpcUaClientService.cs:432-497
Configuration-001 High Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Configuration/Migrations/20260417215224_StoredProcedures.cs:282
Configuration-008 High Resolved Security src/Core/ZB.MOM.WW.OtOpcUa.Configuration/Migrations/20260417215224_StoredProcedures.cs:150, :373, :468
Core-001 High Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core/Authorization/UserAuthorizationState.cs:50-68
Core-002 High Resolved Security src/Core/ZB.MOM.WW.OtOpcUa.Core/Authorization/TriePermissionEvaluator.cs:24-50
Core.AlarmHistorian-002 High Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:99-105,386-388
Core.AlarmHistorian-004 High Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:90,112,176,259
Core.AlarmHistorian-006 High Resolved Error handling & resilience src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:103,135-216
Core.ScriptedAlarms-001 High Resolved Concurrency & thread safety ScriptedAlarmEngine.cs:175, ScriptedAlarmEngine.cs:178, ScriptedAlarmEngine.cs:73, ScriptedAlarmEngine.cs:368
Core.Scripting-002 High Resolved Security ForbiddenTypeAnalyzer.cs:70
Core.VirtualTags-001 High Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/VirtualTagEngine.cs:306
Driver.AbCip-001 High Resolved Correctness & logic bugs AbCipDriver.cs:111, AbCipDriver.cs:163-167
Driver.AbCip-002 High Resolved Correctness & logic bugs AbCipStatusMapper.cs:65-78
Driver.AbCip-003 High Resolved Correctness & logic bugs AbCipUdtMemberLayout.cs:32-54, AbCipDriver.cs:426-430, AbCipUdtReadPlanner.cs:48
Driver.AbCip-008 High Resolved Concurrency & thread safety AbCipDriver.cs:144-152, AbCipDriver.cs:169-183, AbCipDriver.cs:235-281
Driver.AbLegacy-001 High Resolved Correctness & logic bugs AbLegacyAddress.cs:54, AbLegacyDriver.cs:368-374
Driver.AbLegacy-006 High Resolved Concurrency & thread safety AbLegacyDriver.cs:107-158, AbLegacyDriver.cs:162-234, LibplctagLegacyTagRuntime.cs
Driver.Cli.Common-001 High Resolved Correctness & logic bugs src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Cli.Common/SnapshotFormatter.cs:106-119
Driver.FOCAS-001 High Resolved Correctness & logic bugs FocasDriverFactoryExtensions.cs:54-86, FocasDriverFactoryExtensions.cs:132-140
Driver.FOCAS-002 High Resolved Correctness & logic bugs WireFocasClient.cs:164-179, FocasDriver.cs:513, FocasDriver.cs:593
Driver.Galaxy-002 High Resolved Correctness & logic bugs Browse/DataTypeMap.cs:13, Runtime/MxValueDecoder.cs:9
Driver.Galaxy-008 High Resolved Error handling & resilience GalaxyDriver.cs:264-276, Runtime/EventPump.cs:97-103
Driver.Historian.Wonderware-001 High Resolved Correctness and logic bugs Backend/SdkAlarmHistorianWriteBackend.cs:68, Backend/AahClientManagedAlarmEventWriter.cs:82-103
Driver.Historian.Wonderware.Client-001 High Resolved Correctness & logic bugs WonderwareHistorianClient.cs:98-113
Driver.Modbus-001 High Resolved Concurrency & thread safety ModbusDriver.cs:92,99-122
Driver.Modbus.Addressing-001 High Resolved Correctness & logic bugs ModbusAddressParser.cs:230-235, DirectLogicAddress.cs:66-73
Driver.OpcUaClient-001 High Resolved Correctness & logic bugs OpcUaClientDriver.cs:444, :466, :517, :540, :599, :610
Driver.OpcUaClient-002 High Resolved Error handling & resilience OpcUaClientDriver.cs:1330-1359
Driver.OpcUaClient-003 High Resolved Correctness & logic bugs OpcUaClientDriver.cs:644-711
Driver.OpcUaClient-004 High Resolved Design-document adherence OpcUaClientDriver.cs:596-632, :789, OpcUaClientDriverOptions.cs
Driver.OpcUaClient-005 High Resolved Concurrency & thread safety OpcUaClientDriver.cs:1297-1319
Driver.S7-001 High Resolved Correctness & logic bugs S7AddressParser.cs:93, S7Driver.cs:231
Driver.S7-006 High Resolved Concurrency & thread safety S7Driver.cs:140, S7Driver.cs:457, S7Driver.cs:506
Driver.S7-007 High Resolved Error handling & resilience S7Driver.cs:200, S7DriverOptions.cs:13, docs/v2/driver-specs.md:434
Driver.S7-011 High Resolved Design-document adherence S7Driver.cs:82, S7Driver.cs:134, IDriver.cs:24
Driver.TwinCAT-001 High Resolved Correctness & logic bugs TwinCATDriver.cs:41-78
Driver.TwinCAT-002 High Resolved Correctness & logic bugs TwinCATDataType.cs:34-48, AdsTwinCATClient.cs:264-281
Driver.TwinCAT-007 High Resolved Concurrency & thread safety TwinCATDriver.cs:413-429
Driver.TwinCAT-008 High Resolved Concurrency & thread safety AdsTwinCATClient.cs:162-169, TwinCATDriver.cs:319-324
Driver.TwinCAT-013 High Resolved Design-document adherence TwinCATDriver.cs:11-12 (capability list), whole file
Server-002 High Resolved Correctness & logic bugs src/Server/ZB.MOM.WW.OtOpcUa.Server/Security/AuthorizationGate.cs:60-63
Server-009 High Resolved Security src/Server/ZB.MOM.WW.OtOpcUa.Server/Security/LdapOptions.cs:44, src/Server/ZB.MOM.WW.OtOpcUa.Server/Program.cs:74
Admin-006 Medium Resolved Security Components/Layout/MainLayout.razor:47-49, Program.cs:129,131-135
Admin-007 Medium Resolved Design-document adherence Components/Pages/Clusters/NewCluster.razor:91,95-96
Admin-008 Medium Resolved Error handling & resilience Services/ReservationService.cs:28-37
Admin-009 Medium Resolved Testing coverage src/Server/ZB.MOM.WW.OtOpcUa.Admin (whole module)
Analyzers-001 Medium Resolved Correctness & logic bugs src/Tooling/ZB.MOM.WW.OtOpcUa.Analyzers/UnwrappedCapabilityCallAnalyzer.cs:135-139
Analyzers-006 Medium Resolved Testing coverage tests/Tooling/ZB.MOM.WW.OtOpcUa.Analyzers.Tests/UnwrappedCapabilityCallAnalyzerTests.cs
Client.CLI-001 Medium Resolved Correctness & logic bugs Commands/HistoryReadCommand.cs:73, Commands/HistoryReadCommand.cs:76
Client.CLI-005 Medium Resolved Concurrency & thread safety Commands/SubscribeCommand.cs:66-78, Commands/AlarmsCommand.cs:52-64
Client.Shared-001 Medium Resolved Correctness & logic bugs OpcUaClientService.cs:552
Client.Shared-002 Medium Resolved Correctness & logic bugs OpcUaClientService.cs:351-355, OpcUaClientService.cs:373
Client.Shared-007 Medium Resolved Concurrency & thread safety OpcUaClientService.cs:581-622
Client.Shared-008 Medium Resolved Error handling & resilience OpcUaClientService.cs:170-180, Helpers/ValueConverter.cs:15-31
Client.UI-001 Medium Resolved Correctness & logic bugs ViewModels/HistoryViewModel.cs:76, ViewModels/HistoryViewModel.cs:77
Client.UI-002 Medium Resolved Correctness & logic bugs ViewModels/MainWindowViewModel.cs:255, ViewModels/MainWindowViewModel.cs:333
Client.UI-005 Medium Resolved Concurrency & thread safety ViewModels/MainWindowViewModel.cs:286-304, ViewModels/MainWindowViewModel.cs:155-189
Client.UI-007 Medium Resolved Security Services/UserSettings.cs:22-23, Services/JsonSettingsService.cs:38-50, ViewModels/MainWindowViewModel.cs:393-408
Client.UI-008 Medium Resolved Performance & resource management ViewModels/MainWindowViewModel.cs:18, ViewModels/MainWindowViewModel.cs:125-148, App.axaml.cs:18-32
Configuration-002 Medium Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Configuration/Migrations/20260417215224_StoredProcedures.cs:325
Configuration-003 Medium Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Configuration/Validation/DraftValidator.cs:73
Configuration-006 Medium Resolved Error handling & resilience src/Core/ZB.MOM.WW.OtOpcUa.Configuration/LocalCache/ResilientConfigReader.cs:79
Configuration-009 Medium Resolved Security src/Core/ZB.MOM.WW.OtOpcUa.Configuration/DesignTimeDbContextFactory.cs:14
Core-003 Medium Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core/Authorization/PermissionTrie.cs:80-98
Core-005 Medium Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Core/Authorization/PermissionTrieCache.cs:59-70
Core-006 Medium Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Core/OpcUa/GenericDriverNodeManager.cs:42-64
Core-007 Medium Resolved Error handling & resilience src/Core/ZB.MOM.WW.OtOpcUa.Core/Resilience/AlarmSurfaceInvoker.cs:75-83
Core.Abstractions-001 Medium Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/PollGroupEngine.cs:112
Core.Abstractions-002 Medium Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/PollGroupEngine.cs:105-109
Core.Abstractions-003 Medium Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/PollGroupEngine.cs:64,121-130
Core.AlarmHistorian-003 Medium Resolved OtOpcUa conventions src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:107-127,218-243,246-253
Core.AlarmHistorian-005 Medium Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:66-71,141-143,199,386-388
Core.AlarmHistorian-007 Medium Resolved Error handling & resilience src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:172-174
Core.AlarmHistorian-009 Medium Resolved Design-document adherence src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:317-347
Core.AlarmHistorian-010 Medium Resolved Testing coverage tests/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian.Tests/SqliteStoreAndForwardSinkTests.cs
Core.ScriptedAlarms-002 Medium Resolved Correctness & logic bugs ScriptedAlarmEngine.cs:162, ScriptedAlarmEngine.cs:90
Core.ScriptedAlarms-004 Medium Resolved Concurrency & thread safety ScriptedAlarmEngine.cs:138-143, ScriptedAlarmEngine.cs:227-234
Core.ScriptedAlarms-005 Medium Resolved Concurrency & thread safety ScriptedAlarmEngine.cs:365-369, ScriptedAlarmEngine.cs:416-424
Core.ScriptedAlarms-007 Medium Resolved Error handling & resilience ScriptedAlarmEngine.cs:216, ScriptedAlarmEngine.cs:251, ScriptedAlarmEngine.cs:154, ScriptedAlarmEngine.cs:387
Core.ScriptedAlarms-012 Medium Resolved Testing coverage tests/Core/ZB.MOM.WW.OtOpcUa.Core.ScriptedAlarms.Tests/ScriptedAlarmEngineTests.cs
Core.Scripting-003 Medium Resolved Security TimedScriptEvaluator.cs:9, ScriptSandbox.cs:30
Core.Scripting-004 Medium Resolved Correctness & logic bugs DependencyExtractor.cs:73
Core.Scripting-007 Medium Resolved Error handling & resilience TimedScriptEvaluator.cs:60
Core.Scripting-010 Medium Resolved Testing coverage tests/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting.Tests/ScriptSandboxTests.cs:54
Core.VirtualTags-002 Medium Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/VirtualTagEngine.cs:237
Core.VirtualTags-003 Medium Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/VirtualTagEngine.cs:117-120
Core.VirtualTags-005 Medium Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/VirtualTagSource.cs:50-64
Core.VirtualTags-008 Medium Resolved Performance & resource management src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/DependencyGraph.cs:81-115
Core.VirtualTags-012 Medium Resolved Testing coverage tests/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags.Tests/
Driver.AbCip-004 Medium Resolved Correctness & logic bugs AbCipDataType.cs:51-58, LibplctagTagRuntime.cs:47-49,53
Driver.AbCip-005 Medium Resolved Correctness & logic bugs AbCipDriver.cs:124-141
Driver.AbCip-006 Medium Resolved OtOpcUa conventions PlcTagHandle.cs:28-59, AbCipDriver.cs:806-807,832-833, LibplctagTagRuntime.cs:117
Driver.AbCip-009 Medium Resolved Concurrency & thread safety AbCipDriver.cs:621-648, AbCipDriver.cs:591-614
Driver.AbCip-010 Medium Resolved Error handling & resilience AbCipDriver.cs:621-648, AbCipDriver.cs:346-391
Driver.AbCip-014 Medium Resolved Testing coverage tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Tests/AbCipStatusMapperTests.cs:28-40
Driver.AbCip.Cli-001 Medium Resolved Error handling & resilience src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Cli/Commands/WriteCommand.cs:70-85
Driver.AbCip.Cli-002 Medium Resolved Correctness & logic bugs src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Cli/Commands/ProbeCommand.cs:21-23; Commands/ReadCommand.cs:24-25; Commands/SubscribeCommand.cs:20-22
Driver.AbLegacy-002 Medium Resolved Correctness & logic bugs AbLegacyDriver.cs:368
Driver.AbLegacy-003 Medium Resolved Correctness & logic bugs AbLegacyAddress.cs:62-95
Driver.AbLegacy-004 Medium Resolved Correctness & logic bugs LibplctagLegacyTagRuntime.cs:36-37
Driver.AbLegacy-007 Medium Resolved Concurrency & thread safety AbLegacyDriver.cs:411-438, AbLegacyDriver.cs:386-409
Driver.AbLegacy-008 Medium Resolved Concurrency & thread safety AbLegacyDriver.cs:21, AbLegacyDriver.cs:138-146, AbLegacyDriver.cs:216-229
Driver.AbLegacy-009 Medium Resolved Error handling & resilience AbLegacyDriver.cs:41-74
Driver.AbLegacy-010 Medium Resolved Error handling & resilience AbLegacyStatusMapper.cs:26-56
Driver.AbLegacy-012 Medium Resolved Design-document adherence PlcFamilies/AbLegacyPlcFamilyProfile.cs:7-54, AbLegacyDriver.cs:48-52
Driver.AbLegacy.Cli-001 Medium Resolved Error handling & resilience Commands/WriteCommand.cs:46, Commands/WriteCommand.cs:62-72
Driver.Cli.Common-002 Medium Resolved Correctness & logic bugs src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Cli.Common/SnapshotFormatter.cs:101-122
Driver.Cli.Common-003 Medium Resolved Concurrency & thread safety src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Cli.Common/DriverCommandBase.cs:51-59
Driver.Cli.Common-005 Medium Resolved Testing coverage tests/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Cli.Common.Tests/SnapshotFormatterTests.cs:27-37
Driver.FOCAS-003 Medium Resolved Correctness & logic bugs FocasDriver.cs:71-79
Driver.FOCAS-004 Medium Resolved OtOpcUa conventions FocasDriver.cs:374-379, WireFocasClient.cs:48-50
Driver.FOCAS-005 Medium Resolved Concurrency & thread safety FocasDriver.cs:28, FocasDriver.cs:206-215, FocasDriver.cs:261, FocasDriver.cs:274
Driver.FOCAS-006 Medium Resolved Error handling & resilience FocasDriver.cs:859-874, WireFocasClient.cs:22-31
Driver.FOCAS-012 Medium Resolved Testing coverage FocasDriverFactoryExtensions.cs, FocasDriver.cs:495-629 (FixedTreeLoopAsync)
Driver.Galaxy-003 Medium Resolved Correctness & logic bugs Runtime/StatusCodeMap.cs:86
Driver.Galaxy-004 Medium Resolved Correctness & logic bugs GalaxyDriver.cs:901
Driver.Galaxy-006 Medium Resolved Concurrency & thread safety GalaxyDriver.cs:848-861
Driver.Galaxy-007 Medium Resolved Concurrency & thread safety GalaxyDriver.cs:937-968
Driver.Galaxy-009 Medium Resolved Error handling & resilience GalaxyDriver.cs:354-371
Driver.Galaxy-011 Medium Resolved Performance & resource management GalaxyDriver.cs:411
Driver.Galaxy-014 Medium Resolved Testing coverage src/Drivers/ZB.MOM.WW.OtOpcUa.Driver.Galaxy (module-wide)
Driver.Historian.Wonderware-002 Medium Resolved Correctness and logic bugs Ipc/HistorianFrameHandler.cs:162, :181
Driver.Historian.Wonderware-003 Medium Resolved Correctness and logic bugs Backend/HistorianDataSource.cs:320-323, :457-460
Driver.Historian.Wonderware-006 Medium Resolved Error handling and resilience Ipc/PipeServer.cs:120-128
Driver.Historian.Wonderware-009 Medium Resolved Performance and resource management Backend/HistorianDataSource.cs:382-395, Ipc/Contracts.cs:85-99
Driver.Historian.Wonderware.Client-002 Medium Resolved Correctness & logic bugs WonderwareHistorianClient.cs:154-199, IAlarmHistorianSink.cs:66-74
Driver.Historian.Wonderware.Client-005 Medium Resolved Error handling & resilience Ipc/FrameReader.cs:31-32
Driver.Historian.Wonderware.Client-007 Medium Resolved Security WonderwareHistorianClient.cs:276
Driver.Historian.Wonderware.Client-009 Medium Resolved Testing coverage tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.Historian.Wonderware.Client.Tests/WonderwareHistorianClientTests.cs
Driver.Modbus-002 Medium Resolved Correctness & logic bugs ModbusDriver.cs:127-186
Driver.Modbus-004 Medium Resolved Performance & resource management ModbusDriver.cs:1468-1473
Driver.Modbus-005 Medium Resolved Correctness & logic bugs ModbusDriver.cs:777-798,323-330
Driver.Modbus-006 Medium Resolved Error handling & resilience ModbusDriver.cs:514-524,532-550
Driver.Modbus.Addressing-002 Medium Resolved Correctness & logic bugs ModbusAddressParser.cs:86-94
Driver.Modbus.Addressing-003 Medium Resolved Correctness & logic bugs ModbusAddressParser.cs:405-406, ModbusAddressParser.cs:128
Driver.Modbus.Addressing-004 Medium Resolved Correctness & logic bugs ModbusAddressParser.cs:182-194
Driver.Modbus.Addressing-005 Medium Resolved Error handling & resilience ModbusAddressParser.cs:200-213
Driver.Modbus.Addressing-008 Medium Resolved Testing coverage tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Addressing.Tests/
Driver.Modbus.Cli-001 Medium Resolved Correctness & logic bugs src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Cli/Commands/SubscribeCommand.cs:43-51
Driver.Modbus.Cli-002 Medium Resolved Correctness & logic bugs src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Cli/Commands/WriteCommand.cs:54-89
Driver.OpcUaClient-006 Medium Resolved Concurrency & thread safety OpcUaClientDriver.cs:1330-1359
Driver.OpcUaClient-007 Medium Resolved Concurrency & thread safety OpcUaClientDriver.cs:1374, :1376-1383, :508
Driver.OpcUaClient-008 Medium Resolved Error handling & resilience OpcUaClientDriver.cs:1092-1099
Driver.OpcUaClient-009 Medium Resolved Error handling & resilience OpcUaClientDriver.cs:560-564
Driver.OpcUaClient-010 Medium Resolved Correctness & logic bugs OpcUaClientDriver.cs:823-824
Driver.OpcUaClient-012 Medium Resolved Security OpcUaClientDriver.cs:210-217
Driver.OpcUaClient-013 Medium Resolved Performance & resource management OpcUaClientDriver.cs:436-437
Driver.OpcUaClient-015 Medium Resolved Testing coverage tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.OpcUaClient.Tests/*, tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.OpcUaClient.IntegrationTests/OpcUaClientSmokeTests.cs
Driver.S7-002 Medium Resolved Correctness & logic bugs S7Driver.cs:350
Driver.S7-004 Medium Resolved OtOpcUa conventions S7Driver.cs (whole file)
Driver.S7-008 Medium Resolved Error handling & resilience S7Driver.cs:286
Driver.S7-012 Medium Resolved Design-document adherence S7DriverOptions.cs:59, S7Driver.cs:457
Driver.S7-014 Medium Resolved Testing coverage tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.S7.Tests/
Driver.S7.Cli-001 Medium Resolved Error handling & resilience src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.S7.Cli/Commands/WriteCommand.cs:65-80
Driver.S7.Cli-002 Medium Resolved Design-document adherence src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.S7.Cli/Commands/ReadCommand.cs:22-29, Commands/WriteCommand.cs:21-33, Commands/SubscribeCommand.cs:18-21; docs/Driver.S7.Cli.md:70-73,80-81
Driver.S7.Cli-003 Medium Resolved Error handling & resilience src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.S7.Cli/Commands/ProbeCommand.cs:38-50
Driver.TwinCAT-003 Medium Resolved Correctness & logic bugs AdsTwinCATClient.cs:264-281, 283-300
Driver.TwinCAT-005 Medium Resolved OtOpcUa conventions TwinCATDriver.cs (whole file), AdsTwinCATClient.cs (whole file)
Driver.TwinCAT-009 Medium Resolved Concurrency & thread safety TwinCATDriver.cs:80-99, 41-72, 366-388
Driver.TwinCAT-010 Medium Resolved Error handling & resilience AdsTwinCATClient.cs:178-195
Driver.TwinCAT-011 Medium Resolved Error handling & resilience TwinCATStatusMapper.cs:29-42
Driver.TwinCAT-012 Medium Resolved Performance & resource management TwinCATDriver.cs:102, AdsTwinCATClient.cs:178-195
Server-003 Medium Resolved Correctness & logic bugs src/Server/ZB.MOM.WW.OtOpcUa.Server/Phase7/RingBufferHistoryWriter.cs:96-119
Server-005 Medium Resolved Concurrency & thread safety src/Server/ZB.MOM.WW.OtOpcUa.Server/Alarms/AlarmConditionService.cs:166, src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/DriverNodeManager.cs:303-311
Server-007 Medium Resolved Error handling & resilience src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OpcUaApplicationHost.cs:179-183
Server-010 Medium Resolved Security src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OpcUaServerOptions.cs:59, src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OpcUaApplicationHost.cs:284-291
Server-011 Medium Resolved Security src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OpcUaApplicationHost.cs:322-346
Server-013 Medium Resolved Design-document adherence src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OpcUaServerOptions.cs:9-19, src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OpcUaApplicationHost.cs:296-346, src/Server/ZB.MOM.WW.OtOpcUa.Server/Program.cs:89
Admin-010 Low Resolved OtOpcUa conventions Components/App.razor:9,16
Admin-011 Low Resolved Concurrency & thread safety Hubs/FleetStatusPoller.cs:24-26,98-103
Admin-012 Low Resolved Design-document adherence Services/EquipmentCsvImporter.cs:18-19,33-37,229,232
Analyzers-002 Low Resolved Correctness & logic bugs src/Tooling/ZB.MOM.WW.OtOpcUa.Analyzers/UnwrappedCapabilityCallAnalyzer.cs:46-50,130
Analyzers-003 Low Resolved Error handling & resilience src/Tooling/ZB.MOM.WW.OtOpcUa.Analyzers/UnwrappedCapabilityCallAnalyzer.cs:80,114-116
Analyzers-004 Low Resolved Performance & resource management src/Tooling/ZB.MOM.WW.OtOpcUa.Analyzers/UnwrappedCapabilityCallAnalyzer.cs:95-112
Analyzers-005 Low Resolved Design-document adherence src/Tooling/ZB.MOM.WW.OtOpcUa.Analyzers/UnwrappedCapabilityCallAnalyzer.cs:33-43
Analyzers-007 Low Resolved Documentation & comments src/Tooling/ZB.MOM.WW.OtOpcUa.Analyzers/UnwrappedCapabilityCallAnalyzer.cs:21-26
Client.CLI-002 Low Resolved Correctness & logic bugs Commands/SubscribeCommand.cs:129-137
Client.CLI-003 Low Resolved Correctness & logic bugs Commands/BrowseCommand.cs:29-30, Commands/SubscribeCommand.cs:20-27, Commands/AlarmsCommand.cs:28-29, Commands/HistoryReadCommand.cs:42-43
Client.CLI-004 Low Resolved OtOpcUa conventions Commands/SubscribeCommand.cs:13-37
Client.CLI-006 Low Resolved Error handling & resilience Commands/HistoryReadCommand.cs:73, Commands/HistoryReadCommand.cs:76, Helpers/NodeIdParser.cs:39
Client.CLI-007 Low Resolved Performance & resource management CommandBase.cs:112-123
Client.CLI-008 Low Resolved Documentation & comments docs/Client.CLI.md:158-217
Client.CLI-009 Low Resolved Code organization & conventions Commands/SubscribeCommand.cs:66-165, Commands/AlarmsCommand.cs:52-91
Client.CLI-010 Low Resolved Testing coverage tests/Client/ZB.MOM.WW.OtOpcUa.Client.CLI.Tests/SubscribeCommandTests.cs
Client.Shared-003 Low Resolved Correctness & logic bugs Adapters/DefaultSessionAdapter.cs:76, Adapters/DefaultSessionAdapter.cs:273
Client.Shared-004 Low Resolved OtOpcUa conventions Adapters/DefaultSessionAdapter.cs:228, Adapters/DefaultSessionAdapter.cs:121, Adapters/DefaultSessionAdapter.cs:172
Client.Shared-009 Low Resolved Error handling & resilience / Documentation & comments OpcUaClientService.cs:302-322
Client.Shared-010 Low Resolved Performance & resource management Models/ConnectionSettings.cs:48, OpcUaClientService.cs:408-417
Client.Shared-011 Low Resolved Testing coverage tests/Client/ZB.MOM.WW.OtOpcUa.Client.Shared.Tests/OpcUaClientServiceTests.cs
Client.UI-003 Low Resolved OtOpcUa conventions ZB.MOM.WW.OtOpcUa.Client.UI.csproj:20-21, Program.cs:14-20
Client.UI-004 Low Resolved OtOpcUa conventions Views/MainWindow.axaml.cs:125-138
Client.UI-006 Low Resolved Error handling & resilience ViewModels/MainWindowViewModel.cs:244-252, ViewModels/AlarmsViewModel.cs:88-112, ViewModels/SubscriptionsViewModel.cs:79-94
Client.UI-009 Low Resolved Design-document adherence ViewModels/HistoryViewModel.cs:44-54
Client.UI-010 Low Resolved Code organization & conventions Controls/DateTimeRangePicker.axaml.cs:33-37, Controls/DateTimeRangePicker.axaml.cs:70-80
Client.UI-011 Low Resolved Documentation & comments Views/MainWindow.axaml:81, Services/JsonSettingsService.cs:11-15
Configuration-004 Low Resolved OtOpcUa conventions src/Core/ZB.MOM.WW.OtOpcUa.Configuration/Enums/NodePermissions.cs:8, src/Core/ZB.MOM.WW.OtOpcUa.Configuration/OtOpcUaConfigDbContext.cs:417
Configuration-005 Low Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Configuration/LocalCache/LiteDbConfigCache.cs:50
Configuration-007 Low Resolved Error handling & resilience src/Core/ZB.MOM.WW.OtOpcUa.Configuration/Apply/GenerationApplier.cs:44
Configuration-010 Low Resolved Security src/Core/ZB.MOM.WW.OtOpcUa.Configuration/LocalCache/ResilientConfigReader.cs:81
Configuration-011 Low Resolved Testing coverage src/Core/ZB.MOM.WW.OtOpcUa.Configuration/Apply/GenerationApplier.cs:7, src/Core/ZB.MOM.WW.OtOpcUa.Configuration/Validation/DraftValidator.cs:60
Core-004 Low Resolved OtOpcUa conventions src/Core/ZB.MOM.WW.OtOpcUa.Core/Hosting/DriverHost.cs:55,72,87
Core-008 Low Resolved Error handling & resilience src/Core/ZB.MOM.WW.OtOpcUa.Core/OpcUa/GenericDriverNodeManager.cs:42-64
Core-009 Low Resolved Performance & resource management src/Core/ZB.MOM.WW.OtOpcUa.Core/Resilience/CapabilityInvoker.cs:121-128
Core-010 Low Resolved Code organization & conventions src/Core/ZB.MOM.WW.OtOpcUa.Core/Resilience/DriverResilienceOptions.cs:45-52
Core-011 Low Resolved Testing coverage src/Core/ZB.MOM.WW.OtOpcUa.Core/Authorization/PermissionTrieBuilder.cs:58-75
Core-012 Low Resolved Documentation & comments src/Core/ZB.MOM.WW.OtOpcUa.Core/Stability/WedgeDetector.cs:26, src/Core/ZB.MOM.WW.OtOpcUa.Core/Observability/DriverHealthReport.cs:11-22
Core.Abstractions-004 Low Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/DriverTypeRegistry.cs:23-40
Core.Abstractions-005 Low Resolved Error handling & resilience src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/PollGroupEngine.cs:90,99
Core.Abstractions-006 Low Resolved Code organization & conventions src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/IHistoryProvider.cs:63,84-86, src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/Historian/IHistorianDataSource.cs:30,63
Core.Abstractions-007 Low Resolved Testing coverage tests/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions.Tests/PollGroupEngineTests.cs
Core.Abstractions-008 Low Resolved Documentation & comments src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/DriverHealth.cs:9, src/Core/ZB.MOM.WW.OtOpcUa.Core.Abstractions/IHistoryProvider.cs:39-43,65-69
Core.AlarmHistorian-008 Low Resolved Performance & resource management src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/SqliteStoreAndForwardSink.cs:107-127,255-278
Core.AlarmHistorian-011 Low Resolved Documentation & comments src/Core/ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian/IAlarmHistorianSink.cs:5-9,76, AlarmHistorianEvent.cs:20
Core.ScriptedAlarms-003 Low Resolved Documentation & comments ScriptedAlarmEngine.cs:343, docs/ScriptedAlarms.md:107
Core.ScriptedAlarms-006 Low Resolved Concurrency & thread safety ScriptedAlarmEngine.cs:232, ScriptedAlarmEngine.cs:369
Core.ScriptedAlarms-008 Low Resolved Performance & resource management Part9StateMachine.cs:261-268
Core.ScriptedAlarms-009 Low Resolved Performance & resource management ScriptedAlarmEngine.cs:309-315, ScriptedAlarmEngine.cs:271
Core.ScriptedAlarms-010 Low Resolved Design-document adherence ScriptedAlarmEngine.cs:325-336, AlarmPredicateContext.cs:33-40, MessageTemplate.cs:47
Core.ScriptedAlarms-011 Low Resolved Code organization & conventions Part9StateMachine.cs:275
Core.Scripting-005 Low Resolved Correctness & logic bugs DependencyExtractor.cs:97
Core.Scripting-006 Low Resolved Concurrency & thread safety CompiledScriptCache.cs:55
Core.Scripting-008 Low Resolved Performance & resource management CompiledScriptCache.cs:34, ScriptEvaluator.cs:34
Core.Scripting-009 Low Resolved Design-document adherence ForbiddenTypeAnalyzer.cs:45
Core.Scripting-011 Low Resolved Testing coverage tests/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting.Tests/
Core.VirtualTags-004 Low Resolved Correctness & logic bugs src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/VirtualTagEngine.cs:349
Core.VirtualTags-006 Low Resolved Concurrency & thread safety src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/VirtualTagEngine.cs:177-182, :395-401
Core.VirtualTags-007 Low Resolved Error handling & resilience src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/TimerTriggerScheduler.cs:58
Core.VirtualTags-009 Low Resolved Performance & resource management src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/DependencyGraph.cs:64-65, :72-73
Core.VirtualTags-010 Low Resolved Documentation & comments src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/ITagUpstreamSource.cs:18, VirtualTagContext.cs:30, VirtualTagDefinition.cs:28
Core.VirtualTags-011 Low Resolved Code organization & conventions src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/VirtualTagEngine.cs:404-409
Core.VirtualTags-013 Low Resolved Documentation & comments src/Core/ZB.MOM.WW.OtOpcUa.Core.VirtualTags/DependencyGraph.cs:266-270
Driver.AbCip-007 Low Resolved OtOpcUa conventions AbCipDriver.cs (whole file), AbCipAlarmProjection.cs, LibplctagTagRuntime.cs
Driver.AbCip-011 Low Resolved Error handling & resilience AbCipDriver.cs:144-152, AbCipDriverOptions.cs:131-143
Driver.AbCip-012 Low Resolved Performance & resource management LibplctagTemplateReader.cs:15-35, AbCipDriver.cs:88-92
Driver.AbCip-013 Low Resolved Design-document adherence AbCipDriverOptions.cs:70-73, PlcFamilies/AbCipPlcFamilyProfile.cs:13-19, LibplctagTagRuntime.cs:16-27
Driver.AbCip-015 Low Resolved Documentation & comments AbCipDriver.cs:9-11, PlcTagHandle.cs:23-27,53-58, AbCipTemplateCache.cs:12-15, IAbCipTagEnumerator.cs:6-11, AbCipDriverOptions.cs:21
Driver.AbCip.Cli-003 Low Resolved Concurrency & thread safety src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Cli/Commands/SubscribeCommand.cs:50-56,60-61
Driver.AbCip.Cli-004 Low Resolved Error handling & resilience src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Cli/Commands/SubscribeCommand.cs:28,58; AbCipCommandBase.cs:26-34
Driver.AbCip.Cli-005 Low Resolved Performance & resource management src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Cli.Common/DriverCommandBase.cs:51-59
Driver.AbCip.Cli-006 Low Resolved Design-document adherence src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Cli/AbCipCommandBase.cs:29-34
Driver.AbCip.Cli-007 Low Resolved Testing coverage tests/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Cli.Tests/WriteCommandParseValueTests.cs
Driver.AbCip.Cli-008 Low Resolved Documentation & comments docs/Driver.AbCip.Cli.md:8-9
Driver.AbLegacy-005 Low Resolved OtOpcUa conventions AbLegacyDriver.cs (whole file)
Driver.AbLegacy-011 Low Resolved Performance & resource management AbLegacyDriver.cs:440
Driver.AbLegacy-013 Low Resolved Code organization & conventions AbLegacyDriver.cs:340-345, AbLegacyDriver.cs:238-264
Driver.AbLegacy.Cli-002 Low Resolved Correctness & logic bugs Commands/WriteCommand.cs:27-29, Program.cs:6-9
Driver.AbLegacy.Cli-003 Low Resolved Concurrency & thread safety Commands/SubscribeCommand.cs:47-53
Driver.AbLegacy.Cli-004 Low Resolved Error handling & resilience Commands/ProbeCommand.cs:37-56, Commands/ReadCommand.cs:39-50, Commands/WriteCommand.cs:48-59, Commands/SubscribeCommand.cs:41-76
Driver.AbLegacy.Cli-005 Low Resolved Design-document adherence Commands/SubscribeCommand.cs:23-25, docs/Driver.AbLegacy.Cli.md:94-96
Driver.AbLegacy.Cli-006 Low Resolved Code organization & conventions Commands/ProbeCommand.cs:20-22
Driver.AbLegacy.Cli-007 Low Resolved Testing coverage tests/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy.Cli.Tests/WriteCommandParseValueTests.cs
Driver.Cli.Common-004 Low Resolved Error handling & resilience src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Cli.Common/SnapshotFormatter.cs:68-70
Driver.Cli.Common-006 Low Resolved Documentation & comments src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Cli.Common/SnapshotFormatter.cs:71, src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Cli.Common/DriverCommandBase.cs:9
Driver.FOCAS-007 Low Resolved Error handling & resilience FocasDriver.cs:140-148, FocasDriver.cs:478-484, FocasDriver.cs:529-533, FocasAlarmProjection.cs:61-63
Driver.FOCAS-008 Low Resolved Performance & resource management FocasDriver.cs:201, FocasDriver.cs:253
Driver.FOCAS-009 Low Resolved Design-document adherence FocasDriverOptions.cs:110-115, FocasDriver.cs:468-486, FocasDriverFactoryExtensions.cs:75-80
Driver.FOCAS-010 Low Resolved Code organization & conventions IFocasClient.cs:210-227 (FocasOpMode), FocasConstants.cs:42-78 (FocasOperationMode)
Driver.FOCAS-011 Low Resolved Code organization & conventions IFocasClient.cs:275-287 (FocasAlarmType), FocasAlarmProjection.cs:149-175
Driver.FOCAS.Cli-001 Low Resolved Error handling & resilience Commands/WriteCommand.cs:58-68
Driver.FOCAS.Cli-002 Low Resolved Concurrency & thread safety Commands/SubscribeCommand.cs:45-51
Driver.FOCAS.Cli-003 Low Resolved Error handling & resilience FocasCommandBase.cs:19 (CncPort), FocasCommandBase.cs:27 (TimeoutMs), Commands/SubscribeCommand.cs:23 (IntervalMs)
Driver.FOCAS.Cli-004 Low Resolved Performance & resource management Commands/ProbeCommand.cs:37,54; Commands/ReadCommand.cs:37,46; Commands/WriteCommand.cs:45,54; Commands/SubscribeCommand.cs:39,73
Driver.FOCAS.Cli-005 Low Resolved Design-document adherence Commands/WriteCommand.cs:50, Commands/ProbeCommand.cs:50 (via SnapshotFormatter.FormatStatus)
Driver.Galaxy-005 Low Resolved OtOpcUa conventions Runtime/EventPump.cs:81-88
Driver.Galaxy-010 Low Resolved Security GalaxyDriver.cs:311-341
Driver.Galaxy-012 Low Resolved Performance & resource management Runtime/SubscriptionRegistry.cs:65-67, GalaxyDriver.cs:538, GalaxyDriver.cs:675
Driver.Galaxy-013 Low Resolved Design-document adherence GalaxyDriver.cs:14-27, GalaxyDriver.cs:374-382, Config/GalaxyDriverOptions.cs:84-86
Driver.Historian.Wonderware-004 Low Resolved Correctness and logic bugs Backend/SdkAlarmHistorianWriteBackend.cs:198-201
Driver.Historian.Wonderware-005 Low Resolved Concurrency and thread safety Backend/HistorianDataSource.cs:124, :126-127
Driver.Historian.Wonderware-007 Low Resolved Error handling and resilience Ipc/PipeServer.cs:70-75
Driver.Historian.Wonderware-008 Low Resolved Error handling and resilience Backend/HistorianDataSource.cs:301-307, :374-380
Driver.Historian.Wonderware-010 Low Resolved Performance and resource management Backend/HistorianConfiguration.cs:32-36, Backend/HistorianDataSource.cs (all read methods)
Driver.Historian.Wonderware-011 Low Resolved Design-document adherence Backend/HistorianDataSource.cs:9-12, Backend/IHistorianDataSource.cs:9-11, Backend/HistorianSample.cs:7-9, Backend/HistorianConfiguration.cs:7-9
Driver.Historian.Wonderware-012 Low Resolved Testing coverage Backend/HistorianDataSource.cs, tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.Historian.Wonderware.Tests/
Driver.Historian.Wonderware.Client-003 Low Resolved Concurrency & thread safety WonderwareHistorianClient.cs:207, WonderwareHistorianClient.cs:132-150
Driver.Historian.Wonderware.Client-004 Low Resolved Concurrency & thread safety WonderwareHistorianClient.cs:203-267
Driver.Historian.Wonderware.Client-006 Low Resolved Error handling & resilience Internal/PipeChannel.cs:96-107, WonderwareHistorianClientOptions.cs:11-12
Driver.Historian.Wonderware.Client-008 Low Resolved Security ZB.MOM.WW.OtOpcUa.Driver.Historian.Wonderware.Client.csproj:29-32
Driver.Historian.Wonderware.Client-010 Low Resolved Documentation & comments WonderwareHistorianClient.cs:355-361, WonderwareHistorianClient.cs:132-150
Driver.Modbus-003 Low Resolved Concurrency & thread safety ModbusDriver.cs:59,188,241,259,266,726,745,759
Driver.Modbus-007 Low Resolved Design-document adherence ModbusDriver.cs:1392, ModbusDriverOptions.cs:74-80
Driver.Modbus-008 Low Resolved Documentation & comments ModbusDriver.cs:411-417,700-703,737-744
Driver.Modbus-009 Low Resolved Correctness & logic bugs ModbusDriver.cs:1160-1167, ModbusTcpTransport.cs:94-95
Driver.Modbus-010 Low Resolved Error handling & resilience ModbusDriver.cs:864-868, ModbusDriverOptions.cs:116-125
Driver.Modbus-011 Low Resolved Code organization & conventions ModbusDriver.cs:23-43,89-97,408-432
Driver.Modbus-012 Low Resolved Testing coverage tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Tests/
Driver.Modbus.Addressing-006 Low Resolved Error handling & resilience ModbusAddressParser.cs:297-301
Driver.Modbus.Addressing-007 Low Resolved Design-document adherence ModbusDataType.cs:91-95, docs/v2/dl205.md section Strings
Driver.Modbus.Addressing-009 Low Resolved Documentation & comments ModbusModiconAddress.cs:55-64, ModbusModiconAddress.cs:104-110
Driver.Modbus.Cli-003 Low Resolved Correctness & logic bugs src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Cli/ModbusCommandBase.cs:14-24
Driver.Modbus.Cli-004 Low Resolved Concurrency & thread safety src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Cli/Commands/SubscribeCommand.cs:61-67
Driver.Modbus.Cli-005 Low Resolved Error handling & resilience src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Cli/Commands/ProbeCommand.cs:21-54; Commands/ReadCommand.cs:46-75; Commands/WriteCommand.cs:54-89
Driver.Modbus.Cli-006 Low Resolved Error handling & resilience src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Cli/Commands/ProbeCommand.cs:35-53
Driver.Modbus.Cli-007 Low Resolved Design-document adherence docs/Driver.Modbus.Cli.md:124-156; src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Cli/Commands/ReadCommand.cs
Driver.Modbus.Cli-008 Low Resolved Testing coverage tests/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.Modbus.Cli.Tests/
Driver.OpcUaClient-011 Low Resolved Documentation & comments OpcUaClientDriver.cs:1007-1015
Driver.OpcUaClient-014 Low Resolved Performance & resource management OpcUaClientDriver.cs:1138, :1314
Driver.S7-003 Low Resolved Correctness & logic bugs S7Driver.cs:172, S7Driver.cs:255
Driver.S7-005 Low Resolved OtOpcUa conventions S7Driver.cs:33, S7Driver.cs:433
Driver.S7-009 Low Resolved Error handling & resilience S7Driver.cs:392
Driver.S7-010 Low Resolved Performance & resource management S7Driver.cs:504
Driver.S7-013 Low Resolved Code organization & conventions S7DriverOptions.cs:90, S7Driver.cs:300
Driver.S7.Cli-004 Low Resolved Performance & resource management src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.S7.Cli/Commands/ProbeCommand.cs:36,53, Commands/ReadCommand.cs:45,54, Commands/WriteCommand.cs:51,60, Commands/SubscribeCommand.cs:39,73
Driver.S7.Cli-005 Low Resolved Code organization & conventions tests/ZB.MOM.WW.OtOpcUa.Driver.S7.Cli.Tests/
Driver.S7.Cli-006 Low Resolved Testing coverage tests/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.S7.Cli.Tests/WriteCommandParseValueTests.cs
Driver.S7.Cli-007 Low Resolved Documentation & comments src/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.S7.Cli/Commands/SubscribeCommand.cs:45-51
Driver.TwinCAT-004 Low Resolved Correctness & logic bugs TwinCATDataType.cs:24-27
Driver.TwinCAT-006 Low Resolved OtOpcUa conventions TwinCATDriver.cs:406-411
Driver.TwinCAT-014 Low Resolved Design-document adherence TwinCATDriverOptions.cs:41-43, TwinCATDriverOptions.cs:57-62, AdsTwinCATClient.cs:145
Driver.TwinCAT-015 Low Resolved Code organization & conventions TwinCATDriver.cs:431-432
Driver.TwinCAT-016 Low Resolved Testing coverage tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT.Tests/
Driver.TwinCAT.Cli-001 Low Resolved Correctness & logic bugs TwinCATCommandBase.cs:23-24, Commands/SubscribeCommand.cs:23-24, Commands/BrowseCommand.cs:21-24
Driver.TwinCAT.Cli-002 Low Resolved Concurrency & thread safety Commands/SubscribeCommand.cs:46-58
Driver.TwinCAT.Cli-003 Low Resolved Error handling & resilience Commands/SubscribeCommand.cs:56-58
Driver.TwinCAT.Cli-004 Low Resolved Design-document adherence TwinCATCommandBase.cs:26-29, Commands/BrowseCommand.cs
Driver.TwinCAT.Cli-005 Low Resolved Code organization & conventions Commands/ProbeCommand.cs:23, Commands/ReadCommand.cs:20, Commands/WriteCommand.cs:20, Commands/SubscribeCommand.cs:18
Driver.TwinCAT.Cli-006 Low Resolved Testing coverage tests/Drivers/Cli/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT.Cli.Tests/WriteCommandParseValueTests.cs
Driver.TwinCAT.Cli-007 Low Resolved Documentation & comments TwinCATCommandBase.cs:31-36
Server-004 Low Resolved OtOpcUa conventions src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OtOpcUaServer.cs:187-200
Server-006 Low Resolved Concurrency & thread safety src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/DriverNodeManager.cs:478-482, 1342-1348
Server-008 Low Resolved Error handling & resilience src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/DriverNodeManager.cs:736
Server-012 Low Resolved Performance & resource management src/Server/ZB.MOM.WW.OtOpcUa.Server/Hosting/PeerHttpProbeLoop.cs:78-79
Server-014 Low Resolved Code organization & conventions src/Server/ZB.MOM.WW.OtOpcUa.Server/SealedBootstrap.cs
Server-015 Low Resolved Documentation & comments src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OtOpcUaServer.cs:16-21, src/Server/ZB.MOM.WW.OtOpcUa.Server/OpcUa/OpcUaServerOptions.cs:21-26