Skip to content

Commit

Permalink
Correct Commitment Input requirement statement
Browse files Browse the repository at this point in the history
  • Loading branch information
PhilippGackstatter committed Mar 5, 2024
1 parent 95a526c commit 58eea34
Showing 1 changed file with 2 additions and 4 deletions.
6 changes: 2 additions & 4 deletions tips/TIP-0040/tip-0040.md
Original file line number Diff line number Diff line change
Expand Up @@ -357,6 +357,7 @@ Upon the creation of a Delegation Output, the protocol assigns to it a unique id

### Additional Transaction Semantic Validation Rules

- A _Commitment Input_ must be present when a _Delegation Output_ is on the input side of a transaction.
- Explicit `Delegation ID`: `Delegation ID` is taken as the value of the `Delegation ID` field in the Delegation output.
- Implicit `Delegation ID`: When a Delegation output is consumed as an input in a transaction and `Delegation ID` field
is zeroed out, take the BLAKE2b-256 hash of the `Output ID` of the input as `Delegation ID`.
Expand All @@ -369,9 +370,6 @@ Upon the creation of a Delegation Output, the protocol assigns to it a unique id
- Let `Future Bounded Slot Index` be given by `Commitment Index + Min Committable Age` where `Commitment Index` is the
slot index of the commitment input.
- Let `Future Bounded Epoch Index` be the epoch index corresponding to the slot index `Future Bounded Slot Index`.
- If the past bounded indices are required for transaction validation, a _Commitment Input_ must be present. This is the
case for any transaction containing a _Delegation Output_ on the input or output side except when it is destroyed in
_Delayed Claiming State_.

#### Consumed Outputs

Expand Down Expand Up @@ -695,7 +693,7 @@ The amount of Mana Rewards that can be claimed for a _Delegation Output_ which i
- `Future Bounded Slot Index` is given by `Commitment Index + Min Committable Age` where `Commitment Index` is the
slot index of the commitment input. If no _Commitment Input_ is present, the transaction is invalid.
- Note that the presence of a _Commitment Input_ is already required for any transaction containing a _Delegation
Output_ on the input or output side, except when it is destroyed in the _Delayed Claiming State_.
Output_ on the input or output side.
- `Future Bounded Epoch Index` is the epoch index corresponding to the slot index `Future Bounded Slot Index`.
- Note that no transaction validation rule exists to prevent claiming rewards too early, that is, before the rewards
of the previous epoch became available, thus forfeiting the potential rewards of that previous epoch.
Expand Down

0 comments on commit 58eea34

Please sign in to comment.