2671639250
- Server-057: extend []-suffix normalization to AddItemBulk/AddBufferedItem so bulk-added array tags bind write-capable handles (authz check, worker bind, and registration kept consistent); update gateway.md + client READMEs. Tests: AddItemBulk/AddBufferedItem wiring. - Server-058: assert []-fallback-resolved bare array names are still denied when out of read/write scope and that MaxWriteClassification is enforced on suffixed array registrations. - Contracts-023/024/025: round-trip + field-19 descriptor pin for MxSparseArray; document MxSparseArray in docs/Contracts.md; enumerate it in the protocol-version-3 test summary. - Tests-040: add wiring tests for the six uncovered sparse-write arms (WriteSecured, Write2, WriteSecured2, Write2Bulk, WriteSecuredBulk, WriteSecured2Bulk). dotnet build + targeted tests green (184 passed).
Code Reviews
Cross-module code review index for the mxaccessgw codebase. 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 |
|---|---|---|---|---|---|---|
| Client.Dotnet | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 1 | 30 |
| Client.Go | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 3 | 37 |
| Client.Java | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 3 | 51 |
| Client.Python | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 2 | 38 |
| Client.Rust | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 2 | 40 |
| Contracts | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 3 | 25 |
| IntegrationTests | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 0 | 33 |
| Server | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 2 | 58 |
| Tests | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 1 | 40 |
| Worker | Claude Code | 2026-06-16 | 8df5ab3 |
Re-reviewed | 0 | 28 |
| Worker.Tests | Claude Code | 2026-06-18 | 88915c3 |
Re-reviewed | 0 | 36 |
Pending findings
Findings with status Open or In Progress, ordered by severity.
| ID | Severity | Category | Location | Description |
|---|---|---|---|---|
| Client.Dotnet-030 | Medium | Correctness & logic bugs | clients/dotnet/ZB.MOM.WW.MxGateway.Client.Cli/MxGatewayClientCli.cs:91-93,113,2023-2050 |
advise-supervisory was added to the command switch dispatch table at line 113 but was not added to IsKnownGatewayCommand (the exhaustive list at lines 2023–2050). The guard at line 91 evaluates IsKnownGatewayCommand(command) before… |
| Server-057 | Medium | Correctness & logic bugs | src/ZB.MOM.WW.MxGateway.Server/Sessions/GatewaySession.cs:976-1000 (NormalizeOutboundCommand), :1085-1095 (MapCommand tracking), gateway.md (array-write ergonomics section), clients/*/README.md |
The array-suffix [] normalization runs only for the single-add commands AddItem and AddItem2 — NormalizeOutboundCommand has no case for AddItemBulk (or AddBufferedItem), and the MapCommand tracking switch likewise normalizes… |
| Client.Go-035 | Low | Code organization & conventions | clients/go/cmd/mxgw-go/main.go:1298, clients/go/README.md:328-355 |
advise-supervisory is wired into the run() dispatch switch at main.go:91-92 but is absent from two surfaces a user consults to discover CLI commands: 1. writeUsage() at main.go:1298 does not list advise-supervisory in its pipe-… |
| Client.Go-036 | Low | Testing coverage | clients/go/cmd/mxgw-go/main_test.go, clients/go/cmd/mxgw-go/main.go:364-399 |
runAdviseSupervisory has no CLI-level test in main_test.go. In particular the session-id-required guard at main.go:376-378 is untested, unlike every other guard for session-id-required commands (e.g. `TestRunStreamEventsRequiresSessi… |
| Client.Go-037 | Low | Documentation & comments | clients/go/README.md:136-137 |
The README "Write Semantics" section states: > The CLI exposes the same command as advise-supervisory, and write / write2 take --user-id. The Go CLI has no standalone write2 command — only write2-bulk. The analogous statement i… |
| Client.Java-049 | Low | Code organization & conventions | clients/java/build.gradle:16, clients/java/zb-mom-ww-mxgateway-client/src/main/java/com/zb/mom/ww/mxgateway/client/MxGatewayClientVersion.java:12, clients/java/zb-mom-ww-mxgateway-cli/src/test/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCliTests.java:59,89, clients/java/README.md:399 |
Commit 88915c3 (chore(clients): bump all five clients 0.1.1 -> 0.1.2) incremented build.gradle version = '0.1.2' but left MxGatewayClientVersion.CLIENT_VERSION = "0.1.1" unchanged. The two CLI test assertions that check the versi… |
| Client.Java-050 | Low | Testing coverage | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:1046-1068 (new AdviseSupervisoryCommand), clients/java/zb-mom-ww-mxgateway-cli/src/test/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCliTests.java:1306-1313 (stub) |
Commit 9eedf9d added the advise-supervisory CLI subcommand (AdviseSupervisoryCommand) to all language client CLIs. The Java FakeSession.adviseSupervisoryRaw stub was added to MxGatewayCliTests but no test exercises the new subcom… |
| Client.Java-051 | Low | Documentation & comments | clients/java/zb-mom-ww-mxgateway-client/src/main/java/com/zb/mom/ww/mxgateway/client/MxGatewaySession.java:622-657 |
writeArrayElements accepts int totalLength and Map<Integer, MxValue> elements whose keys are plain Java int. The proto fields MxSparseArray.total_length and MxSparseElement.index are both uint32. Java's protobuf runtime maps… |
| Client.Python-037 | Low | Correctness & logic bugs | clients/python/pyproject.toml:10 |
The description field in pyproject.toml reads "Async Python client scaffold for MXAccess Gateway." at commit 88915c3. Client.Python-001 resolved this on 2026-05-18 by removing the word "scaffold". The fix was lost when commit `397d… |
| Client.Python-038 | Low | Testing coverage | clients/python/tests/, clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:280-299,742-758 |
The new advise-supervisory CLI subcommand (commit 88915c3) has no test coverage — not even a --help smoke registration test of the kind added for stream-alarms (test_stream_alarms_is_registered) or the earlier advise command. T… |
| Client.Rust-039 | Low | Design-document adherence | clients/rust/RustClientDesign.md:101-131 (Session API block); clients/rust/RustClientDesign.md:326-353 (CLI commands table) |
The diff adds two pieces of new public surface that are not reflected in RustClientDesign.md: 1. Session::write_array_elements — a new public async method in clients/rust/src/session.rs:567-601. It accepts `element_data_type: MxDataT… |
| Client.Rust-040 | Low | Testing coverage | clients/rust/tests/client_behavior.rs:1195-1224 (sparse_int32_value helper); clients/rust/tests/client_behavior.rs:1226-1264 (unit tests using the helper) |
The sparse_int32_value test helper (lines 1195-1224) carries this comment: "Build the proto MxValue that write_array_elements would send." It then constructs the outer MxValue with data_type: MxDataType::Integer as i32 (line 1215… |
| Contracts-023 | Low | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Contracts/ProtobufContractRoundTripTests.cs |
No round-trip test or descriptor pin exists for the new MxSparseArray message, MxSparseElement message, or MxValue.KindOneofCase.SparseArrayValue (field number 19). A future renumber or type-narrowing of sparse_array_value = 19, or… |
| Contracts-024 | Low | Documentation & comments | docs/Contracts.md:9-11 |
docs/Contracts.md lists MxValue, MxArray, and MxStatusProxy as the types defined in mxaccess_gateway.proto, and documents both bulk subscription and bulk write/read command families in detail. The new MxSparseArray value arm (`… |
| Contracts-025 | Low | Documentation & comments | src/ZB.MOM.WW.MxGateway.Tests/Contracts/GatewayContractInfoTests.cs:14-25 |
The XML summary on GatewayContractInfoTests.GatewayProtocolVersion_IsVersionThree (updated under Contracts-013 resolution to enumerate the alarm and bulk write/read extensions shipped under version 3) does not mention the new `MxSparseAr… |
| Server-058 | Low | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Security/Authorization/ConstraintEnforcerTests.cs |
The new ConstraintEnforcer.ResolveTarget []-suffix fallback is security-sensitive: it turns a bare-array address that previously missed the Galaxy index (→ spurious tag_metadata deny) into a real scope/classification decision. The ad… |
| Tests-040 | Low | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Sessions/GatewayArrayWriteWiringTests.cs |
GatewayArrayWriteWiringTests covers two of eight sparse-write arms in GatewaySession.NormalizeOutboundCommand: Write (single) and WriteBulk. The remaining six arms — WriteSecured, Write2, WriteSecured2, Write2Bulk, `WriteSe… |
Closed findings
Findings with status Resolved, Won't Fix, or Deferred.
| ID | Severity | Status | Category | Location |
|---|---|---|---|---|
| Server-001 | Critical | Resolved | Security | src/MxGateway.Server/GatewayApplication.cs:147-149, src/MxGateway.Server/Dashboard/DashboardEndpointRouteBuilderExtensions.cs:55-58, src/MxGateway.Server/Dashboard/Components/Routes.razor:1-15 |
| Client.Go-001 | High | Resolved | Correctness & logic bugs | clients/go/mxgateway/errors.go:88-93, clients/go/mxgateway/errors.go:117-128 |
| Client.Java-013 | High | Resolved | Testing coverage | clients/java/mxgateway-cli/src/test/java/com/dohertylan/mxgateway/cli/MxGatewayCliTests.java:212-304, clients/java/mxgateway-cli/src/main/java/com/dohertylan/mxgateway/cli/MxGatewayCli.java:1214-1244 |
| Client.Java-032 | High | Resolved | Documentation & comments | clients/java/README.md:182-183 |
| Client.Java-039 | High | Resolved | Correctness & logic bugs | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:1699 (origin: src/ZB.MOM.WW.MxGateway.Contracts/Protos/mxaccess_gateway.proto, AlarmFeedMessage.payload provider-status arm added in commit 1d85db7) |
| Client.Python-018 | High | Resolved | Code organization & conventions | clients/python/pyproject.toml:11 |
| Client.Python-022 | High | Resolved | Documentation & comments | clients/python/README.md:201-202, clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:389-420 |
| Client.Rust-001 | High | Resolved | mxaccessgw conventions | clients/rust/src/options.rs:98,143 |
| Client.Rust-002 | High | Resolved | mxaccessgw conventions | clients/rust/src/session.rs:522 |
| Client.Rust-003 | High | Resolved | Correctness & logic bugs | clients/rust/crates/mxgw-cli/src/main.rs:1051 |
| Client.Rust-012 | High | Resolved | mxaccessgw conventions | clients/rust/src/galaxy.rs:282 |
| Client.Rust-013 | High | Resolved | mxaccessgw conventions | src/MxGateway.Contracts/Protos/mxaccess_gateway.proto:414-424 (origin); clients/rust/src/generated.rs:11-31 (suppression site) |
| Client.Rust-029 | High | Resolved | mxaccessgw conventions | clients/rust/src/options.rs:98,143; clients/rust/src/galaxy.rs:282; clients/rust/src/session.rs:664-671 |
| Client.Rust-030 | High | Resolved | Correctness & logic bugs | clients/rust/crates/mxgw-cli/src/main.rs:1731,1757 (origin: src/ZB.MOM.WW.MxGateway.Contracts/Protos/mxaccess_gateway.proto:909-924, added in commit 1d85db7) |
| IntegrationTests-001 | High | Resolved | Design-document adherence | src/MxGateway.IntegrationTests/Galaxy/LiveGalaxyRepositoryFactAttribute.cs:7, src/MxGateway.IntegrationTests/Galaxy/GalaxyRepositoryLiveTests.cs |
| IntegrationTests-002 | High | Resolved | Design-document adherence | src/MxGateway.IntegrationTests/DashboardLdapLiveTests.cs:13, src/MxGateway.Server/Configuration/LdapOptions.cs:27 |
| IntegrationTests-026 | High | Resolved | Correctness & logic bugs | src/ZB.MOM.WW.MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:1098-1101, src/ZB.MOM.WW.MxGateway.Server/Alarms/GatewayAlarmMonitor.cs:55-60 |
| Server-003 | High | Resolved | Security | src/MxGateway.Server/Dashboard/DashboardAuthorizationHandler.cs:39,54-59, src/MxGateway.Server/Dashboard/DashboardAuthenticator.cs:236-258 |
| Server-017 | High | Resolved | Security | src/MxGateway.Server/Security/Authorization/GatewayGrpcScopeResolver.cs:13-27, src/MxGateway.Server/Grpc/MxAccessGatewayService.cs:173-247, docs/Authorization.md:108-110 |
| Tests-001 | High | Resolved | Testing coverage | src/MxGateway.Tests/Gateway/Grpc/MxAccessGatewayServiceTests.cs:483-489 |
| Tests-002 | High | Resolved | Security | src/MxGateway.Tests/Gateway/Grpc/GalaxyRepositoryGrpcServiceTests.cs:198-210 |
| Worker-001 | High | Resolved | Concurrency & thread safety | src/MxGateway.Worker/MxAccess/WnWrapAlarmConsumer.cs:204-207 |
| Worker-002 | High | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:545-549 |
| Worker-003 | High | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:399-403, :416-419 |
| Worker-026 | High | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Worker/MxAccess/FailoverAlarmConsumer.cs:289-338, src/ZB.MOM.WW.MxGateway.Worker/MxAccess/MxAccessStaSession.cs:307-320 |
| Worker.Tests-001 | High | Resolved | Testing coverage | src/MxGateway.Worker.Tests/Sta/ (no StaMessagePumpTests.cs) |
| Worker.Tests-002 | High | Resolved | Testing coverage | src/MxGateway.Worker.Tests/MxAccess/MxAccessStaSessionTests.cs, src/MxGateway.Worker.Tests/MxAccess/MxAccessEventMapperTests.cs |
| Client.Dotnet-001 | Medium | Resolved | Error handling & resilience | clients/dotnet/MxGateway.Client/GrpcMxGatewayClientTransport.cs:190-199, clients/dotnet/MxGateway.Client/GrpcGalaxyRepositoryClientTransport.cs:131-140 |
| Client.Dotnet-002 | Medium | Resolved | Testing coverage | clients/dotnet/MxGateway.Client.Tests/FakeGatewayTransport.cs:145-148, clients/dotnet/MxGateway.Client.Tests/MxGatewayClientSessionTests.cs:236-256 |
| Client.Dotnet-003 | Medium | Resolved | Concurrency & thread safety | clients/dotnet/MxGateway.Client/MxGatewaySession.cs:659-663, clients/dotnet/MxGateway.Client/MxGatewayClient.cs:230-240 |
| Client.Dotnet-018 | Medium | Resolved | Documentation & comments | clients/dotnet/README.md:137-138 |
| Client.Dotnet-022 | Medium | Resolved | mxaccessgw conventions | clients/dotnet/Directory.Build.props:1-21 |
| Client.Dotnet-028 | Medium | Resolved | Security | clients/dotnet/.../MxGatewayClientCli.cs:156 |
| Client.Go-002 | Medium | Resolved | Error handling & resilience | clients/go/mxgateway/session.go:440-516 |
| Client.Go-003 | Medium | Resolved | Correctness & logic bugs | clients/go/cmd/mxgw-go/main.go:517-532 |
| Client.Go-022 | Medium | Resolved | Code organization & conventions | clients/go/cmd/mxgw-go/main.go:398-412,417-519 |
| Client.Go-023 | Medium | Resolved | Concurrency & thread safety | clients/go/cmd/mxgw-go/main.go:604-606,616-632 |
| Client.Go-028 | Medium | Resolved | Correctness & logic bugs | scripts/tag-go-module.ps1:42-46 |
| Client.Go-030 | Medium | Resolved | Concurrency & thread safety | clients/go/cmd/mxgw-go/main.go:1491-1494 |
| Client.Java-001 | Medium | Resolved | Security | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewaySecrets.java:30-32 |
| Client.Java-002 | Medium | Resolved | Concurrency & thread safety | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxEventStream.java:31,66-92 |
| Client.Java-003 | Medium | Resolved | mxaccessgw conventions | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayClient.java:119-140 |
| Client.Java-004 | Medium | Resolved | Correctness & logic bugs | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewaySession.java:114-120,157-163,191-197 |
| Client.Java-005 | Medium | Resolved | Error handling & resilience | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewaySession.java:92-105 |
| Client.Java-014 | Medium | Resolved | Concurrency & thread safety | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxEventStream.java:59-65,117-124 |
| Client.Java-015 | Medium | Resolved | Concurrency & thread safety | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayChannels.java:112-138, MxGatewayClient.java:183-191,224-232,322-329, GalaxyRepositoryClient.java:164-170,212-214 |
| Client.Java-021 | Medium | Resolved | Concurrency & thread safety | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/DeployEventStream.java:96-135 |
| Client.Java-027 | Medium | Resolved | Documentation & comments | clients/java/README.md:36,107-175,185,205,220, clients/java/JavaClientDesign.md:195-211 |
| Client.Java-028 | Medium | Resolved | Documentation & comments | clients/java/JavaClientDesign.md:23-27 |
| Client.Java-033 | Medium | Resolved | Correctness & logic bugs | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:1078-1098 |
| Client.Java-034 | Medium | Resolved | Correctness & logic bugs | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:182-198 |
| Client.Java-037 | Medium | Resolved | Documentation & comments | clients/java/README.md:138-149 |
| Client.Java-040 | Medium | Resolved | Correctness & logic bugs | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:1552-1561 |
| Client.Python-003 | Medium | Resolved | Error handling & resilience | clients/python/src/mxgateway/client.py:125-137,155-173 |
| Client.Python-005 | Medium | Resolved | Performance & resource management | clients/python/src/mxgateway/galaxy.py:117-140 |
| Client.Python-009 | Medium | Resolved | Testing coverage | clients/python/tests/ |
| Client.Python-013 | Medium | Resolved | Security | clients/python/src/mxgateway_cli/commands.py:757-762 |
| Client.Python-023 | Medium | Resolved | Security | clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:901-906 |
| Client.Python-024 | Medium | Resolved | Code organization & conventions | clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:13,48-119 |
| Client.Python-027 | Medium | Resolved | Security | clients/python/src/zb_mom_ww_mxgateway/client.py:36-54, clients/python/src/zb_mom_ww_mxgateway/galaxy.py:47-66, clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:165-172,918-930 |
| Client.Python-028 | Medium | Resolved | Error handling & resilience | clients/python/src/zb_mom_ww_mxgateway/options.py:120-130, clients/python/src/zb_mom_ww_mxgateway/client.py:59, clients/python/src/zb_mom_ww_mxgateway/galaxy.py:71 |
| Client.Python-036 | Medium | Resolved | Documentation & comments | clients/python/README.md:143-158 |
| Client.Rust-005 | Medium | Resolved | Correctness & logic bugs | clients/rust/src/session.rs:489-520 |
| Client.Rust-006 | Medium | Resolved | Error handling & resilience | clients/rust/src/session.rs:531-555 |
| Client.Rust-015 | Medium | Resolved | Error handling & resilience | clients/rust/crates/mxgw-cli/src/main.rs:1053-1070 |
| Client.Rust-016 | Medium | Resolved | Testing coverage | clients/rust/tests/client_behavior.rs, clients/rust/src/session.rs:489-519,654-768 |
| Client.Rust-018 | Medium | Resolved | Error handling & resilience | clients/rust/crates/mxgw-cli/src/main.rs:1098-1170; scripts/bench-read-bulk.ps1:347-365; siblings: clients/go/cmd/mxgw-go/main.go:600-648, clients/python/src/mxgateway_cli/commands.py:614-662, clients/dotnet/MxGateway.Client.Cli/MxGatewayClientCli.cs:685-770, clients/java/mxgateway-cli/src/main/java/com/dohertylan/mxgateway/cli/MxGatewayCli.java:855-940 |
| Client.Rust-022 | Medium | Resolved | Correctness & logic bugs | clients/rust/src/session.rs:369-391,403-420,427-444,452-469,476-493,631-696,706-724 |
| Client.Rust-024 | Medium | Resolved | Testing coverage | clients/rust/tests/client_behavior.rs:405-415; clients/rust/src/session.rs:369-493; clients/rust/src/client.rs:265-291; clients/rust/crates/mxgw-cli/src/main.rs:1310-1505 |
| Client.Rust-031 | Medium | Resolved | Error handling & resilience | clients/rust/src/options.rs:196-240 (build_tls_config); clients/rust/Cargo.toml:40 (tonic features); docs: clients/rust/src/options.rs:76-101, clients/rust/README.md (TLS trust section), clients/rust/crates/mxgw-cli/src/main.rs:429-431, clients/rust/RustClientDesign.md:202 |
| Client.Rust-033 | Medium | Resolved | Correctness & logic bugs | clients/rust/crates/mxgw-cli/src/main.rs:485 |
| Contracts-002 | Medium | Resolved | Error handling & resilience | src/MxGateway.Contracts/Protos/mxaccess_gateway.proto:384-385, :95 |
| Contracts-009 | Medium | Resolved | Design-document adherence | docs/Contracts.md:13-24 |
| IntegrationTests-003 | Medium | Resolved | Correctness & logic bugs | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:89-97 |
| IntegrationTests-004 | Medium | Resolved | Error handling & resilience | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:108-111 |
| IntegrationTests-005 | Medium | Resolved | Testing coverage | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs |
| IntegrationTests-006 | Medium | Resolved | Testing coverage | src/MxGateway.IntegrationTests/DashboardLdapLiveTests.cs |
| IntegrationTests-012 | Medium | Resolved | Correctness & logic bugs | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:147-151 |
| IntegrationTests-014 | Medium | Resolved | Testing coverage | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs |
| IntegrationTests-017 | Medium | Resolved | Correctness & logic bugs | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:350-407 |
| IntegrationTests-019 | Medium | Resolved | Security | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:497-534 |
| Server-002 | Medium | Resolved | Design-document adherence | src/MxGateway.Server/Program.cs:24, src/MxGateway.Server/GatewayApplication.cs |
| Server-004 | Medium | Resolved | Code organization & conventions | src/MxGateway.Server/Security/Authentication/ApiKeyAdminCommandLineParser.cs:227-233, src/MxGateway.Server/Security/Authentication/ApiKeyAdminCliRunner.cs:53-77, src/MxGateway.Server/Dashboard/DashboardApiKeyManagementService.cs:21-67 |
| Server-005 | Medium | Resolved | Error handling & resilience | src/MxGateway.Server/Galaxy/GalaxyHierarchyRefreshService.cs:22-28, src/MxGateway.Server/Galaxy/GalaxyHierarchyCache.cs:184 |
| Server-006 | Medium | Resolved | Correctness & logic bugs | src/MxGateway.Server/Sessions/SessionManager.cs:84-114 |
| Server-015 | Medium | Resolved | Concurrency & thread safety | src/MxGateway.Server/Sessions/GatewaySession.cs:8-15,266-308,720-775 |
| Server-016 | Medium | Resolved | Error handling & resilience | src/MxGateway.Server/Sessions/GatewaySession.cs:790-797, src/MxGateway.Server/Sessions/SessionManager.cs:237-258 |
| Server-021 | Medium | Resolved | Testing coverage | src/MxGateway.Server/Grpc/MxAccessGatewayService.cs:266-664, src/MxGateway.Tests/Gateway/Grpc/MxAccessGatewayServiceTests.cs |
| Server-030 | Medium | Resolved | Error handling & resilience | src/MxGateway.Server/Sessions/GatewaySession.cs:952-980 |
| Server-031 | Medium | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Server/Workers/WorkerClient.cs:392-443 (gateway-side heartbeat watchdog); src/ZB.MOM.WW.MxGateway.Server/Workers/WorkerClientOptions.cs:14-67 (new HeartbeatStuckCeiling option) |
| Server-032 | Medium | Resolved | Error handling & resilience | src/ZB.MOM.WW.MxGateway.Server/Workers/WorkerClient.cs:510-569 (gateway-side _events channel); src/ZB.MOM.WW.MxGateway.Server/Workers/WorkerClientOptions.cs:45-53 (EventChannelFullModeTimeout) |
| Server-033 | Medium | Resolved | Error handling & resilience | src/MxGateway.Server/Galaxy/GalaxyHierarchyCache.cs:265-323 (TryRestoreFromDiskAsync), :84-99 (_firstLoad / WaitForFirstLoadAsync); src/MxGateway.Server/Grpc/GalaxyRepositoryGrpcService.cs:141-163 (WaitForCacheBootstrap) |
| Server-038 | Medium | Resolved | Security | src/ZB.MOM.WW.MxGateway.Server/Dashboard/Hubs/EventsHub.cs:23-44 |
| Server-044 | Medium | Resolved | Correctness & logic bugs | src/ZB.MOM.WW.MxGateway.Server/Sessions/SessionManager.cs:216-254 |
| Server-051 | Medium | Resolved | Error handling & resilience | src/ZB.MOM.WW.MxGateway.Server/Alarms/AlarmWatchListResolver.cs:64-78 |
| Server-054 | Medium | Resolved | Design-document adherence | docs/DesignDecisions.md (Session Reconnect / Event Subscribers / Later Revisit Items §470-471), CLAUDE.md (Repository-Specific Conventions) |
| Server-056 | Medium | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Server/Sessions/SessionEventDistributor.cs:296-310,449-453,629-635 |
| Tests-003 | Medium | Resolved | Performance & resource management | src/MxGateway.Tests/Security/Authentication/SqliteAuthStoreTests.cs:170-176, src/MxGateway.Tests/Security/Authentication/ApiKeyAdminCliRunnerTests.cs:252-258 |
| Tests-004 | Medium | Resolved | Testing coverage | src/MxGateway.Tests/Security/Authorization/GatewayGrpcAuthorizationInterceptorTests.cs |
| Tests-005 | Medium | Resolved | Testing coverage | src/MxGateway.Tests/Gateway/Grpc/EventStreamServiceTests.cs:239-261, src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs |
| Tests-006 | Medium | Resolved | Concurrency & thread safety | src/MxGateway.Tests/Gateway/Workers/WorkerClientTests.cs:76, src/MxGateway.Tests/Gateway/Workers/FakeWorkerHarnessTests.cs:122 |
| Tests-013 | Medium | Resolved | Testing coverage | src/MxGateway.Server/Sessions/GatewaySession.cs:449-679, src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs |
| Tests-016 | Medium | Resolved | Testing coverage | src/MxGateway.Tests/Galaxy/GalaxyHierarchyCacheTests.cs:29-41,115-124 |
| Tests-020 | Medium | Resolved | Testing coverage | src/MxGateway.Tests/Gateway/Grpc/MxAccessGatewayServiceConstraintTests.cs:275-347, src/MxGateway.Server/Grpc/MxAccessGatewayService.cs:803-829 |
| Tests-026 | Medium | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Grpc/EventStreamServiceTests.cs, src/ZB.MOM.WW.MxGateway.Server/Grpc/EventStreamService.cs:123-126 |
| Tests-027 | Medium | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Grpc/MxAccessGatewayServiceTests.cs:199-240, src/ZB.MOM.WW.MxGateway.Server/Metrics/GatewayMetrics.cs:8,73,246-251 |
| Tests-032 | Medium | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Server/Alarms/GatewayAlarmMonitor.cs:435-441, src/ZB.MOM.WW.MxGateway.Tests/Alarms/GatewayAlarmMonitorProviderModeTests.cs, src/ZB.MOM.WW.MxGateway.Tests/Alarms/AlarmFailoverEndToEndTests.cs |
| Worker-004 | Medium | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:565-588 |
| Worker-005 | Medium | Resolved | Error handling & resilience | src/MxGateway.Worker/MxAccess/MxAccessStaSession.cs:205-258 (production alarm poll loop) |
| Worker-006 | Medium | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:117-124, src/MxGateway.Worker/MxAccess/MxAccessStaSession.cs:386-491 |
| Worker-007 | Medium | Resolved | mxaccessgw conventions | src/MxGateway.Worker/MxAccess/MxAccessComServer.cs:130-150 |
| Worker-008 | Medium | Resolved | Concurrency & thread safety | src/MxGateway.Worker/MxAccess/MxAccessStaSession.cs:205-249, :429-447 |
| Worker-016 | Medium | Resolved | Concurrency & thread safety | src/MxGateway.Worker/MxAccess/MxAccessStaSession.cs:261-265 |
| Worker-017 | Medium | Resolved | Error handling & resilience | src/MxGateway.Worker/Sta/StaRuntime.cs:280-288, src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:602-631 |
| Worker-023 | Medium | Resolved | Error handling & resilience | src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:610-668, src/MxGateway.Worker/MxAccess/MxAccessCommandExecutor.cs:124-153 |
| Worker-027 | Medium | Resolved | Error handling & resilience | src/ZB.MOM.WW.MxGateway.Worker/MxAccess/SyntheticAlarmGuid.cs:38-40 |
| Worker.Tests-003 | Medium | Resolved | Concurrency & thread safety | src/MxGateway.Worker.Tests/Sta/StaRuntimeTests.cs:46-48 |
| Worker.Tests-004 | Medium | Resolved | Concurrency & thread safety | src/MxGateway.Worker.Tests/MxAccess/MxAccessStaSessionTests.cs:281-329 |
| Worker.Tests-005 | Medium | Resolved | Performance & resource management | src/MxGateway.Worker.Tests/Ipc/WorkerFrameProtocolTests.cs:20-31,103-105, src/MxGateway.Worker.Tests/Ipc/WorkerPipeSessionTests.cs:28-31 |
| Worker.Tests-006 | Medium | Resolved | Performance & resource management | src/MxGateway.Worker.Tests/MxAccess/MxAccessStaSessionTests.cs:282,305,315,323 |
| Worker.Tests-007 | Medium | Resolved | Design-document adherence | docs/WorkerFrameProtocol.md:38-49 |
| Worker.Tests-016 | Medium | Resolved | Code organization & conventions | src/MxGateway.Worker.Tests/MxAccess/AlarmCommandExecutorTests.cs:317-393 |
| Worker.Tests-017 | Medium | Resolved | Testing coverage | src/MxGateway.Worker.Tests/Ipc/WorkerPipeSessionTests.cs |
| Worker.Tests-018 | Medium | Resolved | Correctness & logic bugs | src/MxGateway.Worker.Tests/MxAccess/MxAccessLiveComCreationTests.cs:18-31, 35-73, 75-145, 148-220, 222-342 |
| Worker.Tests-031 | Medium | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Worker.Tests/MxAccess/FailoverAlarmConsumerTests.cs (all FailoverSettings constructions) |
| Client.Dotnet-004 | Low | Resolved | Error handling & resilience | clients/dotnet/MxGateway.Client/MxGatewayClient.cs:283-294, clients/dotnet/MxGateway.Client/GalaxyRepositoryClient.cs:392-403 |
| Client.Dotnet-005 | Low | Resolved | Correctness & logic bugs | clients/dotnet/MxGateway.Client/MxGatewaySession.cs:82,124,175 |
| Client.Dotnet-006 | Low | Resolved | Code organization & conventions | clients/dotnet/MxGateway.Client/MxGatewayClientOptions.cs:50, clients/dotnet/MxGateway.Client/MxGatewayClientContractInfo.cs:10-14 |
| Client.Dotnet-007 | Low | Resolved | Documentation & comments | clients/dotnet/MxGateway.Client/MxGatewayClient.cs:185-192 |
| Client.Dotnet-008 | Low | Resolved | Correctness & logic bugs | clients/dotnet/MxGateway.Client.Cli/MxGatewayCliSecretRedactor.cs:9-17 |
| Client.Dotnet-009 | Low | Resolved | Concurrency & thread safety | clients/dotnet/MxGateway.Client/GalaxyRepositoryClient.cs:26,339-348,445-448 |
| Client.Dotnet-010 | Low | Resolved | Correctness & logic bugs | clients/dotnet/MxGateway.Client.Cli/MxGatewayClientCli.cs:638,896,1261,1279 |
| Client.Dotnet-011 | Low | Resolved | Concurrency & thread safety | clients/dotnet/MxGateway.Client.Cli/MxGatewayClientCli.cs:857-858,922-963,1014-1015 |
| Client.Dotnet-012 | Low | Resolved | Code organization & conventions | clients/dotnet/MxGateway.Client/MxGateway.Client.csproj, clients/dotnet/MxGateway.Client.Cli/MxGateway.Client.Cli.csproj, clients/dotnet/MxGateway.Client.Tests/MxGateway.Client.Tests.csproj |
| Client.Dotnet-013 | Low | Resolved | Code organization & conventions | clients/dotnet/MxGateway.Client/DiscoverHierarchyOptions.cs:3-24, clients/dotnet/MxGateway.Client/GalaxyRepositoryClient.cs:185-187, clients/dotnet/MxGateway.Client.Cli/IMxGatewayCliClient.cs:6 |
| Client.Dotnet-014 | Low | Resolved | Testing coverage | clients/dotnet/MxGateway.Client.Tests/MxGatewayClientAlarmsTests.cs:76-98, clients/dotnet/MxGateway.Client.Tests/FakeGatewayTransport.cs:212-231 |
| Client.Dotnet-015 | Low | Resolved | Correctness & logic bugs | clients/dotnet/MxGateway.Client.Cli/MxGatewayClientCli.cs:221-236, clients/dotnet/MxGateway.Client.Cli/MxGatewayClientCli.cs:596-1065 |
| Client.Dotnet-016 | Low | Resolved | Concurrency & thread safety | clients/dotnet/MxGateway.Client.Cli/MxGatewayClientCli.cs:922-976 |
| Client.Dotnet-017 | Low | Resolved | Error handling & resilience | clients/dotnet/MxGateway.Client.Cli/MxGatewayClientCli.cs:1190-1262 |
| Client.Dotnet-019 | Low | Resolved | Correctness & logic bugs | clients/dotnet/ZB.MOM.WW.MxGateway.Client.Cli/MxGatewayClientCli.cs:745 |
| Client.Dotnet-020 | Low | Resolved | Error handling & resilience | clients/dotnet/ZB.MOM.WW.MxGateway.Client.Cli/MxGatewayClientCli.cs:792-810, clients/dotnet/ZB.MOM.WW.MxGateway.Client.Cli/MxGatewayClientCli.cs:774-780 |
| Client.Dotnet-021 | Low | Resolved | Correctness & logic bugs | clients/dotnet/ZB.MOM.WW.MxGateway.Client.Cli/MxGatewayClientCli.cs:487, clients/dotnet/ZB.MOM.WW.MxGateway.Client.Cli/MxGatewayClientCli.cs:715 |
| Client.Dotnet-023 | Low | Resolved | Code organization & conventions | clients/dotnet/Directory.Build.props:17, clients/dotnet/ZB.MOM.WW.MxGateway.Client.Cli/IMxGatewayCliClient.cs:6, clients/dotnet/ZB.MOM.WW.MxGateway.Client.Tests/*.cs |
| Client.Dotnet-024 | Low | Resolved | Code organization & conventions | clients/dotnet/Directory.Build.props:12, clients/dotnet/ZB.MOM.WW.MxGateway.Client/ZB.MOM.WW.MxGateway.Client.csproj:19-24 |
| Client.Dotnet-025 | Low | Resolved | Concurrency & thread safety | clients/dotnet/ZB.MOM.WW.MxGateway.Client/LazyBrowseNode.cs:38,41,54,82,94 |
| Client.Dotnet-026 | Low | Resolved | Correctness & logic bugs | clients/dotnet/.../MxGatewayClientCli.cs:306 (isLongRunning) |
| Client.Dotnet-027 | Low | Won't Fix | Performance & resource management | clients/dotnet/ZB.MOM.WW.MxGateway.Client/LazyBrowseNode.cs:15 |
| Client.Dotnet-029 | Low | Resolved | Code organization & conventions | clients/dotnet/.../IMxGatewayCliClient.cs:6 |
| Client.Go-004 | Low | Resolved | mxaccessgw conventions | clients/go/mxgateway/alarms_test.go:153-154, clients/go/mxgateway/galaxy_test.go:58-59 |
| Client.Go-005 | Low | Resolved | Design-document adherence | clients/go/mxgateway/client.go:64,68, clients/go/mxgateway/galaxy.go:83,87 |
| Client.Go-006 | Low | Resolved | Error handling & resilience | clients/go/mxgateway/errors.go:9-130 |
| Client.Go-007 | Low | Resolved | Correctness & logic bugs | clients/go/mxgateway/session.go:526-532 |
| Client.Go-008 | Low | Resolved | Testing coverage | clients/go/mxgateway/ (test files) |
| Client.Go-009 | Low | Resolved | Code organization & conventions | clients/go/mxgateway/galaxy.go:60-93,241-256, clients/go/mxgateway/client.go:41-74,190-205 |
| Client.Go-010 | Low | Resolved | Documentation & comments | clients/go/mxgateway/client.go:39-40 |
| Client.Go-011 | Low | Resolved | Correctness & logic bugs | clients/go/mxgateway/alarms_test.go:66-73 |
| Client.Go-012 | Low | Resolved | Documentation & comments | clients/go/cmd/mxgw-go/main.go:1063-1065, clients/go/cmd/mxgw-go/main.go:88-104 |
| Client.Go-013 | Low | Resolved | Concurrency & thread safety | clients/go/cmd/mxgw-go/main.go:1246-1249, clients/go/cmd/mxgw-go/main.go:1257-1262 |
| Client.Go-014 | Low | Resolved | Error handling & resilience | clients/go/mxgateway/session.go:602, clients/go/mxgateway/galaxy.go:189 |
| Client.Go-015 | Low | Resolved | Code organization & conventions | clients/go/cmd/mxgw-go/main.go:410-512 |
| Client.Go-016 | Low | Resolved | Testing coverage | clients/go/mxgateway/galaxy_test.go:382-429 |
| Client.Go-017 | Low | Resolved | Error handling & resilience | clients/go/cmd/mxgw-go/main.go:954-991 |
| Client.Go-018 | Low | Resolved | Concurrency & thread safety | clients/go/cmd/mxgw-go/main.go:593-623 |
| Client.Go-019 | Low | Resolved | Documentation & comments | clients/go/cmd/mxgw-go/main.go:710-716, clients/go/cmd/mxgw-go/main.go:1204,1213 |
| Client.Go-020 | Low | Resolved | Code organization & conventions | clients/go/cmd/mxgw-go/main.go:753-802, clients/go/cmd/mxgw-go/main.go:1199-1275 |
| Client.Go-021 | Low | Resolved | Testing coverage | clients/go/cmd/mxgw-go/main_test.go, clients/go/cmd/mxgw-go/main.go:363-520,522-655 |
| Client.Go-024 | Low | Resolved | Testing coverage | clients/go/mxgateway/session.go:395-525, clients/go/mxgateway/alarms.go:65-76 |
| Client.Go-025 | Low | Resolved | Correctness & logic bugs | clients/go/mxgateway/session.go:395-485,495-525 |
| Client.Go-026 | Low | Resolved | Error handling & resilience | clients/go/cmd/mxgw-go/main.go:1196-1222 |
| Client.Go-027 | Low | Resolved | Code organization & conventions | clients/go/cmd/mxgw-go/main.go:1195-1206 |
| Client.Go-029 | Low | Resolved | Documentation & comments | clients/go/README.md:300-303 |
| Client.Go-031 | Low | Resolved | Correctness & logic bugs | clients/go/cmd/mxgw-go/main.go:1037-1046 |
| Client.Go-032 | Low | Resolved | Code organization & conventions | clients/go/cmd/mxgw-go/main.go:839-841 |
| Client.Go-033 | Low | Resolved | Testing coverage | clients/go/cmd/mxgw-go/main_test.go |
| Client.Go-034 | Low | Resolved | Documentation & comments | clients/go/README.md:245-263 |
| Client.Java-006 | Low | Resolved | Performance & resource management | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayClient.java:323-328, clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/GalaxyRepositoryClient.java:279-284 |
| Client.Java-007 | Low | Resolved | Testing coverage | clients/java/mxgateway-client/src/test/java/com/dohertylan/mxgateway/client/ |
| Client.Java-008 | Low | Resolved | Error handling & resilience | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayClient.java:298-304 |
| Client.Java-009 | Low | Resolved | Code organization & conventions | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/GalaxyRepositoryClient.java:310-391, clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayClient.java:346-413 |
| Client.Java-010 | Low | Resolved | Documentation & comments | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayClient.java:269-272, clients/java/README.md:76 |
| Client.Java-011 | Low | Resolved | Performance & resource management | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxEventStream.java:37-63 |
| Client.Java-012 | Low | Resolved | Correctness & logic bugs | clients/java/mxgateway-cli/src/main/java/com/dohertylan/mxgateway/cli/MxGatewayCli.java:667-674 |
| Client.Java-016 | Low | Resolved | Code organization & conventions | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayClient.java:361-391, GalaxyRepositoryClient.java:285-315 |
| Client.Java-017 | Low | Resolved | Documentation & comments | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxEventStream.java:25-36, clients/java/README.md:99-107 |
| Client.Java-018 | Low | Resolved | Security | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewaySecrets.java:54-66 |
| Client.Java-019 | Low | Resolved | Performance & resource management | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayClient.java:362-391, GalaxyRepositoryClient.java:286-315 |
| Client.Java-020 | Low | Resolved | Correctness & logic bugs | clients/java/mxgateway-cli/src/main/java/com/dohertylan/mxgateway/cli/MxGatewayCli.java:244-254, galaxy_repository.proto:94 |
| Client.Java-022 | Low | Resolved | Documentation & comments | clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewayChannels.java:161-172 |
| Client.Java-023 | Low | Resolved | Correctness & logic bugs | clients/java/mxgateway-cli/src/main/java/com/dohertylan/mxgateway/cli/MxGatewayCli.java:1054, src/MxGateway.Contracts/Protos/mxaccess_gateway.proto:634 |
| Client.Java-024 | Low | Resolved | Correctness & logic bugs | clients/java/mxgateway-cli/src/main/java/com/dohertylan/mxgateway/cli/MxGatewayCli.java:855-883 |
| Client.Java-025 | Low | Resolved | Code organization & conventions | clients/java/mxgateway-cli/src/main/java/com/dohertylan/mxgateway/cli/MxGatewayCli.java:1176-1185 |
| Client.Java-026 | Low | Resolved | Testing coverage | clients/java/mxgateway-cli/src/test/java/com/dohertylan/mxgateway/cli/MxGatewayCliTests.java |
| Client.Java-029 | Low | Resolved | Documentation & comments | clients/java/README.md:208-209 |
| Client.Java-030 | Low | Resolved | Testing coverage | clients/java/zb-mom-ww-mxgateway-client/src/test/java/com/zb/mom/ww/mxgateway/client/ |
| Client.Java-031 | Low | Resolved | mxaccessgw conventions | clients/java/README.md:13,17,26 |
| Client.Java-035 | Low | Resolved | Testing coverage | clients/java/zb-mom-ww-mxgateway-client/src/test/java/com/zb/mom/ww/mxgateway/client/MxGatewayClientSessionTests.java |
| Client.Java-036 | Low | Resolved | Code organization & conventions | clients/java/zb-mom-ww-mxgateway-client/src/main/java/com/zb/mom/ww/mxgateway/client/MxGatewayAlarmFeedSubscription.java, MxGatewayEventSubscription.java, MxGatewayActiveAlarmsSubscription.java, DeployEventSubscription.java |
| Client.Java-038 | Low | Resolved | Code organization & conventions | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:1347-1393 |
| Client.Java-041 | Low | Resolved | Correctness & logic bugs | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:2187-2194 |
| Client.Java-042 | Low | Resolved | Error handling & resilience | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:1565-1567 |
| Client.Java-043 | Low | Resolved | Code organization & conventions | clients/java/zb-mom-ww-mxgateway-cli/src/test/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCliTests.java:241-264 |
| Client.Java-044 | Low | Resolved | Code organization & conventions | clients/java/zb-mom-ww-mxgateway-client/src/main/java/com/zb/mom/ww/mxgateway/client/MxGatewayClientVersion.java:12 |
| Client.Java-045 | Low | Resolved | Testing coverage | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/InProcessGatewayHarness.java |
| Client.Java-046 | Low | Resolved | Testing coverage | clients/java/zb-mom-ww-mxgateway-cli/src/test/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCliTests.java:680-696 |
| Client.Java-047 | Low | Resolved | Documentation & comments | clients/java/README.md |
| Client.Java-048 | Low | Resolved | Documentation & comments | clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:88-105 |
| Client.Python-001 | Low | Resolved | Documentation & comments | clients/python/pyproject.toml:8,25, clients/python/src/mxgateway_cli/commands.py:25 |
| Client.Python-002 | Low | Resolved | Code organization & conventions | clients/python/src/mxgateway/__init__.py:27 |
| Client.Python-004 | Low | Resolved | Correctness & logic bugs | clients/python/src/mxgateway_cli/commands.py:386,402-404 |
| Client.Python-006 | Low | Resolved | Concurrency & thread safety | clients/python/src/mxgateway/client.py:74-82, clients/python/src/mxgateway/galaxy.py:85-93, clients/python/src/mxgateway/session.py:38-55 |
| Client.Python-007 | Low | Resolved | Error handling & resilience | clients/python/src/mxgateway/client.py:204-213 |
| Client.Python-008 | Low | Resolved | Correctness & logic bugs | clients/python/src/mxgateway/values.py:62-67,83-88 |
| Client.Python-010 | Low | Resolved | Code organization & conventions | clients/python/src/mxgateway/session.py:404, clients/python/src/mxgateway_cli/commands.py:422-425 |
| Client.Python-011 | Low | Resolved | Error handling & resilience | clients/python/src/mxgateway/errors.py:122-148 |
| Client.Python-012 | Low | Won't Fix | mxaccessgw conventions | clients/python/src/mxgateway/client.py:84-108, clients/python/src/mxgateway/session.py:57-77 |
| Client.Python-014 | Low | Resolved | Code organization & conventions | clients/python/src/mxgateway_cli/commands.py:22-23 |
| Client.Python-015 | Low | Resolved | Testing coverage | clients/python/src/mxgateway_cli/commands.py:273-294,564-647, clients/python/tests/ |
| Client.Python-016 | Low | Resolved | Testing coverage | clients/python/src/mxgateway_cli/commands.py:25,757-775,805-830 |
| Client.Python-017 | Low | Resolved | Documentation & comments | clients/python/pyproject.toml:5-25, clients/python/src/mxgateway/ |
| Client.Python-019 | Low | Resolved | Code organization & conventions | clients/python/pyproject.toml:60-61, clients/python/src/mxgateway_cli/ |
| Client.Python-020 | Low | Resolved | Testing coverage | clients/python/tests/, scripts/ |
| Client.Python-021 | Low | Resolved | Documentation & comments | clients/python/src/mxgateway_cli/commands.py, clients/python/README.md:235-258 |
| Client.Python-025 | Low | Resolved | Testing coverage | clients/python/tests/test_cli.py, clients/python/src/zb_mom_ww_mxgateway/{client.py,session.py}, clients/python/src/zb_mom_ww_mxgateway_cli/commands.py |
| Client.Python-026 | Low | Resolved | Correctness & logic bugs | clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:674-738 |
| Client.Python-029 | Low | Resolved | Correctness & logic bugs | clients/python/src/zb_mom_ww_mxgateway/options.py:78-90 |
| Client.Python-030 | Low | Resolved | Code organization & conventions | clients/python/pyproject.toml:17 |
| Client.Python-031 | Low | Resolved | Testing coverage | clients/python/tests/test_tls.py:34, clients/python/pyproject.toml:53-56 |
| Client.Python-032 | Low | Resolved | Correctness & logic bugs | clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:1048,1065-1066 |
| Client.Python-033 | Low | Resolved | Correctness & logic bugs | clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:772,1490-1494 |
| Client.Python-034 | Low | Resolved | Correctness & logic bugs | clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:1497-1501 |
| Client.Python-035 | Low | Resolved | Code organization & conventions | clients/python/src/zb_mom_ww_mxgateway/__init__.py, .../options.py:63-77, .../galaxy.py:293 |
| Client.Rust-004 | Low | Resolved | Documentation & comments | clients/rust/src/version.rs:7 |
| Client.Rust-007 | Low | Resolved | Design-document adherence | clients/rust/RustClientDesign.md:14-55 |
| Client.Rust-008 | Low | Resolved | Performance & resource management | clients/rust/src/value.rs:161-261 |
| Client.Rust-009 | Low | Resolved | Testing coverage | clients/rust/tests/client_behavior.rs, clients/rust/src/galaxy.rs |
| Client.Rust-010 | Low | Resolved | Error handling & resilience | clients/rust/src/client.rs:255-268, clients/rust/src/galaxy.rs:204-216 |
| Client.Rust-011 | Low | Resolved | mxaccessgw conventions | clients/rust/src/session.rs:469 |
| Client.Rust-014 | Low | Resolved | mxaccessgw conventions | clients/rust/crates/mxgw-cli/src/main.rs:450,497 |
| Client.Rust-017 | Low | Resolved | Design-document adherence | clients/rust/RustClientDesign.md:79-99,156-163 |
| Client.Rust-019 | Low | Resolved | Design-document adherence | clients/rust/RustClientDesign.md:96-100 |
| Client.Rust-020 | Low | Resolved | Documentation & comments | clients/rust/src/session.rs:31-46; clients/rust/src/lib.rs:14-39 |
| Client.Rust-021 | Low | Resolved | Design-document adherence | clients/rust/RustClientDesign.md:14-33 |
| Client.Rust-023 | Low | Resolved | mxaccessgw conventions | clients/rust/crates/mxgw-cli/src/main.rs:835,872,1476 |
| Client.Rust-025 | Low | Resolved | Design-document adherence | clients/rust/RustClientDesign.md:92-106,142-153,164-171 |
| Client.Rust-026 | Low | Resolved | Performance & resource management | clients/rust/crates/mxgw-cli/src/main.rs:1402-1406,1419-1423 |
| Client.Rust-027 | Low | Resolved | Documentation & comments | clients/rust/.cargo/config.toml:1-9 |
| Client.Rust-028 | Low | Resolved | mxaccessgw conventions | clients/rust/crates/mxgw-cli/src/main.rs:1126-1166 |
| Client.Rust-032 | Low | Resolved | Design-document adherence | clients/rust/RustClientDesign.md; surface in clients/rust/src/galaxy.rs:281-379 |
| Client.Rust-034 | Low | Resolved | Correctness & logic bugs | clients/rust/crates/mxgw-cli/src/main.rs:48-51,548 |
| Client.Rust-035 | Low | Resolved | Security | clients/rust/crates/mxgw-cli/src/main.rs:489-495 |
| Client.Rust-036 | Low | Resolved | Design-document adherence | clients/rust/RustClientDesign.md:351 |
| Client.Rust-037 | Low | Resolved | Design-document adherence | clients/rust/README.md:164-179 |
| Client.Rust-038 | Low | Resolved | Testing coverage | clients/rust/crates/mxgw-cli/src/main.rs:2336-2564 |
| Contracts-001 | Low | Resolved | Design-document adherence | docs/Grpc.md:13 (and :3, :32, :39) |
| Contracts-003 | Low | Won't Fix | Code organization & conventions | src/MxGateway.Contracts/MxGateway.Contracts.csproj:10 |
| Contracts-004 | Low | Resolved | Documentation & comments | src/MxGateway.Contracts/GatewayContractInfo.cs:3-6 |
| Contracts-005 | Low | Resolved | mxaccessgw conventions | src/MxGateway.Contracts/Protos/mxaccess_gateway.proto, src/MxGateway.Contracts/Protos/mxaccess_worker.proto |
| Contracts-006 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Contracts/Protos/mxaccess_gateway.proto:647 |
| Contracts-007 | Low | Resolved | Testing coverage | src/MxGateway.Tests/Contracts/ProtobufContractRoundTripTests.cs |
| Contracts-008 | Low | Resolved | Design-document adherence | src/MxGateway.Contracts/Protos/mxaccess_gateway.proto:451-459, :627-636 |
| Contracts-010 | Low | Resolved | Testing coverage | src/MxGateway.Tests/Contracts/ProtobufContractRoundTripTests.cs |
| Contracts-011 | Low | Resolved | Security | src/MxGateway.Contracts/Protos/mxaccess_gateway.proto:392-397, :406-412 |
| Contracts-012 | Low | Resolved | Documentation & comments | src/MxGateway.Contracts/Protos/galaxy_repository.proto:120 |
| Contracts-013 | Low | Resolved | Documentation & comments | src/MxGateway.Tests/Contracts/GatewayContractInfoTests.cs:14 |
| Contracts-014 | Low | Resolved | Documentation & comments | src/MxGateway.Contracts/Protos/mxaccess_gateway.proto:549-553 |
| Contracts-015 | Low | Resolved | Documentation & comments | src/MxGateway.Contracts/Protos/mxaccess_gateway.proto:571-582 |
| Contracts-016 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.Contracts/Protos/mxaccess_gateway.proto:31-41 (QueryActiveAlarmsRequest) |
| Contracts-017 | Low | Resolved | Documentation & comments | src/ZB.MOM.WW.MxGateway.Contracts/Protos/mxaccess_gateway.proto:23-29 (the rpc QueryActiveAlarms block) |
| Contracts-018 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Contracts/ProtobufContractRoundTripTests.cs:396 (ActiveAlarmSnapshot_RoundTripsAllFields) |
| Contracts-019 | Low | Resolved | Documentation & comments | src/ZB.MOM.WW.MxGateway.Contracts/Protos/mxaccess_gateway.proto:850-851 (ActiveAlarmSnapshot), :318-324 (AlarmProviderMode) |
| Contracts-020 | Low | Resolved | Design-document adherence | gateway.md:1087,1101-1102 |
| Contracts-021 | Low | Resolved | Documentation & comments | src/ZB.MOM.WW.MxGateway.Contracts/Protos/mxaccess_gateway.proto:731-733 |
| Contracts-022 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Contracts/ProtobufContractRoundTripTests.cs |
| IntegrationTests-007 | Low | Resolved | Concurrency & thread safety | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:20, src/MxGateway.IntegrationTests/Galaxy/GalaxyRepositoryLiveTests.cs:5, src/MxGateway.IntegrationTests/DashboardLdapLiveTests.cs:9 |
| IntegrationTests-008 | Low | Resolved | Code organization & conventions | src/MxGateway.IntegrationTests/LiveLdapFactAttribute.cs, src/MxGateway.IntegrationTests/Galaxy/LiveGalaxyRepositoryFactAttribute.cs, src/MxGateway.IntegrationTests/LiveMxAccessFactAttribute.cs |
| IntegrationTests-009 | Low | Resolved | Documentation & comments | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:372-375 |
| IntegrationTests-010 | Low | Resolved | Correctness & logic bugs | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:366-369 |
| IntegrationTests-011 | Low | Resolved | Documentation & comments | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:236-240, src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:183-187 |
| IntegrationTests-013 | Low | Resolved | Performance & resource management | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:519-609 |
| IntegrationTests-015 | Low | Resolved | Code organization & conventions | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:30,119,201, src/MxGateway.IntegrationTests/DashboardLdapLiveTests.cs:13,32,48,67,84, src/MxGateway.IntegrationTests/Galaxy/GalaxyRepositoryLiveTests.cs:10,22,34,52 |
| IntegrationTests-016 | Low | Resolved | Code organization & conventions | src/MxGateway.IntegrationTests/Galaxy/LiveGalaxyRepositoryFactAttribute.cs:26, src/MxGateway.Server/Galaxy/GalaxyRepositoryOptions.cs:13 |
| IntegrationTests-018 | Low | Resolved | Code organization & conventions | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:1037, src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:595 |
| IntegrationTests-020 | Low | Resolved | Correctness & logic bugs | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:616-622 |
| IntegrationTests-021 | Low | Resolved | Testing coverage | src/MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:579-622 |
| IntegrationTests-022 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.IntegrationTests/IntegrationTestEnvironment.cs:103-138 (ResolveRepositoryRoot / IsRepositoryRoot) |
| IntegrationTests-023 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.IntegrationTests/DashboardLdapLiveTests.cs:14-29 |
| IntegrationTests-024 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs (NullDashboardEventBroadcaster private class at end of file) |
| IntegrationTests-025 | Low | Resolved | Correctness & logic bugs | src/ZB.MOM.WW.MxGateway.IntegrationTests/IntegrationTestEnvironmentTests.cs:57-84 (ResolveRepositoryRoot_NoMarkers_ThrowsInvalidOperationExceptionNamingStartAndMarkers) |
| IntegrationTests-027 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.IntegrationTests/ZB.MOM.WW.MxGateway.IntegrationTests.csproj, src/ZB.MOM.WW.MxGateway.IntegrationTests/DashboardLdapLiveTests.cs:4-5,134 |
| IntegrationTests-028 | Low | Resolved | Design-document adherence | src/ZB.MOM.WW.MxGateway.IntegrationTests/DashboardLdapLiveTests.cs:120-161, src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardServiceCollectionExtensions.cs:35 |
| IntegrationTests-029 | Low | Resolved | Documentation & comments | docs/GatewayTesting.md:218-224 |
| IntegrationTests-030 | Low | Resolved | Documentation & comments | docs/GatewayTesting.md:76, src/ZB.MOM.WW.MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:576,728 |
| IntegrationTests-031 | Low | Resolved | Documentation & comments | src/ZB.MOM.WW.MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:672 |
| IntegrationTests-032 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:823-865 |
| IntegrationTests-033 | Low | Deferred | Testing coverage | src/ZB.MOM.WW.MxGateway.IntegrationTests/WorkerLiveMxAccessSmokeTests.cs:577-709 |
| Server-007 | Low | Resolved | Performance & resource management | src/MxGateway.Server/Galaxy/GalaxyHierarchyProjector.cs:55-70 |
| Server-008 | Low | Resolved | Performance & resource management | src/MxGateway.Server/Grpc/GalaxyRepositoryGrpcService.cs:111-134,160-189 |
| Server-009 | Low | Resolved | Error handling & resilience | src/MxGateway.Server/Security/Authentication/AuthSqliteConnectionFactory.cs:15-32 |
| Server-010 | Low | Resolved | Security | src/MxGateway.Server/Security/Authentication/SqliteApiKeyAdminStore.cs:91-114, src/MxGateway.Server/Dashboard/Components/Pages/ApiKeysPage.razor:168-172 |
| Server-011 | Low | Resolved | Code organization & conventions | src/MxGateway.Server/Sessions/WorkerAlarmRpcDispatcher.cs:1-46 |
| Server-012 | Low | Resolved | Documentation & comments | CLAUDE.md (Authentication section and apikey create example) |
| Server-013 | Low | Resolved | Testing coverage | src/MxGateway.Tests/Gateway/Dashboard/DashboardAuthorizationHandlerTests.cs, src/MxGateway.Tests/Gateway/GatewayApplicationTests.cs |
| Server-014 | Low | Resolved | Documentation & comments | src/MxGateway.Server/Grpc/MxAccessGatewayService.cs:162-171,191-198,206-214,229-237 |
| Server-018 | Low | Resolved | Performance & resource management | src/MxGateway.Server/Galaxy/GalaxyGlobMatcher.cs:15 |
| Server-019 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Server/Sessions/WorkerAlarmRpcDispatcher.cs:183-221 |
| Server-020 | Low | Resolved | Code organization & conventions | src/MxGateway.Server/Dashboard/Components/Pages/DashboardHome.razor:1-2, …/GalaxyPage.razor:1-2, …/ApiKeysPage.razor:1-2, …/EventsPage.razor:1-2, …/SessionsPage.razor:1-2, …/WorkersPage.razor:1-2, …/SettingsPage.razor:1-2, …/SessionDetailsPage.razor:1-2 |
| Server-022 | Low | Resolved | Documentation & comments | src/MxGateway.Server/Sessions/IAlarmRpcDispatcher.cs:8-29 |
| Server-023 | Low | Resolved | Documentation & comments | src/MxGateway.Server/Sessions/NotWiredAlarmRpcDispatcher.cs:10-26 |
| Server-024 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Server/Galaxy/GalaxyGlobMatcher.cs:56-77 |
| Server-025 | Low | Resolved | Code organization & conventions | src/MxGateway.Server/Grpc/GalaxyRepositoryGrpcService.cs:19-25, src/MxGateway.Server/Galaxy/IGalaxyRepository.cs |
| Server-026 | Low | Resolved | Error handling & resilience | src/MxGateway.Server/Configuration/GatewayOptionsValidator.cs:17-32, src/MxGateway.Server/Configuration/AlarmsOptions.cs |
| Server-027 | Low | Resolved | Design-document adherence | docs/Authorization.md:120-141,176-181 |
| Server-028 | Low | Resolved | Testing coverage | src/MxGateway.Tests/Security/Authorization/GatewayGrpcScopeResolverTests.cs:13-20, src/MxGateway.Tests/Gateway/Sessions/GatewaySessionTests.cs |
| Server-029 | Low | Resolved | Documentation & comments | src/MxGateway.Server/Grpc/MxAccessGatewayService.cs:52-58 |
| Server-034 | Low | Resolved | Error handling & resilience | src/MxGateway.Server/Galaxy/GalaxyHierarchySnapshotStore.cs:87-115 (TryLoadAsync) |
| Server-035 | Low | Resolved | Performance & resource management | src/MxGateway.Server/Galaxy/GalaxyHierarchyCache.cs:176 (call site), :327-352 (PersistSnapshotAsync) |
| Server-036 | Low | Resolved | Error handling & resilience | src/MxGateway.Server/Galaxy/GalaxyHierarchyCache.cs:345-348 (PersistSnapshotAsync catch) |
| Server-037 | Low | Resolved | Testing coverage | src/MxGateway.Tests/Galaxy/GalaxyHierarchySnapshotStoreTests.cs, src/MxGateway.Tests/Galaxy/GalaxyHierarchyCacheTests.cs |
| Server-039 | Low | Resolved | Error handling & resilience | src/ZB.MOM.WW.MxGateway.Server/Dashboard/HubTokenService.cs:37-58 |
| Server-040 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardAuthenticator.cs:140-160 (MapGroupsToRoles) |
| Server-041 | Low | Resolved | Design-document adherence | src/ZB.MOM.WW.MxGateway.Server/Grpc/EventStreamService.cs:123-126, src/ZB.MOM.WW.MxGateway.Server/Dashboard/Hubs/IDashboardEventBroadcaster.cs:6-10 |
| Server-042 | Low | Resolved | Performance & resource management | src/ZB.MOM.WW.MxGateway.Server/Dashboard/Hubs/DashboardSnapshotPublisher.cs:18-41 |
| Server-043 | Low | Resolved | Documentation & comments | src/ZB.MOM.WW.MxGateway.Server/Dashboard/HubTokenService.cs:1, src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardServiceCollectionExtensions.cs:24 |
| Server-045 | Low | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Server/Sessions/SessionManager.cs:225,242-245, src/ZB.MOM.WW.MxGateway.Server/Sessions/GatewaySession.cs:837-841 |
| Server-046 | Low | Resolved | Error handling & resilience | src/ZB.MOM.WW.MxGateway.Server/Sessions/SessionManager.cs:286-307 |
| Server-047 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.Server/Dashboard/Components/Pages/ApiKeysPage.razor:324-334, src/ZB.MOM.WW.MxGateway.Server/Dashboard/Components/Pages/SessionsPage.razor:171-195, src/ZB.MOM.WW.MxGateway.Server/Dashboard/Components/Pages/SessionDetailsPage.razor:231-255 |
| Server-048 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs:463-498 |
| Server-049 | Low | Resolved | Documentation & comments | src/ZB.MOM.WW.MxGateway.Server/Dashboard/IDashboardSessionAdminService.cs:5-18, src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardSessionAdminService.cs:8-25 |
| Server-050 | Low | Resolved | Error handling & resilience | src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardSessionAdminService.cs:42-75,92-125 |
| Server-052 | Low | Resolved | Documentation & comments | src/ZB.MOM.WW.MxGateway.Server/Alarms/IAlarmWatchListResolver.cs:24-30, src/ZB.MOM.WW.MxGateway.Server/Alarms/AlarmWatchListResolver.cs:101-114, docs/GatewayConfiguration.md:247 |
| Server-053 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Alarms/AlarmWatchListResolverTests.cs, src/ZB.MOM.WW.MxGateway.Tests/Alarms/GatewayAlarmMonitorProviderModeTests.cs |
| Server-055 | Low | Resolved | Correctness & logic bugs | src/ZB.MOM.WW.MxGateway.Server/Sessions/GatewaySession.cs:842-851,1841-1871 |
| Tests-007 | Low | Resolved | Code organization & conventions | src/MxGateway.Tests/Gateway/Grpc/MxAccessGatewayServiceTests.cs:682, src/MxGateway.Tests/Gateway/Grpc/GalaxyRepositoryGrpcServiceTests.cs:324, src/MxGateway.Tests/Gateway/GatewayEndToEndFakeWorkerSmokeTests.cs:460, src/MxGateway.Tests/Security/Authorization/GatewayGrpcAuthorizationInterceptorTests.cs:233 |
| Tests-008 | Low | Resolved | mxaccessgw conventions | src/MxGateway.Tests/Gateway/Sessions/WorkerAlarmRpcDispatcherTests.cs:1-9, src/MxGateway.Tests/Gateway/Sessions/NotWiredAlarmRpcDispatcherTests.cs:1-3, src/MxGateway.Tests/Gateway/Sessions/SessionManagerAlarmAutoSubscribeTests.cs:1 |
| Tests-009 | Low | Resolved | Documentation & comments | src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs:36-37,99,365 |
| Tests-010 | Low | Resolved | Security | src/MxGateway.Tests/Gateway/Dashboard/DashboardAuthorizationHandlerTests.cs:26-36 |
| Tests-011 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Tests/Gateway/GatewayEndToEndFakeWorkerSmokeTests.cs:233-301 |
| Tests-012 | Low | Resolved | Concurrency & thread safety | src/MxGateway.Tests/Gateway/Workers/Fakes/FakeWorkerHarness.cs:62, src/MxGateway.Tests/Gateway/Workers/WorkerClientTests.cs:472 |
| Tests-014 | Low | Resolved | Performance & resource management | src/MxGateway.Tests/Gateway/GatewayApplicationTests.cs:18,33,44,62,81,105, src/MxGateway.Tests/Gateway/Dashboard/DashboardCookieOptionsTests.cs:17 |
| Tests-015 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Tests/Gateway/GatewayEndToEndFakeWorkerSmokeTests.cs:374-379,87 |
| Tests-017 | Low | Resolved | Concurrency & thread safety | src/MxGateway.Tests/Gateway/Workers/WorkerClientTests.cs:346-364 |
| Tests-018 | Low | Resolved | Code organization & conventions | src/MxGateway.Tests/Galaxy/GalaxyHierarchyCacheTests.cs:32, src/MxGateway.Tests/Gateway/Dashboard/DashboardSnapshotServiceTests.cs:45,51,57,105,134,163,167,202-209,284,317,523, src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs:40 |
| Tests-019 | Low | Resolved | Documentation & comments | docs/GatewayTesting.md, code-reviews/Tests/findings.md (Tests-002 re-triage) |
| Tests-021 | Low | Resolved | Code organization & conventions | src/MxGateway.Tests/Galaxy/GalaxyHierarchyCacheTests.cs:159-171, src/MxGateway.Tests/Gateway/Workers/FakeWorkerHarnessTests.cs:226-236, src/MxGateway.Tests/Gateway/Workers/WorkerClientTests.cs:620-630, src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs:766-… |
| Tests-022 | Low | Resolved | Testing coverage | src/MxGateway.Tests/Gateway/Sessions/SessionManagerBulkTests.cs:52-61,90-99,126-135,163-172,202-211,238-247,282-294,339-360,413-434,484-506,553-567,663-688 |
| Tests-023 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Tests/Gateway/Sessions/SessionWorkerClientFactoryFakeWorkerTests.cs:334-374 |
| Tests-024 | Low | Resolved | Testing coverage | src/MxGateway.Server/Grpc/MxAccessGatewayService.cs:713-730,784-801,859-876, src/MxGateway.Tests/Gateway/Grpc/MxAccessGatewayServiceConstraintTests.cs |
| Tests-025 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Grpc/EventStreamServiceTests.cs:285-289, src/ZB.MOM.WW.MxGateway.Tests/Gateway/GatewayEndToEndFakeWorkerSmokeTests.cs:417-421 |
| Tests-028 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs:466-496,802-807, src/ZB.MOM.WW.MxGateway.Server/Sessions/SessionManager.cs:216-253 |
| Tests-029 | Low | Resolved | Error handling & resilience | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Dashboard/DashboardSessionAdminServiceTests.cs:61-106,139-222, src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardSessionAdminService.cs:77-125 |
| Tests-030 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Dashboard/DashboardApiKeyManagementServiceTests.cs:115-163, src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardApiKeyManagementService.cs:146-177 |
| Tests-031 | Low | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Dashboard/DashboardSnapshotPublisherTests.cs:22-61 |
| Tests-033 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardAlarmProviderStatus.cs, src/ZB.MOM.WW.MxGateway.Tests/Gateway/Dashboard/DashboardBrowseAndAlarmModelTests.cs:140-195 |
| Tests-034 | Low | Resolved | mxaccessgw conventions | src/ZB.MOM.WW.MxGateway.Tests/Diagnostics/GatewayLogRedactorSeamTests.cs:1-15 |
| Tests-035 | Low | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Tests/Alarms/AlarmFailoverEndToEndTests.cs:315-329 |
| Tests-036 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Configuration/GatewayOptionsValidatorTests.cs |
| Tests-037 | Low | Won't Fix | Testing coverage | src/ZB.MOM.WW.MxGateway.Tests/Contracts/ProtobufContractRoundTripTests.cs |
| Tests-038 | Low | Resolved | Performance & resource management | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Sessions/SessionEventDistributorTests.cs:702-713 |
| Tests-039 | Low | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Tests/Gateway/Sessions/GatewaySessionDashboardMirrorTests.cs (DashboardMirror_AndGrpcSubscriber_BothReceiveEvents) |
| Worker-009 | Low | Resolved | Performance & resource management | src/MxGateway.Worker/Ipc/WorkerFrameReader.cs:31,49, src/MxGateway.Worker/Ipc/WorkerFrameWriter.cs:57-58 |
| Worker-010 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Conversion/VariantConverter.cs:204-226 |
| Worker-011 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Ipc/WorkerPipeClient.cs:169-171 |
| Worker-012 | Low | Resolved | Documentation & comments | src/MxGateway.Worker/MxAccess/MxAccessAlarmEventSink.cs:44-55, src/MxGateway.Worker/MxAccess/WnWrapAlarmConsumer.cs:38-43, src/MxGateway.Worker/MxAccess/MxAccessEventMapper.cs:106-112 |
| Worker-013 | Low | Resolved | Testing coverage | src/MxGateway.Worker/Sta/StaMessagePump.cs |
| Worker-014 | Low | Resolved | Code organization & conventions | src/MxGateway.Worker/MxAccess/AlarmCommandHandler.cs:33, :202 |
| Worker-015 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Worker/MxAccess/MxAccessEventQueue.cs:115-145 |
| Worker-018 | Low | Resolved | Error handling & resilience | src/MxGateway.Worker/MxAccess/WnWrapAlarmConsumer.cs:160-161 |
| Worker-019 | Low | Resolved | Code organization & conventions | src/MxGateway.Worker/MxAccess/WnWrapAlarmConsumer.cs:59, :188 |
| Worker-020 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:405, :423 |
| Worker-021 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:111-118, :790-805, :136-139 |
| Worker-022 | Low | Resolved | Code organization & conventions | src/MxGateway.Worker/MxAccess/MxAlarmSnapshot.cs:12, :26, :49 |
| Worker-024 | Low | Resolved | Concurrency & thread safety | src/MxGateway.Worker/MxAccess/AlarmCommandHandler.cs:63-187, src/MxGateway.Worker/MxAccess/MxAccessStaSession.cs:191-323 |
| Worker-025 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Worker/Ipc/WorkerPipeSession.cs:111-117 |
| Worker-028 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.Worker/MxAccess/SubtagAlarmStateMachine.cs:43-52, src/ZB.MOM.WW.MxGateway.Worker/MxAccess/SubtagAlarmConsumer.cs:70-75 |
| Worker.Tests-008 | Low | Resolved | Documentation & comments | src/MxGateway.Worker.Tests/Conversion/VariantConverterTests.cs:175-182 |
| Worker.Tests-009 | Low | Resolved | Code organization & conventions | src/MxGateway.Worker.Tests/MxAccess/AlarmCommandHandlerTests.cs, AlarmDispatcherTests.cs, AlarmCommandExecutorTests.cs, AlarmRecordTransitionMapperTests.cs, WnWrapAlarmConsumerXmlTests.cs |
| Worker.Tests-010 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Worker.Tests/MxAccess/MxAccessStaSessionTests.cs:230-258 |
| Worker.Tests-011 | Low | Resolved | Documentation & comments | src/MxGateway.Worker.Tests/Sta/StaCommandDispatcherTests.cs:92-112 |
| Worker.Tests-012 | Low | Resolved | Testing coverage | src/MxGateway.Worker.Tests/Ipc/WorkerFrameProtocolTests.cs |
| Worker.Tests-013 | Low | Resolved | Concurrency & thread safety | src/MxGateway.Worker.Tests/Ipc/WorkerPipeSessionTests.cs:539-546 |
| Worker.Tests-014 | Low | Resolved | Code organization & conventions | src/MxGateway.Worker.Tests/Ipc/WorkerPipeClientTests.cs:194, WorkerPipeSessionTests.cs:622, Sta/StaCommandDispatcherTests.cs:348, MxAccess/MxAccessStaSessionTests.cs:334, MxAccess/MxAccessCommandExecutorTests.cs:1124 |
| Worker.Tests-015 | Low | Resolved | Testing coverage | src/MxGateway.Worker.Tests/MxAccess/MxAccessEventQueueTests.cs |
| Worker.Tests-019 | Low | Resolved | mxaccessgw conventions | src/MxGateway.Worker.Tests/AlarmsLiveSmokeTests.cs:45, src/MxGateway.Worker.Tests/AlarmClientWmProbeTests.cs:143, src/MxGateway.Worker.Tests/WnWrapConsumerProbeTests.cs:55 |
| Worker.Tests-020 | Low | Resolved | Concurrency & thread safety | src/MxGateway.Worker.Tests/MxAccess/MxAccessValueCacheTests.cs:88-108 |
| Worker.Tests-021 | Low | Resolved | Error handling & resilience | src/MxGateway.Worker.Tests/Ipc/WorkerFrameProtocolTests.cs |
| Worker.Tests-022 | Low | Resolved | Testing coverage | src/MxGateway.Worker.Tests/MxAccess/WnWrapAlarmConsumerXmlTests.cs |
| Worker.Tests-023 | Low | Resolved | Documentation & comments | src/MxGateway.Worker.Tests/AlarmClientWmProbeTests.cs (779 lines), src/MxGateway.Worker.Tests/WnWrapConsumerProbeTests.cs (287 lines), src/MxGateway.Worker.Tests/AlarmsLiveSmokeTests.cs (270 lines) |
| Worker.Tests-024 | Low | Resolved | Correctness & logic bugs | src/MxGateway.Worker.Tests/MxAccess/AlarmCommandHandlerTests.cs:42-54 |
| Worker.Tests-025 | Low | Resolved | mxaccessgw conventions | src/MxGateway.Worker.Tests/TestSupport/LiveMxAccessFactAttribute.cs:23, src/MxGateway.IntegrationTests/IntegrationTestEnvironment.cs:5, src/MxGateway.IntegrationTests/LiveMxAccessFactAttribute.cs:9-12 |
| Worker.Tests-026 | Low | Resolved | Code organization & conventions | src/MxGateway.Worker/MxAccess/MxAccessSession.cs:74-88 |
| Worker.Tests-027 | Low | Resolved | Concurrency & thread safety | src/MxGateway.Worker.Tests/TestSupport/FakeRuntimeSession.cs:174, 179-187 |
| Worker.Tests-028 | Low | Resolved | Design-document adherence | docs/GatewayTesting.md, src/MxGateway.Worker.Tests/Probes/ |
| Worker.Tests-029 | Low | Resolved | Code organization & conventions | src/MxGateway.Worker.Tests/Probes/AlarmsLiveSmokeTests.cs:9, src/MxGateway.Worker.Tests/Probes/AlarmClientWmProbeTests.cs:14, src/MxGateway.Worker.Tests/Probes/WnWrapConsumerProbeTests.cs:10 |
| Worker.Tests-030 | Low | Resolved | Documentation & comments | src/MxGateway.Worker.Tests/Ipc/WorkerPipeSessionTests.cs:862-890 |
| Worker.Tests-032 | Low | Resolved | Error handling & resilience | src/ZB.MOM.WW.MxGateway.Worker.Tests/MxAccess/FailoverAlarmConsumerTests.cs |
| Worker.Tests-033 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Worker.Tests/MxAccess/SubtagAlarmStateMachineTests.cs |
| Worker.Tests-034 | Low | Resolved | Code organization & conventions | src/ZB.MOM.WW.MxGateway.Worker.Tests/MxAccess/MxAccessCommandExecutorTests.cs:2233, src/ZB.MOM.WW.MxGateway.Worker.Tests/TestSupport/NoopMxAccessServer.cs:97 |
| Worker.Tests-035 | Low | Resolved | Testing coverage | src/ZB.MOM.WW.MxGateway.Worker.Tests/MxAccess/MxAccessCommandExecutorTests.cs, src/ZB.MOM.WW.MxGateway.Worker/MxAccess/MxAccessCommandExecutor.cs:99-136 |
| Worker.Tests-036 | Low | Resolved | Concurrency & thread safety | src/ZB.MOM.WW.MxGateway.Worker.Tests/Ipc/WorkerPipeSessionTests.cs:983-996 |