#![doc = include_str!("../README.md")]
pub mod ai;
pub mod build_info;
pub mod composite;
pub mod config;
pub mod contracts;
pub mod effect_binding;
pub mod error;
pub mod event;
pub mod http_client;
pub mod id;
pub mod ingress;
pub mod journal;
pub mod metrics;
pub mod time;
pub mod web;
pub use effect_binding::{
BindingEvidenceDigest, BindingEvidenceError, BoundedBindingEvidence, EffectBindingIdentity,
MAX_BINDING_EVIDENCE_BYTES,
};
pub use error::Result;
pub use event::chain_event::ChainEvent;
pub use event::context::runtime_context;
pub use event::context::MiddlewareExecutionScope;
pub use event::event_envelope::EventEnvelope;
pub use event::EventId;
pub use event::{AdmissionSeq, EventType, JournalWriterId, ReaderGeneration, WriterId};
pub use journal::journal_error::JournalError;
pub use journal::journal_owner::JournalOwner;
pub use journal::Journal;
extern crate self as obzenflow_core;
pub use event::schema::{
assert_distinct_stage_fact_set, DeclaredStageFactSet, EffectOutcomeFacts, Member,
MiddlewareContextKey, OneFactStageOutput, StageFactSet, StageOutputFacts, StageOutputs,
SubsetOf, TypedFact, TypedFactSet, TypedFactSetError, TypedFactType, TypedPayload,
};
pub use id::{CycleDepth, FlowId, JournalId, SccId, StageId, StageKey, SystemId};
pub use ulid::Ulid;
pub use chrono;
pub use contracts::{
Contract, ContractContext, ContractEventScope, ContractEvidence, ContractReadContext,
ContractResult, ContractState, ContractViolation, ContractWriteContext, DeliveryContract,
DivergenceContract, DivergenceThresholds, HashMismatch, SourceContract, TransportContract,
ViolationCause,
};