namespace StellaOps.Evidence.Bundle;
/// SBOM/VEX diff evidence.
public sealed class DiffEvidence
{
public required EvidenceStatus Status { get; init; }
public string? Hash { get; init; }
public DiffType DiffType { get; init; }
public IReadOnlyList? Entries { get; init; }
public string? PreviousScanId { get; init; }
public DateTimeOffset? PreviousScanTime { get; init; }
public string? UnavailableReason { get; init; }
}
public enum DiffType { Sbom, Vex, Combined }
public sealed class DiffEntry
{
public required DiffOperation Operation { get; init; }
public required string Path { get; init; }
public string? OldValue { get; init; }
public string? NewValue { get; init; }
public string? ComponentPurl { get; init; }
}
public enum DiffOperation { Added, Removed, Modified }