1#![warn(rustc::all)]
34#![warn(clippy::pedantic)]
35#![deny(unsafe_code)]
36#![deny(unsafe_op_in_unsafe_fn)]
37#![deny(nonstandard_style)]
38#![deny(missing_debug_implementations)]
39#![deny(clippy::missing_errors_doc)]
40#![deny(clippy::missing_panics_doc)]
41#![deny(rustdoc::broken_intra_doc_links)]
42
43pub mod backend;
44pub mod capture;
45pub mod codec;
46pub mod entry;
47pub mod error;
48pub mod hash;
49pub mod headers;
50pub mod kernel;
51pub mod manifest;
52pub mod markers;
53pub mod reader;
54pub mod replay;
55pub mod retention;
56pub mod snapshot;
57pub mod verifier;
58pub mod writer;
59
60mod format;
61mod wire;
62
63pub use backend::{
64 AppendEntry, EventStore, IndexKey, IndexKind, MemoryBackend, RedbBackend, ScanDirection,
65};
66pub use capture::{
67 BusCaptureAdapter, CaptureError, Encode, EncodeError, EncodedPayload, EncoderRegistry,
68 PAYLOAD_TYPE_ACCOUNT_STATE, PAYLOAD_TYPE_FILL_REPORT, PAYLOAD_TYPE_ORDER_FILLED,
69 PAYLOAD_TYPE_ORDER_STATUS_REPORT, PAYLOAD_TYPE_POSITION_STATUS_REPORT,
70 PAYLOAD_TYPE_SUBMIT_ORDER, TypedEncoder, default_registry, encode_account_state,
71 encode_fill_report, encode_order_filled, encode_order_status_report,
72 encode_position_status_report, encode_submit_order, register_default,
73};
74pub use entry::{EventStoreEntry, PayloadType, Topic};
75pub use error::EventStoreError;
76pub use hash::{EntryHash, compute_entry_hash};
77pub use headers::Headers;
78pub use kernel::{
79 BootError, EventStoreLifecycle, EventStoreLifecycleOptions, EventStoreSession, HaltSignal,
80 KernelError, RecoveredRun, RecoveryOutcome, build_run_id, open_run, open_run_with_options,
81 recover_predecessors,
82};
83pub use manifest::{RunId, RunManifest, RunStatus};
84pub use markers::{
85 CursorState, DEFAULT_MARKER_CHANNEL_CAPACITY, DEFAULT_MARKER_MAX_BATCH,
86 DEFAULT_MARKER_MAX_LATENCY, DataClass, DataCursorSnapshot, DataMarkerCapture,
87 DataMarkerExtractor, DataMarkerExtractorRegistry, HiFiMarker, MarkerBackend, MarkerCountKind,
88 MarkerFinding, MarkerGap, MarkerGapReason, MarkerManifest, MarkerMsg, MarkerReader,
89 MarkerRecordKind, MarkerVerifier, MarkerVerifyReport, MarkerWriter, MarkerWriterConfig,
90 MemoryMarkerBackend, RedbMarkerBackend, StoredMarkerRecord, StreamCursor, StreamDictEntry,
91 StreamSlot, compute_dict_hash, compute_gap_hash, compute_hifi_hash, compute_marker_hash,
92};
93#[cfg(feature = "persistence")]
94pub use markers::{JoinedStream, join_at_entry};
95pub use nautilus_system::{
96 RegisteredComponents,
97 event_store::{
98 DEFAULT_DATA_MARKER_CHANNEL_CAPACITY, DEFAULT_DATA_MARKER_SAFETY_FLUSH_INTERVAL,
99 DataMarkerClass, DataMarkerConfig, EventStoreConfig, RetentionMode, RunIdentity,
100 },
101};
102pub use reader::{DEFAULT_SCAN_CHUNK_SIZE, EventStoreReader, RangeScan, SnapshotReplayPlan};
103#[cfg(feature = "persistence")]
104pub use replay::ParquetReplayCatalog;
105pub use replay::{
106 CacheReplayError, CacheReplayReport, CatalogReplayData, CatalogReplayRecord,
107 CatalogReplaySlice, CatalogSliceCoverage, CatalogSlicePlan, CatalogSliceQuery,
108 CatalogSliceSelector, EventStoreReplayReport, ReplayCatalog, ReplayInputError, ReplayInputPlan,
109 ReplayInputs, ReplaySeqRange, ReplayTimeRange, apply_cache_replay_entry,
110 load_catalog_replay_inputs, load_forensics_replay_inputs, open_event_store_replay_source,
111 plan_catalog_replay_inputs, plan_forensics_replay_inputs, replay_cache_snapshot_tail,
112 restore_cache_from_sealed_run, restore_cache_snapshot_and_replay_tail,
113 restore_cache_snapshot_blob, validate_event_store_replay_source,
114};
115pub use retention::{
116 RetentionPlan, RetentionRun, SnapshotAnchorStatus, list_redb_sealed_runs, plan_redb_retention,
117 plan_retention,
118};
119pub use snapshot::{SnapshotAnchor, compute_snapshot_content_hash};
120pub use verifier::{
121 GapRange, IndexDrift, ManifestField, Verifier, VerifyError, VerifyFinding, VerifyReport,
122};
123pub use writer::{
124 DEFAULT_CHANNEL_CAPACITY, DEFAULT_HALT_THRESHOLD, DEFAULT_MAX_BATCH_ENTRIES,
125 DEFAULT_MAX_BATCH_LATENCY, EntryDraft, EventStoreWriter, HaltCallback, HaltReason, SubmitError,
126 WriterConfig, noop_halt,
127};