There is no way to cancel a policy or deactivate coverage. Add admin (and/or protocol) controlled `cancel_policy` that releases any reserves and prevents further premiums/payouts.
Acceptance criteria
- `cancel_policy` sets `is_active = false` and is idempotent-safe.
- Cancelled policies reject `pay_premium` and `trigger_payout`.
- Tests cover cancel + subsequent rejected calls.
There is no way to cancel a policy or deactivate coverage. Add admin (and/or protocol) controlled `cancel_policy` that releases any reserves and prevents further premiums/payouts.
Acceptance criteria