Op_inout_amount

By “it” I meant “a separate amount logic enforced with OP_{IN,OUT}_AMOUNT or similar opcodes”.

Perhaps I’m misunderstanding something, but here’s the scenario I have in mind.

If you trigger two Vault UTXOs A and B of 1 ₿ each and spend A, B ==> U (where U is the “staging” or unvaulting output), you want the Script to enforce that U has amount at least 2 ₿. If the input Script receive the input indices via the witness stack, what prevents “lying” to the inputs, by claiming that the input indices are the set \{0\} in the witness stack of A, and the set \{1\} in the witness stack of B? It seems to me that such transaction would be valid and allow stealing 1 ₿.

You can only prevent this kind of issues if you have some form of “synchronization” among the different input Scripts, that makes sure that the involved indices are the same for all the related inputs.