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; }
}