docs: complete XML doc comments via fixdocs (2757 to 131 findings)

Add missing <returns>/<param>/<summary>/<typeparam> tags and clean up
misused inheritdoc across 481 files so the documented API surface is
complete. Documentation-only (zero code lines changed). The 131 remaining
findings are inheritdoc-style warnings deliberately left to preserve
hand-written implementation rationale (plan-decision notes, race-condition
explanations).
This commit is contained in:
Joseph Doherty
2026-06-03 12:34:34 -04:00
parent c6d9b20d9f
commit bd6c0b4d3d
481 changed files with 2550 additions and 1668 deletions
@@ -19,6 +19,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
// ---- Driver.AbCip-001 — ReinitializeAsync must apply a changed config JSON ----
/// <summary>Tests that InitializeAsync applies devices and tags from the config JSON.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task InitializeAsync_applies_devices_and_tags_from_the_config_json()
{
@@ -40,6 +41,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
}
/// <summary>Tests that ReinitializeAsync with changed config JSON picks up the new device.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task ReinitializeAsync_with_a_changed_config_json_picks_up_the_new_device()
{
@@ -63,6 +65,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
}
/// <summary>Tests that InitializeAsync with blank JSON keeps construction-time options.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task InitializeAsync_with_blank_json_keeps_construction_time_options()
{
@@ -82,6 +85,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
// ---- Driver.AbCip-003 — declaration-only whole-UDT grouping is opt-in ----
/// <summary>Tests that whole UDT grouping is off by default so members read per tag.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task Whole_udt_grouping_is_off_by_default_so_members_read_per_tag()
{
@@ -137,6 +141,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
// ---- Driver.AbCip-008 — ShutdownAsync awaits probe loops; reads are concurrency-safe ----
/// <summary>Tests that ShutdownAsync awaits the probe loop before returning.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task ShutdownAsync_awaits_the_probe_loop_before_returning()
{
@@ -162,6 +167,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
}
/// <summary>Tests that ShutdownAsync is idempotent.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task ShutdownAsync_is_idempotent()
{
@@ -176,6 +182,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
}
/// <summary>Tests that concurrent first reads of the same tag do not corrupt the runtime cache.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task Concurrent_first_reads_of_the_same_tag_do_not_corrupt_the_runtime_cache()
{
@@ -217,6 +224,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
}
/// <summary>Tests that read UDInt tag returns uint value not negative-wrapped int.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task Read_UDInt_tag_returns_uint_value_not_negative_wrapped_int()
{
@@ -243,6 +251,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
// ---- Driver.AbCip-005 — Structure parent not registered; duplicate key check ----
/// <summary>Tests that structure parent tag read returns BadNotSupported not Good null.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task Structure_parent_tag_read_returns_BadNotSupported_not_Good_null()
{
@@ -318,6 +327,7 @@ public sealed class AbCipDriverCodeReviewRegressionTests
// ---- Driver.AbCip-010 — stale runtime evicted on failure ----
/// <summary>Tests that read failure evicts runtime so next read creates fresh handle.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task Read_failure_evicts_runtime_so_next_read_creates_fresh_handle()
{