pub struct ProofIntent {Show 17 fields
pub schema_version: String,
pub intent_id: String,
pub command_digest: String,
pub cwd: String,
pub repo_revision: Option<String>,
pub source_fingerprints: Vec<SourceFingerprint>,
pub env_allowlist: Vec<String>,
pub target_dir_policy: String,
pub package_scope: Vec<String>,
pub test_scope: Vec<String>,
pub requested_worker: Option<String>,
pub requested_profile: Option<String>,
pub denial_reason: IncidentReasonCode,
pub replay_constraints: ReplayConstraints,
pub stale_source_policy: StaleSourcePolicy,
pub recorded_at_unix_ms: u64,
pub details: BTreeMap<String, String>,
}Expand description
A durable record of a denied proof attempt.
Fields§
§schema_version: StringSchema version (SchemaComponent::ProofIntent).
intent_id: StringStable id (see derive_intent_id).
command_digest: StringHash of the classified command — NOT the raw command line.
cwd: StringWorking directory the command ran in.
repo_revision: Option<String>Repo revision (e.g. git rev), if any.
source_fingerprints: Vec<SourceFingerprint>Source fingerprints (hashes) captured at denial time.
env_allowlist: Vec<String>Names of env vars that were allowlisted (never their values).
target_dir_policy: StringEffective target-dir policy.
package_scope: Vec<String>Cargo package scope (-p selection).
test_scope: Vec<String>Test scope (test filters), if any.
requested_worker: Option<String>Explicitly requested worker, if any.
requested_profile: Option<String>Explicitly requested profile, if any.
denial_reason: IncidentReasonCodeWhy the proof was denied (stable incident reason vocabulary).
Serializes as its RCH-Innn string; described to schemars as a string.
replay_constraints: ReplayConstraintsConstraints for a future replay.
stale_source_policy: StaleSourcePolicyStale-source policy.
recorded_at_unix_ms: u64Denial time as Unix epoch milliseconds (caller-supplied → deterministic).
details: BTreeMap<String, String>Free-form, redaction-safe details.
Implementations§
Source§impl ProofIntent
impl ProofIntent
Sourcepub fn new(
command_digest: impl Into<String>,
cwd: impl Into<String>,
repo_revision: Option<String>,
target_dir_policy: impl Into<String>,
denial_reason: IncidentReasonCode,
stale_source_policy: StaleSourcePolicy,
replay_constraints: ReplayConstraints,
recorded_at_unix_ms: u64,
) -> Self
pub fn new( command_digest: impl Into<String>, cwd: impl Into<String>, repo_revision: Option<String>, target_dir_policy: impl Into<String>, denial_reason: IncidentReasonCode, stale_source_policy: StaleSourcePolicy, replay_constraints: ReplayConstraints, recorded_at_unix_ms: u64, ) -> Self
Construct an intent, stamping the schema version and deriving the
intent_id from (command_digest, cwd, repo_revision).
pub fn with_source_fingerprints(self, fps: Vec<SourceFingerprint>) -> Self
pub fn with_env_allowlist(self, names: Vec<String>) -> Self
Trait Implementations§
Source§impl Clone for ProofIntent
impl Clone for ProofIntent
Source§impl Debug for ProofIntent
impl Debug for ProofIntent
Source§impl<'de> Deserialize<'de> for ProofIntent
impl<'de> Deserialize<'de> for ProofIntent
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>,
impl Eq for ProofIntent
Source§impl JsonSchema for ProofIntent
impl JsonSchema for ProofIntent
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for ProofIntent
impl PartialEq for ProofIntent
Source§impl Serialize for ProofIntent
impl Serialize for ProofIntent
impl StructuralPartialEq for ProofIntent
Auto Trait Implementations§
impl Freeze for ProofIntent
impl RefUnwindSafe for ProofIntent
impl Send for ProofIntent
impl Sync for ProofIntent
impl Unpin for ProofIntent
impl UnsafeUnpin for ProofIntent
impl UnwindSafe for ProofIntent
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.