feat(datasync): add repository methods for pipeline viewer

Add GetRecentUpdatesAsync and GetLastRunsAsync interface methods to
IDataUpdateRepository to support the pipeline viewer feature.
This commit is contained in:
Joseph Doherty
2026-01-07 08:00:38 -05:00
parent 18f368fdb2
commit f3ad38b954
@@ -74,6 +74,30 @@ public interface IDataUpdateRepository
Task<List<TableSyncStatus>> GetSyncStatusAsync(
Dictionary<string, int>? customIntervals = null,
CancellationToken cancellationToken = default);
/// <summary>
/// Gets the last N execution records for a specific table.
/// </summary>
/// <param name="tableName">The table name to filter by.</param>
/// <param name="updateType">Optional update type filter. If null, returns all types.</param>
/// <param name="count">Maximum records to return (total, not per type).</param>
/// <param name="cancellationToken">Cancellation token.</param>
/// <returns>List of DataUpdate records ordered by StartDt descending.</returns>
Task<List<DataUpdate>> GetRecentUpdatesAsync(
string tableName,
UpdateTypes? updateType = null,
int count = 30,
CancellationToken cancellationToken = default);
/// <summary>
/// Gets the last run (successful or not) for each update type for a table.
/// </summary>
/// <param name="tableName">The table name.</param>
/// <param name="cancellationToken">Cancellation token.</param>
/// <returns>Dictionary keyed by UpdateType.</returns>
Task<Dictionary<UpdateTypes, DataUpdate>> GetLastRunsAsync(
string tableName,
CancellationToken cancellationToken = default);
}
/// <summary>