Files
mxaccessgw/code-reviews
Joseph Doherty 4a0f88b17d Resolve Client.Rust-022..029: MalformedReply, correlation ids, clippy
Client.Rust-022  Restored Error::MalformedReply for register / add_item /
                 add_item2 and the bulk-subscribe / read-bulk / write-bulk
                 dispatch arms so malformed-but-OK replies fail loudly
                 instead of returning Vec::new().
Client.Rust-023  Restored next_correlation_id and routed every CLI close /
                 stream-alarms / acknowledge-alarm / bench-read-bulk call
                 through it so each call carries a unique opaque token.
Client.Rust-024  Added round-trip tests for read_bulk / write_bulk /
                 write2_bulk / write_secured_bulk / write_secured2_bulk
                 plus stream_alarms and percentile_summary unit tests.
Client.Rust-025  RustClientDesign.md re-synced — new bulk SDK, alarms
                 surface, Error variants, CLI command list, and the
                 Windows stack workaround.
Client.Rust-026  Session::read_bulk now borrows a tag slice; bench-read-
                 bulk binds tags once outside the warm-up / steady-state
                 loops.
Client.Rust-027  .cargo/config.toml selector tightened to
                 cfg(all(windows, target_env = "msvc")) and comment
                 rewritten to match reality (release + debug ship the
                 8 MB reservation).
Client.Rust-028  run_batch removed the empty-line break; stdin EOF is
                 the only terminator.
Client.Rust-029  Re-applied Client.Rust-001 / 002 / 012 — added the
                 missing doc comments, renamed BulkReplyKind variants,
                 and replaced the clone-on-copy with a deref under lock
                 so cargo clippy -D warnings is clean.

All resolved at 2026-05-24; cargo fmt + check + clippy + test all green
(55 tests).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 08:50:15 -04:00
..

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-05-24 42b0037 Re-reviewed 4 21
Client.Go Claude Code 2026-05-24 42b0037 Re-reviewed 6 27
Client.Java Claude Code 2026-05-24 42b0037 Re-reviewed 5 36
Client.Python Claude Code 2026-05-24 42b0037 Re-reviewed 5 26
Client.Rust Claude Code 2026-05-24 42b0037 Re-reviewed 8 29
Contracts Claude Code 2026-05-24 42b0037 Re-reviewed 0 17
IntegrationTests Claude Code 2026-05-24 42b0037 Re-reviewed 1 25
Server Claude Code 2026-05-24 42b0037 Re-reviewed 7 50
Tests Claude Code 2026-05-24 42b0037 Re-reviewed 5 31
Worker Claude Code 2026-05-24 42b0037 Re-reviewed 0 25
Worker.Tests Claude Code 2026-05-24 42b0037 Re-reviewed 0 30

Pending findings

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

