Replies: 2 comments 5 replies
-
In Praos, It doesn't look like |
Beta Was this translation helpful? Give feedback.
-
So it's completely optional, and it is an optimization that could also be used for dealing with conflicting transactions. But I feel like these are relatively small details that are probably better worked out later. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
The
IsValid
flag is currently present in Praos blocks. If the txs on a script don't agree with the flag, then the block is invalid.https://github.com/IntersectMBO/cardano-ledger/blob/8ea8d1e665951bb474a861c8fad5b4b2818e3fe2/eras/alonzo/impl/src/Cardano/Ledger/Alonzo/Tx.hs#L135
Something I never questioned until recently: why is the
IsValid
flag included in the block itself? If you're trusting that the block is valid (eg in your tool that processes blocks without validating them), then you would necessarily be trusting whoever gave you the block. And so they could just annotate it with the correctIsValid
flags, instead of thoseIsValid
flags actually being part of the block.The reason this question occurred to me is that maybe there's a useful Leios ledger design where IBs/RBs can't necessarily predict the
IsValid
flag. However, it's more plausible to me that at least RBs must include theIsValid
flag. The only weirdness then is that the corresponding tx might be dead (aka skipped) in the RB, and so itsIsValid
flag actually can't be validated. Maybe the RB should be able to specify a third option: dead, as opposed to the BooleanIsValid
.Beta Was this translation helpful? Give feedback.
All reactions