Background
Adding #[kani::proof] annotations to invariants pays off later when full kani runs are feasible. Even without running, the annotations document intent.
What to build
Annotate key invariants (signature low-S, nonce monotonicity, expiration) with #[kani::proof] proof harnesses guarded by #[cfg(kani)].
Key files
contracts/wallet/src/auth/proofs.rs (new)
Acceptance criteria
Drips Wave · Complexity: Advanced · 200 points
Background
Adding
#[kani::proof]annotations to invariants pays off later when full kani runs are feasible. Even without running, the annotations document intent.What to build
Annotate key invariants (signature low-S, nonce monotonicity, expiration) with
#[kani::proof]proof harnesses guarded by#[cfg(kani)].Key files
contracts/wallet/src/auth/proofs.rs(new)Acceptance criteria
contracts/wallet/PROOFS.md