using System; namespace Svrnty.CQRS.Sagas.Configuration; /// /// Configuration options for saga orchestration. /// public class SagaOptions { /// /// Default timeout for saga steps (default: 30 seconds). /// public TimeSpan DefaultStepTimeout { get; set; } = TimeSpan.FromSeconds(30); /// /// Default number of retries for failed steps (default: 3). /// public int DefaultMaxRetries { get; set; } = 3; /// /// Default delay between retries (default: 1 second). /// public TimeSpan DefaultRetryDelay { get; set; } = TimeSpan.FromSeconds(1); /// /// Whether to automatically compensate on failure (default: true). /// public bool AutoCompensateOnFailure { get; set; } = true; /// /// Interval for checking pending/stalled sagas (default: 1 minute). /// public TimeSpan StalledSagaCheckInterval { get; set; } = TimeSpan.FromMinutes(1); /// /// Time after which a saga step is considered stalled (default: 5 minutes). /// public TimeSpan StepStalledTimeout { get; set; } = TimeSpan.FromMinutes(5); }