Copy the profile's credit cards into the Rust store, verify them, report the
result through migrate_to_rust, and wipe the copy again. Nothing reads from
Rust: creditCards.storage.rust.enabled stays off. Once per profile per
generation, recorded on migrationTestVersion.
The copy is skipped when a primary password is set, and deferred while the OS
key store is locked or busy, so that it never asks the user anything. Record
migrate_to_rust_blocked with the reason each time, so that a profile held back
can be told apart from one with nothing to migrate.