Using generated inputs and shrinking to test serialization, deterministic event IDs, and invariants across state transitions.