Assertions don't care if your code is bug-free. They care if the outcome violates protocol invariants. Simple as.
196