pub struct AgentEventMetadata {
pub session_id: SessionId,
pub causal_context_hash: Hash,
pub capability_id: Option<CapabilityId>,
pub attestation_hash: Option<Hash>,
pub reasoning: Option<String>,
pub human_approved: bool,
}Expand description
Structured metadata embedded in agent audit events.
This is serialized to JSON and stored in the AuditEvent.metadata
field, providing the full accountability context for any agent action.
Fields§
§session_id: SessionIdSession in which the action occurred.
causal_context_hash: HashCausal context linking this event to its origin.
capability_id: Option<CapabilityId>Capability that authorized this action.
attestation_hash: Option<Hash>Hash of the agent’s attestation for cross-reference.
reasoning: Option<String>Reasoning summary for the action.
human_approved: boolWhether human approval was obtained.
Implementations§
Source§impl AgentEventMetadata
impl AgentEventMetadata
Sourcepub fn new(session_id: SessionId, causal_context: &CausalContext) -> Self
pub fn new(session_id: SessionId, causal_context: &CausalContext) -> Self
Create metadata for an agent action.
Sourcepub fn with_capability(self, id: CapabilityId) -> Self
pub fn with_capability(self, id: CapabilityId) -> Self
Set the capability that authorized this action.
Sourcepub fn with_attestation_hash(self, hash: Hash) -> Self
pub fn with_attestation_hash(self, hash: Hash) -> Self
Set the attestation hash for cross-reference.
Sourcepub fn with_reasoning(self, reasoning: impl Into<String>) -> Self
pub fn with_reasoning(self, reasoning: impl Into<String>) -> Self
Set the reasoning summary.
Sourcepub fn with_human_approval(self) -> Self
pub fn with_human_approval(self) -> Self
Mark that human approval was obtained.
Sourcepub fn from_bytes(bytes: &[u8]) -> Result<Self>
pub fn from_bytes(bytes: &[u8]) -> Result<Self>
Deserialize from AuditEvent metadata bytes.
Trait Implementations§
Source§impl Clone for AgentEventMetadata
impl Clone for AgentEventMetadata
Source§fn clone(&self) -> AgentEventMetadata
fn clone(&self) -> AgentEventMetadata
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AgentEventMetadata
impl Debug for AgentEventMetadata
Source§impl<'de> Deserialize<'de> for AgentEventMetadata
impl<'de> Deserialize<'de> for AgentEventMetadata
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for AgentEventMetadata
impl RefUnwindSafe for AgentEventMetadata
impl Send for AgentEventMetadata
impl Sync for AgentEventMetadata
impl Unpin for AgentEventMetadata
impl UnwindSafe for AgentEventMetadata
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.