Skip to main content

zerodds_chaos/
lib.rs

1// SPDX-License-Identifier: Apache-2.0
2// Copyright 2026 ZeroDDS Contributors
3
4//! ZeroDDS Chaos-Engineering Bibliothek.
5//!
6//! Crate `zerodds-chaos`. Safety classification: **COMFORT** (Test-Tool,
7//! kein Runtime-Pfad).
8//!
9//! # Module
10//!
11//! * [`proxy`] — In-Process UDP-Chaos-Proxy: injiziert Packet-Loss,
12//!   Jitter, Duplicates, Reorder. Plattform-unabhaengig, kein root.
13//! * [`tc`] — Linux-`tc qdisc`-Wrapper: nutzt `netem` fuer realistische
14//!   Network-Conditions auf einem Interface. Root-Privileg-pflichtig.
15//! * [`partition`] — iptables-basiertes Network-Partition zwischen
16//!   IP-Gruppen.
17//! * [`endpoint_flap`] — toggelt ein Linux-Interface up/down im Takt.
18//! * [`prng`] — kleiner xorshift64-Generator fuer reproducible-seeds.
19//!
20//! # Determinismus
21//!
22//! Alle Chaos-Operationen seedbar via `--seed`. Gleicher Seed +
23//! gleicher Eingabe-Strom = bit-identischer Ausgabe-Strom; Voraussetzung
24//! fuer property-test-fitting Pipelines.
25
26#![warn(missing_docs)]
27
28pub mod endpoint_flap;
29pub mod partition;
30pub mod prng;
31pub mod proxy;
32pub mod tc;