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
@@ -37,6 +37,7 @@ public sealed class AbLegacyReadSmokeTests(AbLegacyServerFixture sim)
/// <summary>Verifies that the driver reads seeded N file from the AB server via PCCC.</summary>
/// <param name="profile">The AB Legacy server profile describing the fixture endpoint.</param>
/// <returns>A task that represents the asynchronous operation.</returns>
[AbLegacyTheory]
[MemberData(nameof(Profiles))]
public async Task Driver_reads_seeded_N_file_from_ab_server_PCCC(AbLegacyServerProfile profile)
@@ -73,6 +74,7 @@ public sealed class AbLegacyReadSmokeTests(AbLegacyServerFixture sim)
}
/// <summary>Verifies that SLC500 write-then-read round trip succeeds on N7 scratch register.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[AbLegacyFact]
public async Task Slc500_write_then_read_round_trip_on_N7_scratch_register()
{
@@ -85,9 +85,11 @@ public sealed class AbLegacyServerFixture : IAsyncLifetime
}
/// <summary>Initializes the fixture asynchronously.</summary>
/// <returns>A completed value task.</returns>
public ValueTask InitializeAsync() => ValueTask.CompletedTask;
/// <summary>Disposes the fixture asynchronously.</summary>
/// <returns>A completed value task.</returns>
public ValueTask DisposeAsync() => ValueTask.CompletedTask;
/// <summary>
@@ -96,6 +98,7 @@ public sealed class AbLegacyServerFixture : IAsyncLifetime
/// fixture logic because attribute ctors fire before the collection fixture instance
/// exists.
/// </summary>
/// <returns><see langword="true"/> if the server endpoint is reachable; otherwise <see langword="false"/>.</returns>
public static bool IsServerAvailable()
{
var (host, port) = ResolveEndpoint();
@@ -169,6 +172,7 @@ public static class KnownProfiles
/// <summary>Gets the profile for the specified PLC family.</summary>
/// <param name="family">The PLC family.</param>
/// <returns>The server profile for the specified family.</returns>
public static AbLegacyServerProfile ForFamily(AbLegacyPlcFamily family) =>
All.FirstOrDefault(p => p.Family == family)
?? throw new ArgumentOutOfRangeException(nameof(family), family, "No integration profile for this family.");