docs(xml): fill missing XML doc comments + strip task-tracking refs across src (fixdocs)

Add missing <summary>/<param>/<returns>/<typeparam> tags and switch
interface implementations to <inheritdoc/> across 106 files; strip
project bookkeeping identifiers (Task NN, #05-TNN, PLAN-04, StoreAndForward-0NN)
from shipped code comments while preserving the descriptive rationale.
Comment-only: zero code-logic lines changed; solution builds 0/0.

Claude-Session: https://claude.ai/code/session_01MtdgwpEeCUn6cUA5f1LMPj
This commit is contained in:
Joseph Doherty
2026-07-10 08:23:56 -04:00
parent 75007b9edd
commit 5a878b78d4
106 changed files with 580 additions and 180 deletions
@@ -57,7 +57,8 @@ public class NotificationRecipientConfiguration : IEntityTypeConfiguration<Notif
public class SmsConfigurationConfiguration : IEntityTypeConfiguration<SmsConfiguration>
{
/// <inheritdoc />
/// <summary>Configures the EF Core mapping for <see cref="SmsConfiguration"/>.</summary>
/// <param name="builder">The entity type builder.</param>
public void Configure(EntityTypeBuilder<SmsConfiguration> builder)
{
builder.HasKey(s => s.Id);
@@ -127,7 +128,7 @@ public class SmtpConfigurationConfiguration : IEntityTypeConfiguration<SmtpConfi
.IsRequired()
.HasMaxLength(500);
// Optional OAuth2 token-endpoint overrides — null preserves the M365 defaults.
// Optional OAuth2 token-endpoint overrides — null preserves the Microsoft 365 defaults.
builder.Property(s => s.OAuth2Authority)
.IsRequired(false)
.HasMaxLength(500);
@@ -229,7 +229,7 @@ VALUES
/// <inheritdoc />
public async Task<long> SwitchOutPartitionAsync(DateTime monthBoundary, TimeSpan? commandTimeout = null, CancellationToken ct = default)
{
// Task 12 (arch-review 04 S5) note: the drop-and-rebuild batch below runs via
// The drop-and-rebuild batch below runs via
// ExecuteSqlRaw with NO EF user-transaction — it carries its own server-side
// BEGIN TRANSACTION / TRY-CATCH / ROLLBACK — so the DbContext's retrying
// execution strategy (EnableRetryOnFailure) MAY auto-replay the whole batch on
@@ -29,7 +29,7 @@ public class SiteCallAuditRepository : ISiteCallAuditRepository
// A higher incoming rank always wins. WITHIN an equal NON-terminal rank
// (Attempted/Skipped, rank 2 — and the transient Submitted/Forwarded ranks),
// the newest UpdatedAtUtc wins so a retrying call's live RetryCount/LastError
// no longer freezes at first-write (Task 11). Equal terminal ranks (rank 3)
// no longer freezes at first-write. Equal terminal ranks (rank 3)
// stay immutable — the freshness tiebreaker is deliberately scoped to
// rank < 3, so a later terminal NEVER flips an earlier one (Delivered cannot
// overwrite Parked). Still idempotent (equal stamps are inert) and still
@@ -110,7 +110,7 @@ VALUES
// non-terminal (< TerminalRank) AND the incoming UpdatedAtUtc is strictly
// newer than the stored one — so a retrying call's Attempted-phase
// RetryCount/LastError/HttpStatus stay live instead of freezing at the
// first Attempted packet (Task 11). Terminal ranks are excluded from the
// first Attempted packet. Terminal ranks are excluded from the
// tiebreaker, so a later terminal NEVER overwrites an earlier one; equal
// stamps are inert (idempotent replay) and a lower rank is always a no-op.
//
@@ -30,16 +30,6 @@ public static class ServiceCollectionExtensions
{
options.UseSqlServer(
connectionString,
// Task 12 (arch-review 04 S5): connection resiliency. A transient
// SQL fault (failover, throttling, dropped connection) previously
// surfaced raw to every read-side caller — KPI asks, outbox
// queries, Tracking.Status, execution-tree walks. EnableRetryOnFailure
// installs the SqlServerRetryingExecutionStrategy so those retry
// transparently. Note: manual (user-initiated) transactions are NOT
// auto-retried — EF executes them directly while a transaction is
// active — so the combined-telemetry dual-write is wrapped in an
// explicit CreateExecutionStrategy() to become retriable (see
// AuditLogIngestActor.OnCachedTelemetryAsync).
sql => sql.EnableRetryOnFailure(
maxRetryCount: 5,
maxRetryDelay: TimeSpan.FromSeconds(30),