feat(health): oldest-parked-message age on the site health report (parked-retention aging signal)

This commit is contained in:
Joseph Doherty
2026-07-08 21:49:29 -04:00
parent 0321ad0c20
commit 11c72ecf0f
6 changed files with 88 additions and 2 deletions
@@ -111,6 +111,19 @@ public interface ISiteHealthCollector
/// <param name="count">The number of parked messages.</param>
void SetParkedMessageCount(int count);
/// <summary>
/// Sets the age (seconds) of the oldest parked store-and-forward message for the
/// next <see cref="CollectReport"/> call; <c>null</c> when no rows are parked.
/// Point-in-time (not reset on collect), refreshed by the parked-count poller in
/// <c>HealthReportSender</c>. Default interface implementation is a no-op so
/// existing test fakes continue to compile without per-fake updates.
/// </summary>
/// <param name="ageSeconds">Age in seconds of the oldest parked row, or <c>null</c> if none are parked.</param>
void SetOldestParkedMessageAgeSeconds(double? ageSeconds)
{
// Default no-op so test fakes do not need to be updated.
}
/// <summary>
/// Replace the latest cumulative
/// site-event-log write-failure count (SQLite error, disk full,