pub struct MisplacedDirectiveFinding {
pub directive_site: MisplacedDirective,
pub finding_id: Option<String>,
pub actions: Vec<IssueAction>,
pub introduced: Option<AuditIntroduced>,
pub effective_severity: Option<EffectiveSeverity>,
}Expand description
Wire-shape envelope for a MisplacedDirective finding. There is no safe
auto-fix: moving a directive to the leading prologue is a small but
judgement-bearing edit (the author may have intended the file to be a
server module after all). Actions are a manual hoist-directive fix (the
real remediation) plus a line-level suppress.
Fields§
§directive_site: MisplacedDirectiveThe 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.
Implementations§
Source§impl MisplacedDirectiveFinding
impl MisplacedDirectiveFinding
Sourcepub fn with_actions(directive_site: MisplacedDirective) -> Self
pub fn with_actions(directive_site: MisplacedDirective) -> Self
Build the wrapper from a raw MisplacedDirective. Emits a manual fix
action (hoist the directive to the leading prologue) plus a line-level
suppress: there is no safe auto-fix because moving a directive can
change module semantics and is a human decision.
Trait Implementations§
Source§impl Clone for MisplacedDirectiveFinding
impl Clone for MisplacedDirectiveFinding
Source§impl Debug for MisplacedDirectiveFinding
impl Debug for MisplacedDirectiveFinding
Source§impl<'de> Deserialize<'de> for MisplacedDirectiveFinding
impl<'de> Deserialize<'de> for MisplacedDirectiveFinding
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 MisplacedDirectiveFinding
impl GatedFinding for MisplacedDirectiveFinding
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 MisplacedDirectiveFinding
impl IdentifiedFinding for MisplacedDirectiveFinding
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.