24 lines
1.1 KiB
C#
24 lines
1.1 KiB
C#
namespace MarketAlly.GitCommitEditor.Models;
|
|
|
|
public sealed class CommitAnalysis
|
|
{
|
|
public required string RepoId { get; init; }
|
|
public required string RepoName { get; init; }
|
|
public required string RepoPath { get; init; }
|
|
public required string CommitHash { get; init; }
|
|
public string ShortHash => CommitHash.Length >= 7 ? CommitHash[..7] : CommitHash;
|
|
public required string OriginalMessage { get; init; }
|
|
public string? SuggestedMessage { get; set; }
|
|
public required DateTimeOffset CommitDate { get; init; }
|
|
public required string Author { get; init; }
|
|
public required string AuthorEmail { get; init; }
|
|
public required MessageQualityScore Quality { get; init; }
|
|
public IReadOnlyList<string> FilesChanged { get; init; } = [];
|
|
public string? DiffSummary { get; init; }
|
|
public IReadOnlyDictionary<string, string> FileDiffs { get; init; } = new Dictionary<string, string>();
|
|
public int LinesAdded { get; init; }
|
|
public int LinesDeleted { get; init; }
|
|
public AnalysisStatus Status { get; set; } = AnalysisStatus.Pending;
|
|
public bool IsLatestCommit { get; init; }
|
|
}
|