34 lines
1.2 KiB
C#
34 lines
1.2 KiB
C#
using MarketAlly.GitCommitEditor.Models;
|
|
using MarketAlly.GitCommitEditor.Models.HistoryHealth;
|
|
|
|
namespace MarketAlly.GitCommitEditor.Services;
|
|
|
|
/// <summary>
|
|
/// Service for analyzing git repository history health.
|
|
/// </summary>
|
|
public interface IHistoryHealthAnalyzer
|
|
{
|
|
/// <summary>
|
|
/// Performs a comprehensive health analysis of a repository.
|
|
/// </summary>
|
|
/// <param name="repoPath">Path to the repository.</param>
|
|
/// <param name="options">Analysis options.</param>
|
|
/// <param name="progress">Progress reporter.</param>
|
|
/// <param name="ct">Cancellation token.</param>
|
|
/// <returns>Analysis results.</returns>
|
|
Task<HistoryHealthAnalysis> AnalyzeAsync(
|
|
string repoPath,
|
|
HistoryAnalysisOptions? options = null,
|
|
IProgress<AnalysisProgress>? progress = null,
|
|
CancellationToken ct = default);
|
|
|
|
/// <summary>
|
|
/// Performs a comprehensive health analysis of a managed repository.
|
|
/// </summary>
|
|
Task<HistoryHealthAnalysis> AnalyzeAsync(
|
|
ManagedRepo repo,
|
|
HistoryAnalysisOptions? options = null,
|
|
IProgress<AnalysisProgress>? progress = null,
|
|
CancellationToken ct = default);
|
|
}
|