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 AbLegacyDriverTests
}
/// <summary>Verifies that InitializeAsync with devices assigns family profiles.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task InitializeAsync_with_devices_assigns_family_profiles()
{
@@ -41,6 +42,7 @@ public sealed class AbLegacyDriverTests
}
/// <summary>Verifies that InitializeAsync with malformed host address faults.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task InitializeAsync_with_malformed_host_address_faults()
{
@@ -55,6 +57,7 @@ public sealed class AbLegacyDriverTests
}
/// <summary>Verifies that ShutdownAsync clears devices.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task ShutdownAsync_clears_devices()
{
@@ -115,6 +118,7 @@ public sealed class AbLegacyDriverTests
// ---- Driver.AbLegacy-012: profile fields consumed ----
/// <summary>Verifies that EffectiveCipPath falls back to profile default when host path is empty.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task EffectiveCipPath_falls_back_to_profile_default_when_host_path_is_empty()
{
@@ -135,6 +139,7 @@ public sealed class AbLegacyDriverTests
}
/// <summary>Verifies that EffectiveCipPath preserves explicit host path.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task EffectiveCipPath_preserves_explicit_host_path()
{
@@ -154,6 +159,7 @@ public sealed class AbLegacyDriverTests
}
/// <summary>Verifies that long tag on MicroLogix device is rejected at initialization.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task Long_tag_on_MicroLogix_device_rejected_at_init()
{
@@ -170,6 +176,7 @@ public sealed class AbLegacyDriverTests
}
/// <summary>Verifies that long tag on SLC 500 device is accepted.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task Long_tag_on_Slc500_device_accepted()
{
@@ -186,6 +193,7 @@ public sealed class AbLegacyDriverTests
}
/// <summary>Verifies that string tag on PLC-5 device is rejected at initialization.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task String_tag_on_Plc5_device_rejected_at_init()
{