Skip to main content

Crate vigil_types

Crate vigil_types 

Source
Expand description

vigil-types

跨 crate 共享的核心数据类型。严格对应主方案 §2 的 10 个对象。

I00 仅声明类型骨架并锁定不变量:

  • Debug / Display 对 SecretLease 等敏感类型必须脱敏
  • 枚举必须是 #[non_exhaustive](跨 crate),以便后续迭代扩展而不破坏 ABI
  • 所有类型支持 serde(审计账本、UI 协议、lease broker 都要序列化)

运行时行为(存储 / 校验 / hash chain)不在本 crate 范围,参见各专用 crate。

Re-exports§

pub use approval::ApprovalRequest;
pub use approval::ApprovalResolution;
pub use approval::ApprovalScope;
pub use approval::ApprovalStatus;
pub use audit::AuditEvent;
pub use decision::DecisionKind;
pub use decision::DecisionRecord;
pub use effect::EffectKind;
pub use effect::EffectVector;
pub use invocation::ToolInvocation;
pub use lease::InjectionMethod;
pub use lease::SecretLease;
pub use principal::Principal;
pub use principal::PrincipalKind;
pub use principal::TrustLevel;
pub use server::ServerProfile;
pub use server::TransportKind;
pub use session::Session;
pub use session::SessionSource;
pub use tool::ToolDescriptor;

Modules§

approval
ApprovalRequest:需要人类或策略批准的请求。
audit
AuditEvent:append-only 审计事件(接入 vigil-audit 的 hash chain 账本)。
decision
DecisionRecord:Vigil 的核心真相 —— 每次调用是否放行的裁决。
effect
EffectVector / EffectKind:Vigil 自己推断出来的真实影响(不依赖 tool description)。
invocation
ToolInvocation:一次工具调用请求(进入 firewall 前的原始形态)。
lease
SecretLease:短期凭据租约。
principal
Principal:发起动作的主体。
server
ServerProfile:一个 MCP server 或本地工具 server 的身份档案。
session
Session:一次 agent / browser / MCP 活动上下文。
tool
ToolDescriptor:MCP tools/list 得到的工具描述。