pub struct AgentProvenanceRecordProto {Show 13 fields
pub decision_ts: u64,
pub seq: u64,
pub caller_user_id: String,
pub caller_agent_id: String,
pub caller_team_ids: Vec<String>,
pub op: String,
pub target_step_id: u64,
pub target_scope: String,
pub target_owner: String,
pub decision: String,
pub denied_fields: Vec<String>,
pub grants_snapshot_hash: String,
pub record_json: Vec<u8>,
}Expand description
One immutable provenance record (mirrors auth::scope::ProvenanceRecord). The
payload is also carried as canonical JSON in record_json so the offline
re-check tool can deserialize the exact ProvenanceRecord without re-deriving
fields.
Fields§
§decision_ts: u64§seq: u64per-record monotonic sequence (key tiebreaker)
caller_user_id: String§caller_agent_id: Stringempty = no agent principal on the token
caller_team_ids: Vec<String>§op: Stringadd_step | get_step | traverse | find_similar | get_edges
target_step_id: u64§target_scope: Stringworld | team | private
target_owner: String§decision: Stringallowed | denied_scope | denied_field | admin_bypass
denied_fields: Vec<String>populated for denied_field decisions
grants_snapshot_hash: StringSHA-256 hex of the caller’s grant set
record_json: Vec<u8>canonical JSON of the stored ProvenanceRecord
Trait Implementations§
Source§impl Clone for AgentProvenanceRecordProto
impl Clone for AgentProvenanceRecordProto
Source§fn clone(&self) -> AgentProvenanceRecordProto
fn clone(&self) -> AgentProvenanceRecordProto
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 AgentProvenanceRecordProto
impl Debug for AgentProvenanceRecordProto
Source§impl Default for AgentProvenanceRecordProto
impl Default for AgentProvenanceRecordProto
Source§impl Message for AgentProvenanceRecordProto
impl Message for AgentProvenanceRecordProto
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self.impl StructuralPartialEq for AgentProvenanceRecordProto
Auto Trait Implementations§
impl Freeze for AgentProvenanceRecordProto
impl RefUnwindSafe for AgentProvenanceRecordProto
impl Send for AgentProvenanceRecordProto
impl Sync for AgentProvenanceRecordProto
impl Unpin for AgentProvenanceRecordProto
impl UnsafeUnpin for AgentProvenanceRecordProto
impl UnwindSafe for AgentProvenanceRecordProto
Blanket Implementations§
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request