iota.go
iota.go copied to clipboard
Make Context Input requirement checks syntactic
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.