pub struct AnalyzeImpactMetadata {
pub incoming: Option<Vec<ImpactReference>>,
pub outgoing: Option<Vec<ImpactReference>>,
pub depth_reached: u32,
pub files_referenced: usize,
pub degraded: bool,
pub degraded_reason: Option<String>,
pub version_hashes: HashMap<String, String>,
}Expand description
The metadata embedded in structured_content for analyze_impact.
Fields§
§incoming: Option<Vec<ImpactReference>>Symbols that call the target (caller graph).
null when degraded is true — LSP was unavailable so callers are unknown.
An empty array [] means LSP confirmed zero callers.
outgoing: Option<Vec<ImpactReference>>Symbols the target calls (callee graph).
null when degraded is true — LSP was unavailable so callees are unknown.
An empty array [] means LSP confirmed zero callees.
depth_reached: u32Number of transitive levels traversed.
files_referenced: usizeTotal files referenced across all incoming and outgoing references.
degraded: boolWhether the call hierarchy analysis was degraded (LSP unavailable or crashed).
Always present. When true, incoming and outgoing are null (not empty arrays).
degraded_reason: Option<String>Machine-readable reason for degradation (e.g., no_lsp, lsp_crash, lsp_timeout).
Absent when degraded is false.
version_hashes: HashMap<String, String>SHA-256 version hashes for all referenced files (including the target file itself),
keyed by relative file path. Agents can use these as base_version for immediate
editing without a separate read call.
Trait Implementations§
Source§impl Debug for AnalyzeImpactMetadata
impl Debug for AnalyzeImpactMetadata
Source§impl<'de> Deserialize<'de> for AnalyzeImpactMetadata
impl<'de> Deserialize<'de> for AnalyzeImpactMetadata
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>,
Source§impl JsonSchema for AnalyzeImpactMetadata
impl JsonSchema for AnalyzeImpactMetadata
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 moreAuto Trait Implementations§
impl Freeze for AnalyzeImpactMetadata
impl RefUnwindSafe for AnalyzeImpactMetadata
impl Send for AnalyzeImpactMetadata
impl Sync for AnalyzeImpactMetadata
impl Unpin for AnalyzeImpactMetadata
impl UnsafeUnpin for AnalyzeImpactMetadata
impl UnwindSafe for AnalyzeImpactMetadata
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> 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>
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>
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