Ada Spark goes beyond safety guarantees of Rust. However how many here want to prove their invariants hold for their UI?
Proof levels depend on your goals, but most requirements are satisfied by proof of “Absence of Runtime Exceptions” (AoRTE), which is easier than a full formal proof.
You can find more information in the users guide. https://docs.adacore.com/spark2014-docs/html/ug/index.html