Files
Genarrative/server-rs/crates/module-creative-agent/src/errors.rs
2026-05-08 11:44:42 +08:00

36 lines
1.3 KiB
Rust

use std::{error::Error, fmt};
#[derive(Clone, Debug, PartialEq, Eq)]
pub enum CreativeAgentError {
MissingSessionId,
MissingOwnerUserId,
MissingMessageId,
MissingMessageText,
MissingTemplateSelection,
MissingCostRange,
MissingTargetSessionId,
InvalidStageTransition,
TemplateNotConfirmed,
UnsupportedTargetPlayType,
}
impl fmt::Display for CreativeAgentError {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
let message = match self {
Self::MissingSessionId => "creative session_id 缺失",
Self::MissingOwnerUserId => "creative owner_user_id 缺失",
Self::MissingMessageId => "creative message_id 缺失",
Self::MissingMessageText => "creative message text 缺失",
Self::MissingTemplateSelection => "拼图模板选择缺失",
Self::MissingCostRange => "拼图模板积分范围缺失",
Self::MissingTargetSessionId => "目标拼图 session 缺失",
Self::InvalidStageTransition => "创意 Agent 阶段迁移不合法",
Self::TemplateNotConfirmed => "拼图模板未确认,不能创建草稿",
Self::UnsupportedTargetPlayType => "Phase 1 只允许绑定拼图 target",
};
write!(f, "{message}")
}
}
impl Error for CreativeAgentError {}