Expand description
vortex-core — Core types and deterministic scheduler for the Vortex simulation engine.
This crate provides the foundational building blocks:
NodeId— unique identifier for a simulated nodeSimEvent/SimEventKind— schedulable events in the simulationSimScheduler— single-threaded deterministic event loopDetRng— seeded deterministic random number generatorVortexSeed/SeedTree— 128-bit hierarchical seed derivationSimContext/SimEventLog— simulation context and structured event logFaultConfig— declarative fault injection DSL- Trait definitions for the I/O boundary (
VortexNetwork,VortexStorage,VortexClock)
Re-exports§
pub use context::DivergenceKind;pub use context::LogDivergence;pub use context::SeqNo;pub use context::SimContext;pub use context::SimEventLog;pub use context::SimLogEntry;pub use context::Subsystem;pub use fault_config::AllocFaultConfig;pub use fault_config::ClockFaultConfig;pub use fault_config::ConfigError;pub use fault_config::FaultConfig;pub use fault_config::FsError;pub use fault_config::FsFaultConfig;pub use fault_config::FsFaultRule;pub use fault_config::FsOp;pub use fault_config::NetworkFault;pub use fault_config::NetworkFaultConfig;pub use fault_config::NetworkFaultRule;pub use fault_config::ProcessFault;pub use fault_config::ProcessFaultConfig;pub use fault_config::ProcessFaultRule;pub use fault_config::SchedulingStrategy;pub use fault_config::ThreadSchedulingConfig;pub use seed::SeedTree;pub use seed::VortexSeed;
Modules§
- context
- Simulation context and event logging.
- fault_
config - Fault configuration DSL — declarative fault injection rules.
- plugin
- Plugin trait for custom fault injection modules.
- seed
- Hierarchical seed derivation for deterministic simulation.
Structs§
- DetRng
- A deterministic pseudo-random number generator.
- SimEvent
- A schedulable event in the simulation.
- SimScheduler
- Single-threaded deterministic event scheduler.
Enums§
- SimEvent
Kind - Types of simulation events.
- Storage
Op - A single storage operation (for batch writes).
- Vortex
Error - Error type for Vortex I/O operations.
Traits§
- Vortex
Clock - Clock boundary trait.
- Vortex
Network - Network I/O boundary trait.
- Vortex
Scheduler - Task/event scheduling trait.
- Vortex
Storage - Persistent storage boundary trait.