crates/tranquil-pds/src/comms/notice.rs:183 this should be VerificationTarget? MigrationTarget doesn't have the ViaEmail thing with the channel in it.
alternatively, maybe do something like
pub struct IssuedVerification<'a> {
target: &'a VerificationTarget,
purpose: VerificationPurpose,
code: VerificationCode,
}
and then implement mint/link/valid_for. And then
SignupVerification { issued: IssuedVerification<'a> },
MigrationVerification { issued: IssuedVerification<'a> },
and now that bug can't happen?
crates/tranquil-pds/src/comms/notice.rs:146 feel free to ignore but I think it might be worth splitting this into two kinds of notices, like, AccountNotice and VerificationNotice, depending on whether it uses handle. Then you can eg delete
crates/tranquil-pds/src/comms/notice.rs:231 I think?
anyway excellent types