pub struct AuditEntry {Show 17 fields
pub request_id: String,
pub correlation_id: String,
pub ecosystem: String,
pub package_name: String,
pub package_version: String,
pub variant: String,
pub policy_decision: String,
pub verdict_id: String,
pub verdict_source: String,
pub policy_rule_id_matched: String,
pub risk_acceptance_status: String,
pub reasoning: String,
pub gcs_hit: bool,
pub request_at: String,
pub verdict_at: String,
pub response_at: String,
pub app_version: String,
}Expand description
One audit log entry returned from GET /v1/audit.
CLEANLIB-366 — App wire is source of truth. Mirrors the App-side
AuditRow (cleanlib-audit-clickhouse) which the App serializes into each
element of the records array. Prior CLI struct silently dropped fields
because names had drifted (package vs App’s package_name, version vs
package_version, decision vs policy_decision, reason vs
reasoning, at vs request_at) — with #[serde(default)] deserialize
succeeded and every field came back empty. Same class as CLEANLIB-348.
Field names below match AuditRow exactly. All fields default-tolerant
via struct-level #[serde(default)] so partial responses or App-side
schema evolution do not force a CLI recompile.
UUID fields on the App side (request_id, verdict_id) serialize as
hyphenated strings; datetime fields (request_at, verdict_at,
response_at, …) serialize as RFC 3339 strings — hence String here.
Fields§
§request_id: String§correlation_id: String§ecosystem: String§package_name: String§package_version: String§variant: String§policy_decision: String§verdict_id: String§verdict_source: String§policy_rule_id_matched: String§risk_acceptance_status: String§reasoning: String§gcs_hit: bool§request_at: String§verdict_at: String§response_at: String§app_version: StringTrait Implementations§
Source§impl Clone for AuditEntry
impl Clone for AuditEntry
Source§fn clone(&self) -> AuditEntry
fn clone(&self) -> AuditEntry
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more