What happens / what is the defense against creating a transaction using a validator that isn't expecting an asset type?

**In other words**: the validator determines "Can this UTXO be spent in this transaction", but is there something on-chain that determines "Can this UTXO be created with this validator script?"


**For example**: Validator script says "UTXO can be spent if ada amount is 100 ada"; someone creates a transaction that creates a UTXO of 100 USDT locked by this transaction; Is that 100 USDT locked forever?