docs: fill missing XML docs and strip tracking IDs from src comments
Clears CommentChecker findings in src/ (3,280 -> 209, the remainder being false positives like PLC-5/IEEE-754/M0.0) by adding missing summaries/params/returns, normalising inheritdoc usage, and removing Gitea/review tracking IDs while keeping the rationale they annotated. Comment-only: comment-stripped sources are identical to the parent commit.
This commit is contained in:
@@ -8,7 +8,7 @@ namespace ZB.MOM.WW.OtOpcUa.Runtime.Telemetry;
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// <b>No DPS.</b> This hub is fed only by this node's own in-process producers (a later Phase-5
|
||||
/// <b>No DPS.</b> This hub is fed only by this node's own in-process producers (a later
|
||||
/// task taps them). It never subscribes to cluster DistributedPubSub — see the invariant on
|
||||
/// <see cref="ITelemetryLocalHub"/>.
|
||||
/// </para>
|
||||
@@ -37,12 +37,12 @@ public sealed class TelemetryLocalHub : ITelemetryLocalHub
|
||||
|
||||
// Snapshot last-value caches. Only ever mutated under _gate (kept ConcurrentDictionary so a
|
||||
// Subscribe reading them under the gate is trivially safe even against any future lock-free read).
|
||||
// Entries are evicted via Evict when DriverHostActor removes the instance (#609), so a
|
||||
// Entries are evicted via Evict when DriverHostActor removes the instance, so a
|
||||
// decommissioned driver's last-known state does not replay to new subscribers.
|
||||
private readonly ConcurrentDictionary<string, TelemetryItem.Health> _healthCache = new();
|
||||
private readonly ConcurrentDictionary<(string InstanceId, string HostName), TelemetryItem.Resilience> _resilienceCache = new();
|
||||
|
||||
// Instances evicted and not since readmitted (#609). Their late Health/Resilience items are dropped, so a
|
||||
// Instances evicted and not since readmitted. Their late Health/Resilience items are dropped, so a
|
||||
// removed driver's still-stopping child cannot re-prime the cache it was just evicted from. Under _gate.
|
||||
private readonly HashSet<string> _evicted = new(StringComparer.Ordinal);
|
||||
|
||||
@@ -141,6 +141,10 @@ public sealed class TelemetryLocalHub : ITelemetryLocalHub
|
||||
private readonly Guid _id;
|
||||
private int _disposed;
|
||||
|
||||
/// <summary>Creates a subscription over a hub channel.</summary>
|
||||
/// <param name="hub">The owning hub, notified on dispose.</param>
|
||||
/// <param name="id">The subscription id.</param>
|
||||
/// <param name="channel">The channel whose reader is exposed.</param>
|
||||
public Subscription(TelemetryLocalHub hub, Guid id, Channel<TelemetryItem> channel)
|
||||
{
|
||||
_hub = hub;
|
||||
@@ -148,8 +152,10 @@ public sealed class TelemetryLocalHub : ITelemetryLocalHub
|
||||
Reader = channel.Reader;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public ChannelReader<TelemetryItem> Reader { get; }
|
||||
|
||||
/// <summary>Detaches this subscription from the hub; safe to call more than once.</summary>
|
||||
public void Dispose()
|
||||
{
|
||||
if (Interlocked.Exchange(ref _disposed, 1) != 0)
|
||||
|
||||
Reference in New Issue
Block a user