pub struct AnalysisArtifact {
pub schema_version: u32,
pub source: Option<RevisionRef>,
pub base: Option<RevisionRef>,
pub analyses: Vec<AnalysisRecord>,
pub findings: Vec<AnalysisFinding>,
pub diffs: Vec<FileDiff>,
pub hot_spots: Vec<SemanticHotSpot>,
pub behavior_changes: Vec<BehaviorChange>,
pub behavior_coverage: Vec<BehaviorAnalysisCoverage>,
pub thread: Option<ThreadRef>,
pub base_thread: Option<ThreadRef>,
pub semantic_index: Option<SemanticIndexArtifact>,
}Expand description
Immutable derived analysis output. Stored under an opaque Thread-scoped artifact identity; this is never an authorization wrapper for source bytes. Readers decode one canonical message, not concatenated stream frames. The producer rejects outputs larger than its advertised artifact byte budget.
Fields§
§schema_version: u32Version 1. Unknown versions must be rejected before interpreting payloads.
source: Option<RevisionRef>§base: Option<RevisionRef>§analyses: Vec<AnalysisRecord>§findings: Vec<AnalysisFinding>§diffs: Vec<FileDiff>§hot_spots: Vec<SemanticHotSpot>§behavior_changes: Vec<BehaviorChange>§behavior_coverage: Vec<BehaviorAnalysisCoverage>§thread: Option<ThreadRef>§base_thread: Option<ThreadRef>§semantic_index: Option<SemanticIndexArtifact>Each analysis names its implementation/version and reports actual coverage. Raw transcripts, runtime secrets, and original private attachments are not analysis output and cannot be placed into this derived-artifact envelope.
Trait Implementations§
Source§impl Clone for AnalysisArtifact
impl Clone for AnalysisArtifact
Source§fn clone(&self) -> AnalysisArtifact
fn clone(&self) -> AnalysisArtifact
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 AnalysisArtifact
impl Debug for AnalysisArtifact
Source§impl Default for AnalysisArtifact
impl Default for AnalysisArtifact
Source§fn default() -> AnalysisArtifact
fn default() -> AnalysisArtifact
Returns the “default value” for a type. Read more
Source§impl Message for AnalysisArtifact
impl Message for AnalysisArtifact
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.Source§impl PartialEq for AnalysisArtifact
impl PartialEq for AnalysisArtifact
impl StructuralPartialEq for AnalysisArtifact
Auto Trait Implementations§
impl Freeze for AnalysisArtifact
impl RefUnwindSafe for AnalysisArtifact
impl Send for AnalysisArtifact
impl Sync for AnalysisArtifact
impl Unpin for AnalysisArtifact
impl UnsafeUnpin for AnalysisArtifact
impl UnwindSafe for AnalysisArtifact
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> 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 more