pub struct UnusedDependencyFinding {
pub dep: UnusedDependency,
pub finding_id: Option<String>,
pub actions: Vec<IssueAction>,
pub introduced: Option<AuditIntroduced>,
pub effective_severity: Option<EffectiveSeverity>,
pub reachability_caveats: Vec<ReachabilityCaveat>,
}Expand description
Wire-shape envelope for an UnusedDependency finding consumed under
the unused_dependencies key (production deps). Flattens the bare
finding; the typed actions array carries either a remove-dependency
or move-dependency primary depending on
inner.used_in_workspaces.
Fields§
§dep: UnusedDependencyThe underlying dead-code entry.
finding_id: Option<String>Stable id of this finding: dc1:<rule>:<16 hex digits>, with a
~<k> suffix when several findings of one type share an identity.
Line and column are not inputs, so the id survives line shifts,
reformats and reorders. A rename of the file or the symbol gives a
new id. Absent in output from older versions.
actions: Vec<IssueAction>Suggested next steps. Always emitted (possibly empty for forward-compat).
introduced: Option<AuditIntroduced>Set by the audit pass when this finding is introduced relative to the merge-base.
effective_severity: Option<EffectiveSeverity>Gate severity of this finding after rules and overrides[].rules
resolve for its path. CI formats read it for the annotation, SARIF
and CodeClimate level. Absent in output from older versions. Not
part of the finding identity, baseline keys or fingerprints.
reachability_caveats: Vec<ReachabilityCaveat>Advisory caveats on the verdict behind this finding. A dependency is
reported unused when NO module in the project imports its specifier,
so a module that parsed with errors can hide the import that would
have credited the package. Sorted, deduplicated, and omitted from the
wire when empty. Never gates the finding, though fallow fix
withholds the remove-dependency write while a caveat stands.
Implementations§
Source§impl UnusedDependencyFinding
impl UnusedDependencyFinding
Sourcepub fn with_actions(dep: UnusedDependency) -> Self
pub fn with_actions(dep: UnusedDependency) -> Self
Build the wrapper. Switches the primary fix from remove-dependency
to move-dependency when the dep is imported by another workspace.
Trait Implementations§
Source§impl CaveatedFinding for UnusedDependencyFinding
impl CaveatedFinding for UnusedDependencyFinding
Source§fn set_reachability_caveats(&mut self, caveats: Vec<ReachabilityCaveat>)
fn set_reachability_caveats(&mut self, caveats: Vec<ReachabilityCaveat>)
caveats and downgrade every mutating action the gate now
withholds. The field itself stays pub (a renderer test builds an
already-caveated fixture directly, without running the annotation
pass); every non-test writer goes through this setter instead of the
field so the downgrade travels with the write.Source§impl Clone for UnusedDependencyFinding
impl Clone for UnusedDependencyFinding
Source§impl Debug for UnusedDependencyFinding
impl Debug for UnusedDependencyFinding
Source§impl<'de> Deserialize<'de> for UnusedDependencyFinding
impl<'de> Deserialize<'de> for UnusedDependencyFinding
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 GatedFinding for UnusedDependencyFinding
impl GatedFinding for UnusedDependencyFinding
Source§fn effective_severity(&self) -> Option<EffectiveSeverity>
fn effective_severity(&self) -> Option<EffectiveSeverity>
None when no value was written.Source§fn set_effective_severity(&mut self, severity: Option<EffectiveSeverity>)
fn set_effective_severity(&mut self, severity: Option<EffectiveSeverity>)
Source§impl IdentifiedFinding for UnusedDependencyFinding
impl IdentifiedFinding for UnusedDependencyFinding
Source§fn rule_token(&self) -> &'static str
fn rule_token(&self) -> &'static str
Source§fn identity_parts(&self, p: &IdentityPaths<'_>) -> Vec<String>
fn identity_parts(&self, p: &IdentityPaths<'_>) -> Vec<String>
Source§fn tiebreak_position(&self) -> (u32, u32, u32)
fn tiebreak_position(&self) -> (u32, u32, u32)
Source§fn finding_id(&self) -> Option<&str>
fn finding_id(&self) -> Option<&str>
None before the stamping pass.Source§fn set_finding_id(&mut self, id: Option<String>)
fn set_finding_id(&mut self, id: Option<String>)
Source§fn canonical_key(&self, paths: &IdentityPaths<'_>) -> String
fn canonical_key(&self, paths: &IdentityPaths<'_>) -> String
dead_code_canonical_key.