Skip to main content

async_openai/types/shared/
misalignment.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)]
4pub struct MisalignmentErrorDetailsResource {
5    /// An optional classification; clients must accept additional values.
6    #[serde(skip_serializing_if = "Option::is_none")]
7    pub error_type: Option<MisalignmentErrorType>,
8    /// The public explanation for this block.
9    #[serde(skip_serializing_if = "Option::is_none")]
10    pub detailed_explanation: Option<String>,
11    /// An optional public continuation instruction.
12    #[serde(skip_serializing_if = "Option::is_none")]
13    pub steer: Option<MisalignmentSteer>,
14    /// The target identifier for public review.
15    #[serde(skip_serializing_if = "Option::is_none")]
16    pub review_target: Option<String>,
17}
18
19#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
20#[serde(rename_all = "snake_case")]
21pub enum MisalignmentErrorType {
22    PotentiallyUnintendedDataTransfer,
23    PotentiallyUnintendedDataAccess,
24    PotentiallyUnintendedDestructiveActivity,
25    Other,
26    #[serde(untagged)]
27    String(String),
28}
29
30#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)]
31pub struct MisalignmentSteer {
32    /// The public continuation instruction.
33    pub message: String,
34}