Oh, I just realized you can test beyond v1. Said and done:
bitcoinutils.bech32.encode('tb', 2, memoryview(bytes.fromhex(hash160)).tolist())
bitcoinutils.bech32.encode('tb', 3, memoryview(bytes.fromhex(hash160)).tolist())
bitcoinutils.bech32.encode('tb', 4, memoryview(bytes.fromhex(hash160)).tolist())
bitcoinutils.bech32.encode('tb', 5, memoryview(bytes.fromhex(hash160)).tolist())
--->
tb1zlk2s76mvtpf2rqrpm97ngk3skgjdw7jtpac93n
tb1rlk2s76mvtpf2rqrpm97ngk3skgjdw7jt2r0wuc
tb1ylk2s76mvtpf2rqrpm97ngk3skgjdw7jtjt3kkq
tb19lk2s76mvtpf2rqrpm97ngk3skgjdw7jte4xamt
One
single transaction to these nonsense addresses was accepted and confirmed without a glitch...
What have we learned here? That major wallet software gives you no warnings before sending to address types that haven't yet been defined. And that is, in my opinion, suboptimal. Wallet software should give you a "please note that you are sending funds to undefined address types, and your funds will be lost" notice.