ID Severity Category Location Description
Client.Java-032 High Documentation & comments clients/java/README.md:182-183 Commit 8738735 ("clients: document StreamAlarms + AcknowledgeAlarm in each README") added two new gradle invocations to the CLI Usage block: ``` gradle :zb-mom-ww-mxgateway-cli:run --args="stream-alarms --endpoint localhost:5000 --api-ke…
Client.Python-022 High Documentation & comments clients/python/README.md:201-202, clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:389-420 The README CLI examples added by commit 8738735 for the new alarm subcommands cite flags the CLI does not accept: ``` mxgw-py stream-alarms --session-id --max-messages 1 --json mxgw-py acknowledge-alarm --session-id --alarm-ref…
Client.Rust-029 High mxaccessgw conventions clients/rust/src/options.rs:98,143; clients/rust/src/galaxy.rs:282; clients/rust/src/session.rs:664-671 cargo clippy --workspace --all-targets -- -D warnings fails at HEAD 42b0037 with three errors that the prior d692232 reviewer noted as "out of scope for Client.Rust-021" but did not open as a tracked finding: ``` error: missing documen…
Client.Dotnet-018 Medium Documentation & comments clients/dotnet/README.md:137-138 The README example block for the two new alarm CLI subcommands shipped in commit 11cc671 shows: ``` mxgw-dotnet stream-alarms --session-id --max-messages 1 --json mxgw-dotnet acknowledge-alarm --session-id --alarm-reference "\…
Client.Go-022 Medium Code organization & conventions clients/go/cmd/mxgw-go/main.go:398-412,417-519 Commit 8aaab82 ("Go client: port bulk read/write SDK methods + CLI subcommands") re-introduces every symptom that Client.Go-015 documented and was marked Resolved against an earlier commit: - `runWriteBulkVariant(ctx, args, stdout, stder…
Client.Go-023 Medium Concurrency & thread safety clients/go/cmd/mxgw-go/main.go:604-606,616-632 runBenchReadBulk's warm-up and steady-state loops are wall-clock-only again: ```go warmupDeadline := time.Now().Add(time.Duration(*warmupSeconds) * time.Second) timeout := time.Duration(*timeoutMs) * time.Millisecond for time.Now().Befor…
Client.Java-033 Medium Correctness & logic bugs clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:1078-1098 StreamAlarmsCommand.call() allocates a bounded ArrayBlockingQueue<Object>(1024) and the gRPC observer publishes each AlarmFeedMessage via queue.offer(value): ``` BlockingQueue
Client.Java-034 Medium Correctness & logic bugs clients/java/zb-mom-ww-mxgateway-cli/src/main/java/com/zb/mom/ww/mxgateway/cli/MxGatewayCli.java:182-198 BatchCommand.call() reads one CLI invocation per stdin line and tokenises with: String[] args = line.trim().split("\\s+"); … int exitCode = cmd.execute(args); split("\\s+") does no shell-quoting parsing — it just splits on whit…
Client.Python-023 Medium Security clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:901-906 Client.Python-013 (severity Medium, Security) was marked
Client.Python-024 Medium Code organization & conventions clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:13,48-119 The new batch subcommand (commit 71d2c39) implements the cross-language batch protocol by importing click.testing.CliRunner into production code and calling runner.invoke(main, args, catch_exceptions=True) in a `for raw_line in sys…
Client.Rust-022 Medium Correctness & logic bugs clients/rust/src/session.rs:369-391,403-420,427-444,452-469,476-493,631-696,706-724 Commit 3251069 re-introduced the bulk read/write SDK methods (read_bulk, write_bulk, write2_bulk, write_secured_bulk, write_secured2_bulk) on Session. Each method falls back to Vec::new() when an OK reply does not carry the…
Client.Rust-024 Medium 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 The diff under review adds substantial SDK and CLI surface with no positive-path coverage: 1. GatewayClient::stream_alarms (client.rs:280-291) has no test. The fake gateway's stream_alarms impl in tests/client_behavior.rs:408-415
Server-044 Medium Correctness & logic bugs src/ZB.MOM.WW.MxGateway.Server/Sessions/SessionManager.cs:216-254 KillWorkerAsync is the mirror of CloseSessionCoreAsync for the new admin-only Kill flow, but its catch path leaks the mxgateway.sessions.open gauge — the exact bug that Server-006 closed for OpenSessionAsync. The happy path increme…
Tests-027 Medium 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 The review brief explicitly flagged MxAccessGatewayServiceTests.StreamEvents_WhenEventIsWritten_RecordsSendDuration as a known flake that "passed solo on rerun". The root cause is the MeterListener subscribes by `instrument.Meter.Name…
Client.Dotnet-019 Low Correctness & logic bugs clients/dotnet/ZB.MOM.WW.MxGateway.Client.Cli/MxGatewayClientCli.cs:745 Client.Dotnet-005 / 010 documented (and recorded as resolved) the silent register-handle fallback pattern reply.Register?.ServerHandle ?? reply.ReturnValue.Int32Value, where a successful protocol+MX-status reply missing its typed `regist…
Client.Dotnet-020 Low 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 BenchReadBulkAsync's steady-state while (DateTime.UtcNow < steadyDeadline) loop wraps each client.InvokeAsync(...) in a bare catch: ```csharp try { reply = await client.InvokeAsync( CreateCommandRequest(sessionId, readBulkMxCommand…
Client.Dotnet-021 Low 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 Both new bulk-read CLI handlers cast a signed --timeout-ms argument to uint without bounds checking: ```csharp // ReadBulkAsync (line 487) TimeoutMs = (uint)arguments.GetInt32("timeout-ms", 0), // BenchReadBulkAsync (line 715) uint tim…
Client.Go-024 Low Testing coverage clients/go/mxgateway/session.go:395-525, clients/go/mxgateway/alarms.go:65-76 The five new bulk SDK methods on Session and the new Client.StreamAlarms method have no unit tests in clients/go/mxgateway/: - Session.WriteBulk (session.go:395) - Session.Write2Bulk (session.go:418) - `Session.WriteSecur…
Client.Go-025 Low Correctness & logic bugs clients/go/mxgateway/session.go:395-485,495-525 The five new bulk methods (WriteBulk, Write2Bulk, WriteSecuredBulk, WriteSecured2Bulk, ReadBulk) each guard with if entries == nil { return error } and an upper-bound ensureBulkSize check, but accept a non-nil empty slice (e.…
Client.Go-026 Low Error handling & resilience clients/go/cmd/mxgw-go/main.go:1196-1222 runBatch reads command lines with a default bufio.Scanner: go scanner := bufio.NewScanner(in) for scanner.Scan() { ... } return scanner.Err() The default bufio.Scanner token size is 64 KiB (bufio.MaxScanTokenSize). One long…
Client.Go-027 Low Code organization & conventions clients/go/cmd/mxgw-go/main.go:1195-1206 runBatch's doc-comment says the loop "never terminates on command error; only stdin EOF (or an empty line) ends the session", and the implementation matches: ```go for scanner.Scan() { line := scanner.Text() if line == "" { break } ... }…
Client.Java-035 Low Testing coverage clients/java/zb-mom-ww-mxgateway-client/src/test/java/com/zb/mom/ww/mxgateway/client/MxGatewayClientSessionTests.java Commit 8a0c59d added MxGatewayClient.streamAlarms(StreamAlarmsRequest, StreamObserver<AlarmFeedMessage>) and a new public MxGatewayAlarmFeedSubscription class. No library-side test exercises either: a grep for streamAlarms across `…
Client.Java-036 Low 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 MxGatewayAlarmFeedSubscription is a structural near-copy of MxGatewayEventSubscription — same AtomicReference<ClientCallStreamObserver<…>> + AtomicBoolean cancelled field shape, the same wrap(observer) returning a `ClientResponse…
Client.Python-025 Low 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 Commits 6add4b4 and 828e3e6 added five new SDK methods (Session.read_bulk, Session.write_bulk, Session.write2_bulk, Session.write_secured_bulk, Session.write_secured2_bulk), GatewayClient.stream_alarms, the helper `_canceli…
Client.Python-026 Low Correctness & logic bugs clients/python/src/zb_mom_ww_mxgateway_cli/commands.py:674-738 Two minor quality issues in the new _bench_read_bulk body (commit 6add4b4): 1. import time is done inside the function body (line 676) rather than at module top. PythonStyleGuide.md does not state this explicitly, but every other h…
Client.Rust-023 Low mxaccessgw conventions clients/rust/crates/mxgw-cli/src/main.rs:835,872,1476 Three CLI subcommands added since d692232 hard-code their client_correlation_id: ```rust client_correlation_id: "rust-cli-stream-alarms".to_owned(), // line 835 client_correlation_id: "rust-cli-acknowledge-alarm".to_owned(), // line 87…
Client.Rust-025 Low Design-document adherence clients/rust/RustClientDesign.md:92-106,142-153,164-171 CLAUDE.md mandates that "When public APIs, contracts, configuration, build steps, security behavior, event shapes, value conversion, status mapping, or lifecycle rules change, the affected docs ... must change in the same commit." The diff…
Client.Rust-026 Low Performance & resource management clients/rust/crates/mxgw-cli/src/main.rs:1402-1406,1419-1423 run_bench_read_bulk clones the tags: Vec<String> on every iteration of both the warmup loop and the steady-state measurement loop: ```rust while Instant::now() < warmup_deadline { let _ = session .read_bulk(server_handle, tags.clone(),…
Client.Rust-027 Low Documentation & comments clients/rust/.cargo/config.toml:1-9 The new build-config file added by 71d2c39 carries this leading comment: ``` [target.'cfg(windows)'] # Bump the default 1 MB Windows stack to 8 MB. clap-derive builds a large # Command enum in this CLI (one variant per subcommand, each c…
Client.Rust-028 Low mxaccessgw conventions clients/rust/crates/mxgw-cli/src/main.rs:1126-1166 run_batch reads commands from stdin with the blocking std::io::Stdin::lock().lines() iterator while the surrounding function is async fn and the runtime is #[tokio::main] (multi-threaded by default). Each `for line in stdin.lock().…
IntegrationTests-025 Low Correctness & logic bugs src/ZB.MOM.WW.MxGateway.IntegrationTests/IntegrationTestEnvironmentTests.cs:57-84 (ResolveRepositoryRoot_NoMarkers_ThrowsInvalidOperationExceptionNamingStartAndMarkers) The new regression test for IntegrationTests-022 builds an "isolated" start directory under Path.GetTempPath() (e.g. C:\Users\<user>\AppData\Local\Temp\<random>\nested on Windows) and calls ResolveRepositoryRoot(isolatedStart), asser…
Server-045 Low 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 KillWorkerAsync reads session.State once into a local bool wasClosed (line 225) before calling session.KillWorker(reason). The read is unsynchronized — State is a getter that takes _syncRoot internally so the read itself is saf…
Server-046 Low Error handling & resilience src/ZB.MOM.WW.MxGateway.Server/Sessions/SessionManager.cs:286-307 ShutdownAsync was updated to fall back to KillWorker when CloseSessionCoreAsync throws (lines 294-305) — a useful resilience improvement on its own. But the fallback's bookkeeping is wrong: session.KillWorker(GatewayShutdownReason)
Server-047 Low 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 The shared ConfirmDialog.razor (added in 0e56b5b / 24cc5fd) is wired by three pages, but the pages handle PendingAction cleanup inconsistently: - ApiKeysPage.ConfirmPendingAsync captures the action, sets PendingAction = null sy…
Server-048 Low Testing coverage src/ZB.MOM.WW.MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs:463-498 The two new KillWorkerAsync_* tests cover the happy path (KillWorkerAsync_KillsWorkerAndRemovesSession) and the missing-session error (KillWorkerAsync_WhenSessionMissing_ThrowsSessionNotFound). Three behaviorally distinct cases are m…
Server-049 Low Documentation & comments src/ZB.MOM.WW.MxGateway.Server/Dashboard/IDashboardSessionAdminService.cs:5-18, src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardSessionAdminService.cs:8-25 IDashboardSessionAdminService declares three members — CanManage, CloseSessionAsync, KillWorkerAsync — none of which carry XML documentation. DashboardSessionAdminService.CanManage and the two operation methods are also undocumen…
Server-050 Low Error handling & resilience src/ZB.MOM.WW.MxGateway.Server/Dashboard/DashboardSessionAdminService.cs:42-75,92-125 CloseSessionAsync and KillWorkerAsync catch only SessionManagerException (the SessionNotFound filter, then a general SessionManagerException catch). Anything else propagates raw to Blazor's error boundary. The propagation paths e…
Tests-028 Low 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 The new KillWorkerAsync_KillsWorkerAndRemovesSession (line 466) and KillWorkerAsync_WhenSessionMissing_ThrowsSessionNotFound (line 486) pin the new kill-path entry, but they do not pin the reason argument propagating through the chai…
Tests-029 Low 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 The new DashboardSessionAdminServiceTests covers the happy path and the viewer-denial path for both CloseSessionAsync and KillWorkerAsync, plus CloseSessionAsync_WhenSessionMissing_ReportsFriendlyError for the close-side `SessionNo…
Tests-030 Low 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 The three new DeleteAsync_* fixtures cover unauthorised user, success path with audit, and store-refuses-with-friendly-error. They do not exercise two production behaviours: (1) DeleteAsync_WhenStoreRefuses_ReportsFriendlyError (line 1…
Tests-031 Low Concurrency & thread safety src/ZB.MOM.WW.MxGateway.Tests/Gateway/Dashboard/DashboardSnapshotPublisherTests.cs:22-61 ExecuteAsync_WhenSnapshotServiceThrowsOnce_ReconnectsAfterDelay records startedAt = DateTimeOffset.UtcNow before calling publisher.StartAsync(...), then asserts secondSubscribeAt - startedAt >= reconnectDelay - 10ms (line 59). Th…

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.Python-018 High Resolved Code organization & conventions clients/python/pyproject.toml:11
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)
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
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.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.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.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.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.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
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
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
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.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
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.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.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.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.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
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)
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)
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
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
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.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