pub struct AuditCapture { /* private fields */ }Expand description
Captures audit context across a single proxied request lifecycle.
§Usage
ⓘ
let compiled = redaction_config.compile();
let mut capture = AuditCapture::begin_compiled(Arc::new(compiled));
capture.set_agent_id("agent-1");
capture.set_tool_called("/tools/call");
// … proxy the request …
let entry = capture.finalize(Some(200));
audit_sink.write(&entry).await?;Implementations§
Source§impl AuditCapture
impl AuditCapture
Sourcepub fn begin(redaction_config: RedactionConfig) -> Self
pub fn begin(redaction_config: RedactionConfig) -> Self
Begin a new audit capture with a fresh request ID.
Compiles redaction patterns on each call. For hot-path usage, prefer
begin_compiled with a pre-compiled config.
Sourcepub fn begin_compiled(compiled: Arc<CompiledRedaction>) -> Self
pub fn begin_compiled(compiled: Arc<CompiledRedaction>) -> Self
Begin a new audit capture with pre-compiled redaction patterns.
Sourcepub fn begin_with_id(
request_id: Uuid,
redaction_config: RedactionConfig,
) -> Self
pub fn begin_with_id( request_id: Uuid, redaction_config: RedactionConfig, ) -> Self
Begin a new audit capture with a caller-supplied request ID.
Sourcepub fn begin_with_id_compiled(
request_id: Uuid,
compiled: Arc<CompiledRedaction>,
) -> Self
pub fn begin_with_id_compiled( request_id: Uuid, compiled: Arc<CompiledRedaction>, ) -> Self
Begin a new audit capture with a caller-supplied request ID and pre-compiled redaction patterns.
pub fn set_agent_id(&mut self, agent_id: impl Into<String>)
pub fn set_delegation_chain(&mut self, chain: impl Into<String>)
pub fn set_task_session_id(&mut self, session_id: impl Into<String>)
pub fn set_tool_called(&mut self, tool: impl Into<String>)
pub fn set_arguments(&mut self, args: Value)
pub fn set_policy_matched(&mut self, policy: impl Into<String>)
pub fn set_anomaly_flags(&mut self, flags: Vec<String>)
pub fn set_failure_category(&mut self, category: impl Into<String>)
pub fn add_inspection_findings(&mut self, findings: Vec<String>)
Sourcepub fn finalize(self, upstream_status: Option<u16>) -> AuditEntry
pub fn finalize(self, upstream_status: Option<u16>) -> AuditEntry
Finalize the capture: compute latency, apply redaction, return the entry.
Auto Trait Implementations§
impl Freeze for AuditCapture
impl RefUnwindSafe for AuditCapture
impl Send for AuditCapture
impl Sync for AuditCapture
impl Unpin for AuditCapture
impl UnsafeUnpin for AuditCapture
impl UnwindSafe for AuditCapture
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