refinement phase 9

This commit is contained in:
hamid
2026-07-13 22:52:57 +03:30
parent ef3024ef2f
commit 70fb0a9202
32 changed files with 6945 additions and 113 deletions
@@ -28,4 +28,17 @@ public interface IAuditLogger
int page,
int pageSize,
CancellationToken cancellationToken = default);
/// <summary>
/// Retention sweep (refinement-phase-9 §9.4): deletes audit rows past their retention window. Financial /
/// compliance entity types (money + verification) keep a longer legal window than everyday rows. Processes the
/// oldest rows first, capped at <paramref name="maxRowsPerRun"/> so a large backlog drains across runs without
/// loading the whole table. Returns the number of rows deleted.
/// </summary>
ValueTask<int> PurgeExpiredAsync(
int generalRetentionDays,
int financialRetentionDays,
IReadOnlyCollection<string> financialEntityTypes,
int maxRowsPerRun,
CancellationToken cancellationToken = default);
}