You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 23, 2025. It is now read-only.
Some parts of the specs require working with the unique minima of some protocol parameters, while others require working with default values which are some static, originally randomly generated cryptographically relevant values. The codebase uses Default for both in different places, which is horrible and *will
lead to bugs.
Proposed solution: Remove Default impls on types such as Range3d or Area (both to show us where we need to update code and for future clarity), and replace them by explicit methods. Possibly introduce an OrdWithMinimum: Ord trait to use everywhere for working with minima. Never use the Rust Default trait for working with default values of willow parameters, this will only lead to confusion and bugs. A trait DesignatedValue could serve as a functionality identical but semantically clear replacement of Default.