pub struct PropDrillingChainFinding {
pub chain: PropDrillingChain,
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 PropDrillingChain finding. There is no safe
auto-fix: collapsing a drilling chain (colocate the consumer, lift to a
context, or compose the component) is a design decision. The only action is a
line-level suppress at the source hop’s prop declaration. The rule defaults
to off (opt-in health signal), so this finding is dormant by default.
Fields§
§chain: PropDrillingChainThe underlying located chain.
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>Rule severity of this finding. This type never gates the run, so the
value does not change the exit code. fallow report --from reads it
for the SARIF level, so the level does not depend on the config at
render time. Absent in output from older versions. Not part of the
finding identity, baseline keys or fingerprints.
Implementations§
Source§impl PropDrillingChainFinding
impl PropDrillingChainFinding
Sourcepub fn with_actions(chain: PropDrillingChain) -> Self
pub fn with_actions(chain: PropDrillingChain) -> Self
Build the wrapper from a raw PropDrillingChain. Emits only a
line-level suppress action anchored at the source hop: there is no safe
auto-fix because collapsing the chain is a design decision (colocate,
lift to context, or compose).
Trait Implementations§
Source§impl Clone for PropDrillingChainFinding
impl Clone for PropDrillingChainFinding
Source§impl Debug for PropDrillingChainFinding
impl Debug for PropDrillingChainFinding
Source§impl<'de> Deserialize<'de> for PropDrillingChainFinding
impl<'de> Deserialize<'de> for PropDrillingChainFinding
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 PropDrillingChainFinding
impl GatedFinding for PropDrillingChainFinding
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 PropDrillingChainFinding
impl IdentifiedFinding for PropDrillingChainFinding
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.