diff --git a/docs/structuregaps.md b/docs/structuregaps.md index d8858ce..b54fba3 100644 --- a/docs/structuregaps.md +++ b/docs/structuregaps.md @@ -1,17 +1,18 @@ -comm# Implementation Gaps: Go NATS Server vs .NET Port +# Implementation Gaps: Go NATS Server vs .NET Port -**Last updated:** 2026-02-24 (fresh scan) +**Last updated:** 2026-02-25 ## Overview | Metric | Go Server | .NET Port | Ratio | |--------|-----------|-----------|-------| -| Source lines | ~130K (109 files) | ~38.8K (208 files) | 3.4x | -| Test functions | 2,937 `func Test*` | 3,168 `[Fact]`/`[Theory]` | 0.93x | -| Tests mapped | 2,646 (90.1%) | — | — | +| Source lines | ~130K (109 files) | ~39.1K (215 files) | 3.3x | +| Test methods | 2,937 `func Test*` | 5,808 `[Fact]`/`[Theory]` (~6,409 with parameterized) | 2.0x | +| Go tests mapped | 2,646 / 2,937 (90.1%) | — | — | +| .NET tests linked to Go | — | 2,485 / 5,808 (42.8%) | — | | Largest source file | filestore.go (12,593 lines) | NatsServer.cs (1,883 lines) | 6.7x | -The .NET port has grown significantly from the prior baseline (~27K→~38.8K lines). All 15 original gaps have seen substantial growth. However, many specific features within each subsystem remain unimplemented. This document catalogs the remaining gaps based on a function-by-function comparison. +The .NET port has grown significantly from the prior baseline (~27K→~39.1K lines). All 15 original gaps have seen substantial growth. However, many specific features within each subsystem remain unimplemented. This document catalogs the remaining gaps based on a function-by-function comparison. ## Gap Severity Legend @@ -945,4 +946,6 @@ All 2,937 Go tests have been categorized: - **19 skipped** (0.6%) — intentionally deferred - **0 unmapped** — none remaining -The .NET test suite (3,168 test methods) achieves good coverage breadth but many tests validate API contracts against stubs/mocks rather than testing actual distributed behavior. The gap is in test *depth*, not test *count*. +The .NET test suite has **5,808 test methods** (expanding to ~6,409 with parameterized `[Theory]` test cases). Of these, **2,485** (42.8%) are linked back to Go test counterparts via the `test_mappings` table (57,289 mapping rows). The remaining 3,323 .NET tests are original — covering areas like unit tests for .NET-specific implementations, additional edge cases, and subsystems that don't have 1:1 Go equivalents. + +Many tests validate API contracts against stubs/mocks rather than testing actual distributed behavior. The gap is in test *depth*, not test *count*.