pub mod continuity;
pub mod controller;
pub mod delivery;
pub mod emitter;
pub mod evaluator;
pub mod frames;
pub mod identity;
pub mod incarnation;
pub mod lease;
pub mod negotiation;
pub mod org_gate;
#[cfg(feature = "redex")]
pub mod rendezvous;
pub mod scope;
pub mod snapshot;
pub mod table;
pub mod wire;
pub use frames::{FrameSpecError, SensingInterestFrame, ValidatedProviderRegistration};
pub use lease::{
LeaseAction, LeaseRefused, LeaseToken, SensingInterestLeases, SensingLeaseKey,
SensingLeaseTicket,
};
pub use negotiation::{select_sensing_path, SensingPath, SENSING_CAPABILITY_TAG};
pub use org_gate::{
canonical_org_sensing_commitment, verify_org_sensing_registration, OrgSensingRejection,
ValidatedOrgSensingRegistration,
};
pub(crate) use org_gate::{
capture_current_sensing_stamp, capture_live_org_relay_membership,
capture_sensing_authority_snapshot, plan_provider_continuation, AdmittedSensingRegistration,
LiveOrgRelayMembership, RegistrationAuthority, RegistrationLeg, RelayMembershipUnavailable,
SensingAuthoritySnapshot, SensingAuthorityUnavailable,
};
#[cfg(feature = "redex")]
pub use rendezvous::{
closeness_score, sensing_leader, FrameRejection, LeaderReconciliation, LeaderRefusalPartition,
LeaderRegistration, SensingLeader, SensingLeaderLoad,
};
pub use scope::{validate_subscriber_scope, ScopeError};
pub use wire::{
decode_attestation, decode_interest_frame, encode_attestation, encode_interest_frame,
semantic_attestation, sign_attestation, verify_attestation, AttestationBridgeError,
AttestationSignError, AttestationVerifyError, ReadinessAttestation, UnsignedAttestation,
WireError, ATTESTATION_SIG_DOMAIN, MAX_SENSING_FRAME_BYTES, SENSING_PROVISIONAL_STREAM,
SUBPROTOCOL_READINESS_ATTESTATION, SUBPROTOCOL_SENSING_INTEREST,
};
pub use controller::{
classify_branch, population_is_boundable, project_aggregate, resolve_candidates, AggregateView,
BranchViability, BranchView, CandidatePolicy, CandidateProvider, ResolutionRefusal,
ResolvedCandidates, TagAssertion,
};
pub use delivery::{Attestation, Delivery, SensingConsumer, SensingRelay};
pub use emitter::{
DueBeat, OriginEmitter, StreamRefusal, MAX_LIVE_SENSING_STREAMS, MAX_STREAM_SLOTS,
STREAM_SLOTS_LOW_WATER,
};
pub use snapshot::{
build_candidate_snapshot, declares_capability, extract_declarers, proximity_route_estimate,
DeclaredProvider, HOP_FALLBACK_ESTIMATE, UNKNOWN_ROUTE_ESTIMATE,
};
pub use table::{
DownstreamEntry, DownstreamId, InterestTable, RefusalPartition, RegisterOutcome, UpstreamAction,
};
pub use evaluator::{
check_cadence, project_evaluation, validate_interest_constraints, CadenceRefusal,
EvaluationRequest, ReadinessEvaluation, ReadinessEvaluator, SensingCounters, StatusReason,
DEFAULT_ATTESTATION_CADENCE_FLOOR,
};
pub use continuity::{
project, AttestedStatus, Continuity, DeliveredBeat, DisruptReason, ObservationCell,
ProjectedReadiness, ReadinessObservation,
};
pub use incarnation::{
next_incarnation, Admission, Incarnation, IncarnationError, IncarnationPersistence,
IncarnationSeqGate, PersistenceFault,
};
pub use identity::{
strictest_sample_interval, AudienceScopeCommitment, CanonicalConstraints, CapabilityId,
CapabilityInterestKey, ConstraintError, ConsumerLatencyBudget, Digest256, DisclosureClass,
GroupRef, InterestRegistration, InterestSpec, ProviderInterestKey, ProviderObservationKey,
ProviderSelector, ResultMode, TagMatch, WorkLatencyEnvelope, CONSTRAINTS_DIGEST_DOMAIN,
INTEREST_DIGEST_DOMAIN, MAX_CONSTRAINT_BYTES,
};