pub struct DedupedMatch {
pub detector_id: Arc<str>,
pub detector_name: Arc<str>,
pub service: Arc<str>,
pub severity: Severity,
pub credential: SensitiveString,
pub credential_hash: CredentialHash,
pub companions: HashMap<String, String>,
pub primary_location: MatchLocation,
pub additional_locations: Vec<MatchLocation>,
pub confidence: Option<f64>,
pub entropy: Option<f64>,
}Expand description
A group of related raw matches representing a single distinct secret finding.
Manual Debug impl redacts the credential field - the previous
derive-Debug was a CRITICAL leak vector (kimi-wave1 audit finding 1.2).
Fields§
§detector_id: Arc<str>Stable detector identifier.
detector_name: Arc<str>Human-readable detector name.
service: Arc<str>Service namespace associated with the detector.
severity: SeveritySeverity preserved from the original match.
credential: SensitiveStringUnredacted credential for verification.
credential_hash: CredentialHashSHA-256 hash of the original credential for internal correlation. Named credential digest for suppression, correlation, and reporting.
companions: HashMap<String, String>Optional companion credentials extracted nearby.
primary_location: MatchLocationPrimary source location.
additional_locations: Vec<MatchLocation>Additional duplicate locations.
confidence: Option<f64>Confidence score (0.0 - 1.0) combining entropy, keyword proximity, file type, etc.
entropy: Option<f64>Shannon entropy measured for the credential, when the detection path
computed it. None means entropy was not part of that path.
Trait Implementations§
Source§impl Clone for DedupedMatch
impl Clone for DedupedMatch
Source§fn clone(&self) -> DedupedMatch
fn clone(&self) -> DedupedMatch
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DedupedMatch
impl Debug for DedupedMatch
Auto Trait Implementations§
impl Freeze for DedupedMatch
impl RefUnwindSafe for DedupedMatch
impl Send for DedupedMatch
impl Sync for DedupedMatch
impl Unpin for DedupedMatch
impl UnsafeUnpin for DedupedMatch
impl UnwindSafe for DedupedMatch
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
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