namespace AIStudio.Assistants.VisualBriefing; /// /// Represents an expected visual briefing pipeline failure with safe diagnostics. /// internal sealed class VisualBriefingBuildException : Exception { /// /// Initializes an expected pipeline exception. /// /// The stable failure code. /// The failing stage. /// The user-safe message. /// Safe technical details. internal VisualBriefingBuildException(VisualBriefingFailureCode code, VisualBriefingBuildStage stage, string userMessage, string technicalDetails) : base(userMessage) { this.Code = code; this.Stage = stage; this.TechnicalDetails = technicalDetails; } /// /// Gets the stable failure code. /// internal VisualBriefingFailureCode Code { get; } /// /// Gets the failing stage. /// internal VisualBriefingBuildStage Stage { get; } /// /// Gets technical details that exclude user content. /// internal string TechnicalDetails { get; } }