perf(comms): alarms-only seed, capped buffers, at-least-once audit pull

This commit is contained in:
Joseph Doherty
2026-08-14 21:10:19 -04:00
parent 1040dc0fcc
commit 2ce0ad7ed1
30 changed files with 1941 additions and 482 deletions
@@ -1,5 +1,19 @@
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.DebugView;
/// <summary>
/// Asks one instance for a point-in-time <see cref="DebugViewSnapshot"/>.
/// </summary>
/// <param name="InstanceUniqueName">Unique name of the instance to snapshot.</param>
/// <param name="CorrelationId">Correlation id echoed on the reply.</param>
/// <param name="AlarmsOnly">
/// When <c>true</c> the site builds ONLY the alarm half of the snapshot and returns an
/// empty <see cref="DebugViewSnapshot.AttributeValues"/> list (wire efficiency, WP2.3).
/// Set by the central per-site live alarm cache, whose seed/reconcile fan-out discards
/// every attribute row anyway. Defaults to <c>false</c> so the Debug View and every other
/// caller keep the full snapshot; additive on the wire
/// (<c>DebugSnapshotRequestDto.alarms_only</c>, field 3).
/// </param>
public record DebugSnapshotRequest(
string InstanceUniqueName,
string CorrelationId);
string CorrelationId,
bool AlarmsOnly = false);