If this is true, then how are legacy transactions still present in the blockchain? Clearly, there are still plenty of transactions with non-segwit and non-taproot script types.
I'll focus on Taproot first, because Segwit is somewhat more complicated.
The answer to your question is that following the Taproot softfork non-Taproot transactions are still present, because the Taproot softfork didn't affect the validity of non-Taproot transactions; they're all still valid.
What did change however is the validity of Taproot spends. Before the softfork, (what is now called) Taproot outputs (OP_1 <32 bytes>
) were unencumbered, and thus spendable by anyone, without any signature. This didn't happen of course, because nobody was creating Taproot outputs that could be spent by this. But if they would have been created, they'd be stealable by anyone, including miners, at the time.
After the Taproot softfork, only Taproot spends that satisfy the Taproot consensus rules are valid anymore. Those that violate the (new) rules are no longer valid. This is the only thing that changed. You don't actually "observe" this tightening, because the only thing that changed is something that just didn't apply to any actually occurring pre-fork transactions.
For Segwit it's a bit more complicated, as it also introduced a new data field, where pre-Segwit transactions are just seen as having an empty such field. Segwit arguably introduced two separate rules:
- Segwit outputs (
OP_{0..16} <2..40 bytes>
), which were previously spendable without any signature or witness, can only be spent anymore if they satisfy the Segwit consensus rules (which look at witness data).
- Spends of pre-segwit outputs cannot have a non-empty witness.
While in this case there is arguably a rule that affects spends of old output transactions, it still doesn't result in an observable tightening, because pre-fork transactions just didn't have witness fields.
I guess I just want to know why everybody says that updated nodes reject stuff from old nodes when that doesn’t seem true.
Some things, that were previously valid, are now no longer valid - and in practice, only things that nobody would use. That doesn't mean that every old thing that was previously valid is no longer valid.