Cert::bad_signatures should include the reason the signature is bad
Consider:
$ sq inspect no-backsig-priv.pgp
no-backsig-priv.pgp: Transferable Secret Key.
Fingerprint: D1A6 6E1A 23B1 82C9 980F 788C FBFC C82A 015E 7330
Public-key algo: RSA (Encrypt or Sign)
Public-key size: 3072 bits
Secret key: Unencrypted
Creation time: 2019-10-15 10:18:26 UTC
Key flags: certification, signing
UserID: Bob Babbage <bob@openpgp.example>
Bad Signature: V4(Signature4 { version: 4, typ: SubkeyBinding, pk_algo: RSAEncryptSign, hash_algo: SHA512, hashed_area: [Subpacket { critical: true, value: SignatureCreationTime(1589507361), authenticated: true }, Subpacket { value: Issuer(KeyID("FBFC C82A 015E 7330")), authenticated: true }, Subpacket { critical: true, value: KeyFlags(S), authenticated: true }, Subpacket { value: IssuerFingerprint(Fingerprint("D1A6 6E1A 23B1 82C9 980F 788C FBFC C82A 015E 7330")), authenticated: true }], unhashed_area: [], additional_issuers: [], digest_prefix: "2182", computed_digest: None, level: 0, mpis: RSA { s: 3071 bits: 71D6 517C 5559 1268 58CE 25FA F06D 2FB3 1022 5B97 538C 3043 79F8 71A7 7F16 8B68 26D4 DB3B 2A2F 4288 CD9B 1052 5BCE C42D 99A3 8EA8 4E48 C0EE 2B13 7426 A67F E948 A14C EFE9 6578 5AB0 090A A207 DEC9 A58E 38A0 E2AD AA10 0CA7 9C61 91EE E5FB 2077 7808 FBEF D7EC BDBD 8F01 B3EB 59BF 82A9 BF9A 714E C8B4 C8A5 0F14 DED9 6E10 BB7A C73D B8C2 2DF3 2A15 081C BE64 4EE1 6D05 F238 83D4 CBE1 C67B 558C 66F8 92D3 0899 1276 E599 82D3 0495 29B9 1E51 0941 EC13 0ADF 2A05 779A EA76 6363 CF40 1CBA 06EE C47D ABD2 AD25 6B9F DE3A 8EA0 F699 4AD3 FFAB 97DE 50B5 FC4E 000A 4C66 1062 7518 F591 725E 8788 CD4C 3BFB 08A2 21F9 401A D27F 2115 C9F0 E3C3 ED59 0819 44FB 2775 A460 7A43 F40B FAB2 E4A1 B58D C694 7F93 D548 D5FD 5ABC D309 B38F 83CA 6C15 5C23 3842 D41B D5F6 ECE0 88F8 8F1F 62A6 2570 5DA9 70E9 3AB4 5580 E570 96DA B39E B0AA EBAA FDF1 F738 C7D8 D5BB B29E E5BB 68FD 4E73 3588 5007 4275 0A73 EF2F 04DE 76E0 4BF7 1CDA 033D 3BE8 65F0 3979 46BB 7834 2DAA C591 6797 4234 0B37 D54D 7E62 AEB6 } })
That signature is bad, because it is missing a backsig. It would be nice, I think, to preserve the error.