namespace KArtSell.Modules.ModelOperations.ShadowRun; /// /// Command to initiate a 252+ trading-day shadow run for model validation. /// public sealed record ShadowRunCommand( Guid ModelId, Guid CorrelationId, Guid IdempotencyKey, DateOnly WindowStartDate, DateOnly WindowEndDate, MarketPhaseFilter PhaseFilter = MarketPhaseFilter.All) { public Guid RunId { get; } = Guid.NewGuid(); } /// /// Market phases for segmented analysis during shadow run. /// public enum MarketPhaseFilter { All = 0, BullMarket = 1, BearMarket = 2, Sideways = 3, HighVolatility = 4 }