Namespace Kuestenlogik.Bowire.Mock.Chaos

Classes

ChaosOptions

Chaos-injection tunables (Phase 3a). Applied by the mock middleware before it dispatches to the replayer, so every matched request gets the same treatment regardless of protocol or method type.

FaultLatency

Latency shape: fixed, uniform, normal (Box-Muller), or exponential. Samples clamp to [0, CapMs] so a fat tail can't hang a request forever.

FaultRandom

Uniform randomness for chaos decisions, built on RandomNumberGenerator. Chaos jitter is not a security boundary — the crypto source is used because it satisfies analyzer CA5394 without a suppression, and the per-request cost is irrelevant next to an injected delay.

FaultRule

One fault rule: method matcher + latency shape + fault behaviour.

FaultRuleSet

Per-method fault-injection rules (#170) — the structured successor to the global ChaosOptions knobs. A rule pairs a method matcher with a latency shape and a fault kind; the first enabled rule whose matcher hits a request handles it. Default off: an empty rule set injects nothing, and ChaosOptions keeps working unchanged next to this.

Enums

FaultKind

What a matched rule does to the request (beyond its latency shape).