namespace StellaOps.JobEngine.WebService.Contracts; /// /// API response for first signal endpoint. /// public sealed record FirstSignalResponse { public required Guid RunId { get; init; } public required FirstSignalDto? FirstSignal { get; init; } public required string SummaryEtag { get; init; } } public sealed record FirstSignalDto { public required string Type { get; init; } public string? Stage { get; init; } public string? Step { get; init; } public required string Message { get; init; } public required DateTimeOffset At { get; init; } public FirstSignalArtifactDto? Artifact { get; init; } public FirstSignalLastKnownOutcomeDto? LastKnownOutcome { get; init; } } public sealed record FirstSignalArtifactDto { public required string Kind { get; init; } public FirstSignalRangeDto? Range { get; init; } } public sealed record FirstSignalLastKnownOutcomeDto { public required string SignatureId { get; init; } public string? ErrorCode { get; init; } public required string Token { get; init; } public string? Excerpt { get; init; } public required string Confidence { get; init; } public required DateTimeOffset FirstSeenAt { get; init; } public required int HitCount { get; init; } } public sealed record FirstSignalRangeDto { public required int Start { get; init; } public required int End { get; init; } }