From b2d8dd70ed57dfae047e90fe5970c4cb455c9ae8 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Sat, 15 Aug 2026 17:35:05 -0400 Subject: [PATCH] chore(plans): Phase B implementation complete; as-built note for Task 17 --- .../2026-08-15-perf-review-remediation.md | 2 + ...8-15-perf-review-remediation.md.tasks.json | 211 +++++++++++++++--- 2 files changed, 186 insertions(+), 27 deletions(-) diff --git a/docs/plans/2026-08-15-perf-review-remediation.md b/docs/plans/2026-08-15-perf-review-remediation.md index 71e8f89..269625e 100644 --- a/docs/plans/2026-08-15-perf-review-remediation.md +++ b/docs/plans/2026-08-15-perf-review-remediation.md @@ -438,6 +438,8 @@ Commit: `perf(worker): signal-driven event drain — removes the 25 ms latency f **Implement:** copy the `WriteCompletionWaitMilliseconds` plumbing end to end under a new name (`MXGW_EVENT_QUEUE_CAPACITY` shaped like the existing variable's naming). Absent/invalid env value → default 10000 (never crash the worker on a bad value; log and default). +> **As-built note (1358332):** shipped as silent default without logging, matching the alarm-resolver precedent — no `ILogger` is reachable from the static resolve site without new plumbing; the silent fallback is disclosed in `GatewayConfiguration.md`. The Bootstrap parser files listed above were correctly NOT touched — the established env-var pattern reads `Environment.GetEnvironmentVariable` at the resolve site. + Note the gateway-side files here don't overlap Phase A tasks — safe after Task 15. Commit: `perf(worker): launcher-configurable event queue capacity` diff --git a/docs/plans/2026-08-15-perf-review-remediation.md.tasks.json b/docs/plans/2026-08-15-perf-review-remediation.md.tasks.json index 1a2be11..e8c6d7b 100644 --- a/docs/plans/2026-08-15-perf-review-remediation.md.tasks.json +++ b/docs/plans/2026-08-15-perf-review-remediation.md.tasks.json @@ -1,31 +1,188 @@ { "planPath": "docs/plans/2026-08-15-perf-review-remediation.md", "tasks": [ - {"id": 1, "subject": "Task 1: Named-pipe buffer sizes", "status": "completed"}, - {"id": 2, "subject": "Task 2: Metrics pull-gauge + Interlocked counters", "status": "completed"}, - {"id": 3, "subject": "Task 3: Distributor copy-on-write subscriber snapshot", "status": "completed"}, - {"id": 4, "subject": "Task 4: Dashboard event mirror viewer gating", "status": "completed"}, - {"id": 5, "subject": "Task 5: Snapshot pipeline idle gating + cached config", "status": "completed"}, - {"id": 6, "subject": "Task 6: Reply ownership transfer in MapCommandReply", "status": "completed"}, - {"id": 7, "subject": "Task 7: WorkerClient WaitAsync timeout + WorkerCancel", "status": "completed", "blockedBy": [2]}, - {"id": 8, "subject": "Task 8: Audit pipeline background writer + retention", "status": "completed"}, - {"id": 9, "subject": "Task 9: Parallel session teardown", "status": "completed"}, - {"id": 10, "subject": "Task 10: Dashboard live-data subscription cap", "status": "completed"}, - {"id": 11, "subject": "Task 11: Alarm monitor cached CurrentAlarms", "status": "completed"}, - {"id": 12, "subject": "Task 12: Logging middleware hoist + bearer redaction fix", "status": "completed"}, - {"id": 13, "subject": "Task 13: Auth-path span parsing + limiter keys", "status": "completed"}, - {"id": 14, "subject": "Task 14: Bulk constraint loops, caches, hygiene", "status": "completed"}, - {"id": 15, "subject": "Task 15: Phase A gate — full gateway suite", "status": "in_progress", "blockedBy": [1,2,3,4,5,6,7,8,9,10,11,12,13,14]}, - {"id": 16, "subject": "Task 16: Event drain wake signal", "status": "pending", "blockedBy": [15]}, - {"id": 17, "subject": "Task 17: Event queue capacity env plumbing", "status": "pending", "blockedBy": [16]}, - {"id": 18, "subject": "Task 18: STA message-driven completion waits", "status": "pending", "blockedBy": [15]}, - {"id": 19, "subject": "Task 19: Handle registry reverse index + O(1) removals", "status": "pending", "blockedBy": [15]}, - {"id": 20, "subject": "Task 20: Event conversion TryParseExact + compiled accessors", "status": "pending", "blockedBy": [15]}, - {"id": 21, "subject": "Task 21: Drain size memoized at enqueue", "status": "pending", "blockedBy": [16, 17]}, - {"id": 22, "subject": "Task 22: Worker frame writer/reader pooled buffers", "status": "pending", "blockedBy": [15]}, - {"id": 23, "subject": "Task 23: Alarm consumer parse + truncation + cadence", "status": "pending", "blockedBy": [15]}, - {"id": 24, "subject": "Task 24: Phase B verification on windev (psbridge)", "status": "pending", "blockedBy": [16,17,18,19,20,21,22,23]}, - {"id": 25, "subject": "Task 25: Wrap-up docs sweep + follow-ups", "status": "pending", "blockedBy": [24]} + { + "id": 1, + "subject": "Task 1: Named-pipe buffer sizes", + "status": "completed" + }, + { + "id": 2, + "subject": "Task 2: Metrics pull-gauge + Interlocked counters", + "status": "completed" + }, + { + "id": 3, + "subject": "Task 3: Distributor copy-on-write subscriber snapshot", + "status": "completed" + }, + { + "id": 4, + "subject": "Task 4: Dashboard event mirror viewer gating", + "status": "completed" + }, + { + "id": 5, + "subject": "Task 5: Snapshot pipeline idle gating + cached config", + "status": "completed" + }, + { + "id": 6, + "subject": "Task 6: Reply ownership transfer in MapCommandReply", + "status": "completed" + }, + { + "id": 7, + "subject": "Task 7: WorkerClient WaitAsync timeout + WorkerCancel", + "status": "completed", + "blockedBy": [ + 2 + ] + }, + { + "id": 8, + "subject": "Task 8: Audit pipeline background writer + retention", + "status": "completed" + }, + { + "id": 9, + "subject": "Task 9: Parallel session teardown", + "status": "completed" + }, + { + "id": 10, + "subject": "Task 10: Dashboard live-data subscription cap", + "status": "completed" + }, + { + "id": 11, + "subject": "Task 11: Alarm monitor cached CurrentAlarms", + "status": "completed" + }, + { + "id": 12, + "subject": "Task 12: Logging middleware hoist + bearer redaction fix", + "status": "completed" + }, + { + "id": 13, + "subject": "Task 13: Auth-path span parsing + limiter keys", + "status": "completed" + }, + { + "id": 14, + "subject": "Task 14: Bulk constraint loops, caches, hygiene", + "status": "completed" + }, + { + "id": 15, + "subject": "Task 15: Phase A gate \u2014 full gateway suite", + "status": "completed", + "blockedBy": [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14 + ] + }, + { + "id": 16, + "subject": "Task 16: Event drain wake signal", + "status": "completed", + "blockedBy": [ + 15 + ] + }, + { + "id": 17, + "subject": "Task 17: Event queue capacity env plumbing", + "status": "completed", + "blockedBy": [ + 16 + ] + }, + { + "id": 18, + "subject": "Task 18: STA message-driven completion waits", + "status": "completed", + "blockedBy": [ + 15 + ] + }, + { + "id": 19, + "subject": "Task 19: Handle registry reverse index + O(1) removals", + "status": "completed", + "blockedBy": [ + 15 + ] + }, + { + "id": 20, + "subject": "Task 20: Event conversion TryParseExact + compiled accessors", + "status": "completed", + "blockedBy": [ + 15 + ] + }, + { + "id": 21, + "subject": "Task 21: Drain size memoized at enqueue", + "status": "completed", + "blockedBy": [ + 16, + 17 + ] + }, + { + "id": 22, + "subject": "Task 22: Worker frame writer/reader pooled buffers", + "status": "completed", + "blockedBy": [ + 15 + ] + }, + { + "id": 23, + "subject": "Task 23: Alarm consumer parse + truncation + cadence", + "status": "completed", + "blockedBy": [ + 15 + ] + }, + { + "id": 24, + "subject": "Task 24: Phase B verification on windev (psbridge)", + "status": "in_progress", + "blockedBy": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + }, + { + "id": 25, + "subject": "Task 25: Wrap-up docs sweep + follow-ups", + "status": "pending", + "blockedBy": [ + 24 + ] + } ], - "lastUpdated": "2026-08-15T13:30:00Z" -} + "lastUpdated": "2026-08-15T18:05:00Z" +} \ No newline at end of file