namespace JobTrackerApi.Models; public enum OperationEventKind { Created, Claimed, StageChanged, Completed, RetryScheduled, Failed, CancellationRequested, Cancelled, Retried, LeaseRecovered, Expired } public sealed class UserOperationEvent { public long Id { get; set; } public Guid OperationId { get; set; } public string OwnerUserId { get; set; } = string.Empty; public DateTime AtUtc { get; set; } public string Kind { get; set; } = string.Empty; public string Status { get; set; } = string.Empty; public string? Stage { get; set; } public int Attempt { get; set; } public string? FailureCode { get; set; } }