Skip to main content

dnspls_core/
lib.rs

1//! Provider-neutral truth kernel for `DNSpls`.
2//!
3//! Protocol adapters translate external responses into [`Observation`] values.
4//! Only this crate decides what those observations are allowed to mean. It has
5//! no networking, async-runtime, storage, MCP, or provider SDK dependencies.
6
7mod evidence;
8mod identity;
9mod reduction;
10mod time;
11mod verification;
12
13pub use dnspls_domain::{
14    BoundaryStatus, DomainErrorCode, DomainIdentity, DomainName, DomainNameError, PublicSuffix,
15    RegistrableDomain,
16};
17pub use evidence::{
18    DnsOutcome, DnssecStatus, EvidenceFact, Observation, ObservationError, ProviderAuthority,
19    ProviderOperation, ProviderStatus, RdapOutcome, ZoneMembership,
20};
21pub use identity::{ObservationId, SourceId, StableIdError};
22pub use reduction::{
23    Contradiction, ContradictionKind, DecisionReason, EvidenceTier, ReductionError, Verdict,
24    VerdictStatus, reduce,
25};
26pub use time::{DurationMillis, FreshWindow, TemporalState, TimeError, UnixMillis};
27pub use verification::{BatchState, Completion, VerificationBatch, VerificationTransitionError};
28
29/// Current stable serialization contract for the kernel's public values.
30pub const SCHEMA_VERSION: &str = "1.0";