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,13 +19,24 @@ public sealed class AbLegacyLoggerInjectionTests
{
public readonly List<(LogLevel Level, string Message)> Entries = new();
/// <inheritdoc />
/// <summary>Begins a logical operation scope (returns a no-op scope).</summary>
/// <typeparam name="TState">The type of the state to associate with the scope.</typeparam>
/// <param name="state">The state identifier for the scope.</param>
/// <returns>A no-op disposable scope.</returns>
public IDisposable BeginScope<TState>(TState state) where TState : notnull => NullScope.Instance;
/// <inheritdoc />
/// <summary>Checks whether logging is enabled for the given level (always true).</summary>
/// <param name="logLevel">The log level to check.</param>
/// <returns><see langword="true"/> always.</returns>
public bool IsEnabled(LogLevel logLevel) => true;
/// <inheritdoc />
/// <summary>Records a log entry into the captured entries list.</summary>
/// <typeparam name="TState">The type of the log state object.</typeparam>
/// <param name="logLevel">The severity level of the log entry.</param>
/// <param name="eventId">The event identifier for the log entry.</param>
/// <param name="state">The state object associated with the log entry.</param>
/// <param name="exception">An optional exception to log.</param>
/// <param name="formatter">A function that formats the state and exception into a message string.</param>
public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception? exception,
Func<TState, Exception?, string> formatter)
=> Entries.Add((logLevel, formatter(state, exception)));
@@ -33,7 +44,7 @@ public sealed class AbLegacyLoggerInjectionTests
{
public static readonly NullScope Instance = new();
/// <inheritdoc />
/// <summary>Disposes the no-op scope (no-op).</summary>
public void Dispose() { }
}
}
@@ -50,6 +61,7 @@ public sealed class AbLegacyLoggerInjectionTests
}
/// <summary>Verifies that driver initialization failure emits an error log.</summary>
/// <returns>A task that represents the asynchronous test operation.</returns>
[Fact]
public async Task InitializeAsync_failure_emits_error_log()
{
@@ -68,6 +80,7 @@ public sealed class AbLegacyLoggerInjectionTests
}
/// <summary>Verifies that the first non-zero libplctag status per device is logged.</summary>
/// <returns>A task that represents the asynchronous test operation.</returns>
[Fact]
public async Task First_nonzero_libplctag_status_per_device_is_logged()
{