// ----------------------------------------------------------------------------- // RetentionPolicy.cs // Sprint: SPRINT_20260118_017_Evidence_artifact_store_unification // Task: AS-002 - Implement S3-backed ArtifactStore // Description: Retention policy settings for artifacts // ----------------------------------------------------------------------------- namespace StellaOps.Artifact.Infrastructure; /// /// Retention policy for artifact types. /// Sprint: SPRINT_20260118_017 (AS-002) /// public sealed class RetentionPolicy { /// /// Number of days to retain artifacts. /// public int RetentionDays { get; set; } = 365 * 5; /// /// Whether to delete artifacts after expiry (true) or just mark expired (false). /// public bool DeleteAfterExpiry { get; set; } = false; /// /// Optional S3 storage class to transition to after specified days. /// public string? TransitionStorageClass { get; set; } /// /// Days after creation to transition to TransitionStorageClass. /// public int? TransitionAfterDays { get; set; } }