pub struct EnrichedFinding {
pub rule_id: String,
pub severity: Severity,
pub category: String,
pub file_path: String,
pub line: Option<usize>,
pub issue: IssueDetails,
pub analysis: AnalysisContext,
pub fix: FixRecommendation,
pub references: Vec<DocReference>,
}Expand description
Enriched finding after OpenCode + RAG processing (Stage 2)
This contains the full analysis with explanations, fix recommendations, and documentation references from the RAG system.
Fields§
§rule_id: StringRule ID (e.g., “WH001”, “SEC002”)
severity: SeveritySeverity level
category: StringCategory (e.g., “webhooks”, “security”, “billing”)
file_path: StringFile path where the issue was found
line: Option<usize>Line number (if available)
issue: IssueDetailsDetailed issue information
analysis: AnalysisContextAnalysis context from RAG
fix: FixRecommendationFix recommendation
references: Vec<DocReference>Documentation references
Implementations§
Source§impl EnrichedFinding
impl EnrichedFinding
Sourcepub fn from_raw(raw: &RawFinding) -> Self
pub fn from_raw(raw: &RawFinding) -> Self
Create from a raw finding (without enrichment yet)
Sourcepub fn is_blocking(&self) -> bool
pub fn is_blocking(&self) -> bool
Check if this is a blocking issue
Trait Implementations§
Source§impl Clone for EnrichedFinding
impl Clone for EnrichedFinding
Source§fn clone(&self) -> EnrichedFinding
fn clone(&self) -> EnrichedFinding
Returns a duplicate of the value. Read more
1.0.0 · 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 EnrichedFinding
impl Debug for EnrichedFinding
Source§impl<'de> Deserialize<'de> for EnrichedFinding
impl<'de> Deserialize<'de> for EnrichedFinding
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for EnrichedFinding
impl RefUnwindSafe for EnrichedFinding
impl Send for EnrichedFinding
impl Sync for EnrichedFinding
impl Unpin for EnrichedFinding
impl UnwindSafe for EnrichedFinding
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
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