Highlights
Data Validation Issues: 1 prior fix. Scrutinize any change in this area.
src/borsh.rs: most-fixed (1 issue). Treat as high-risk during review.
1 high-severity fix in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
Data Validation Issues: Deserializing invalid Borsh payloads could bypass standard Decimal guarantees, leading to the instantiation of malformed, unsafe decimals. Strict manual validation of scale bounds and flags is required during Borsh deserialization to prevent memory or logical corruption.
Information Disclosure: The use of unsafe or imprecise float-to-string formatting dependencies (such as ryu) during arbitrary precision deserialization introduced memory safety and precision issues (RUSTSEC-2026-0001), which was resolved by migrating to the zmij library.