What is unclear to me is what changes to a transaction would be acceptable in an update, could you change the source coins, the destination address, the script? And, if they are changed, how would miners determine that this is an updated transaction and not a new, totally different one?
Why would they need to know? If you changed everything in the transaction, what difference does it make whether it's updated or new? And if, say, leave at least one of the coin sources the same, obviously only one transaction can go through anyway.
Lots of questions here.
"Why would they need to know?": There is a field in the transaction to say it is an updated transaction. If that is to be useful, you have to know what transaction is being updated.
"If you changed everything in the transaction, what difference does it make whether it's updated or new?" If it is updated then the old transaction wouldn't go through, if it is new then the old transaction could go through too. I wouldn't expect people to change
everything , even if they changed one of them how would you tell that it is updated?
For example:
You change the output: how do you distinguish it from a double spend attempt.
You change the input(s): how do you distinguish it from a second transaction to the same output?