iota.go icon indicating copy to clipboard operation
iota.go copied to clipboard

Make Context Input requirement checks syntactic

Open PhilippGackstatter opened this issue 1 year ago • 0 comments

Make Context Input requirement checks syntactic.

For any feature or unlock condition that requires a Commitment, Block Issuance Credit or Reward Input we want to check syntactically whether that requirement is fulfilled. Currently, this is done at the semantic validation stage.

We can implement that as: func OutputsSyntacticalContextInputs() ElementValidationFunc[Output].

Note that we do not have to implement the check that a BIC or Reward Input requires a Commitment Input, since that is already checked in ContextInputsCommitmentInputRequirement.

Finally, also update the TIPs accordingly to move the check from the semantic to the syntactic section.

PhilippGackstatter avatar Feb 16 '24 08:02 PhilippGackstatter