Highlights
Data Race: 1 prior fix. Scrutinize any change in this area.
src/lib.rs: most-fixed (2 issues). Treat as high-risk during review.
2 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
Data Race: Exposing concurrent block execution via `&mut self` without marking the calling function as unsafe allowed safe code to invoke block execution concurrently, leading to data races and undefined behavior. Future modifications to block execution must ensure safety constraints are strictly marked with `unsafe` or enforced via compiler-checked traits like Send and Sync.
Memory Safety: Allowing safe Rust code to implement the `Message` trait can lead to unsound behavior if implemented incorrectly, bypassing underlying FFI assumptions. Trait declarations that interface directly with raw FFI types and runtime message dispatch must require an `unsafe` keyword for implementation to guarantee safety invariants.