pub struct PresenceReport {
pub verification: BroadcastVerification,
pub evidence: Option<NetworkEvidence>,
pub evidence_provider: &'static str,
pub chain_index: ChainIndexAnswer,
pub broadcaster_fatal: bool,
pub network_absent: bool,
}Expand description
Everything one verification learned, for callers that act on more than the verdict (the broadcast memory, the absence clock).
Evidence is graded by where it came from. The chain index is the only
plane whose answer is chain evidence (PresenceReport::chain_index);
a broadcaster’s SEEN_MULTIPLE_NODES is that provider’s evidence (good
for its reduced sends, credited under its name) and nothing more: on
2026-09-02 Arcade reported it two hours later for transactions the chain
index never saw.
Fields§
§verification: BroadcastVerificationThe verdict (verify’s answer).
evidence: Option<NetworkEvidence>The best network-level evidence from any source, if any.
evidence_provider: &'static strThe broadcast-memory provider to credit with evidence:
BROADCAST_PROVIDER_CHAIN for a chain-index hit,
BROADCAST_PROVIDER_NETWORK for a third-party store (a peer node
has it), PROVIDER_ARCADE_V2 when only the Arcade plane reported
it.
chain_index: ChainIndexAnswerThe chain index’s own answer.
broadcaster_fatal: boolThe broadcaster we submitted through reports a fatal verdict
(REJECTED / DOUBLE_SPEND_ATTEMPTED).
network_absent: boolIn the last probe round the chain index answered absent, the broadcaster answered (held, seen, absent or fatal) and no third-party node vouched for the transaction: it is not on the network right now, whatever the broadcaster says. The reconciler’s absence rule acts on it; it is NOT a verdict by itself.
Implementations§
Source§impl PresenceReport
impl PresenceReport
Sourcepub fn from_verification(verification: BroadcastVerification) -> Self
pub fn from_verification(verification: BroadcastVerification) -> Self
A report carrying only a verdict (tests, callers without a probe).
Trait Implementations§
Source§impl Clone for PresenceReport
impl Clone for PresenceReport
Source§fn clone(&self) -> PresenceReport
fn clone(&self) -> PresenceReport
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 PresenceReport
impl Debug for PresenceReport
impl Eq for PresenceReport
Source§impl PartialEq for PresenceReport
impl PartialEq for PresenceReport
impl StructuralPartialEq for PresenceReport
Auto Trait Implementations§
impl Freeze for PresenceReport
impl RefUnwindSafe for PresenceReport
impl Send for PresenceReport
impl Sync for PresenceReport
impl Unpin for PresenceReport
impl UnsafeUnpin for PresenceReport
impl UnwindSafe for PresenceReport
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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