feat(wave-1): 适配器框架与安全基座(schema校验/dry-run/exec沙箱/密钥库/日志脱敏/字段拆分)

This commit is contained in:
AgentDock 施工员
2026-08-25 00:38:10 +08:00
parent 296843215f
commit 7208586850
39 changed files with 2323 additions and 81 deletions
+31
View File
@@ -0,0 +1,31 @@
//! 执行层错误类型(中文,不含密钥明文)
use std::fmt;
#[derive(Debug)]
pub enum ExecError {
/// 参数含 shell 元字符等危险输入
DangerousInput(String),
/// 参数槽位白名单校验失败
InvalidSlot(String),
/// 工作目录越界
CwdNotAllowed(String),
/// 进程启动失败
Spawn(String),
/// 非零退出码
NonZeroExit(String),
}
impl fmt::Display for ExecError {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
ExecError::DangerousInput(m) => write!(f, "危险输入: {m}"),
ExecError::InvalidSlot(m) => write!(f, "参数校验失败: {m}"),
ExecError::CwdNotAllowed(m) => write!(f, "工作目录越界: {m}"),
ExecError::Spawn(m) => write!(f, "进程启动失败: {m}"),
ExecError::NonZeroExit(m) => write!(f, "命令非零退出: {m}"),
}
}
}
impl std::error::Error for ExecError {}