IntersectMBO / IntersectMBO/cardano-ledger
Remove `isValid` from transaction deserialization
- Dominant language
- Haskell
- Stars
- 295
- Forks
- 179
- Avg merge
- 4d 7h
- Merged PRs (30d)
- 29
Description
#5480 has implemented part of CIP-167, namely:
* it prevents `isValid=False` from being decoded
* Preserves backwards compatibility for easier transition from Conway to Dijkstra era by allowing both: presence of isValid=True and adding new functionality of no flag at all.
This ticket is about removing this backwards compatibility of this false flag being present, namely removal of this case in CDDL:
```cddl
transaction_body, transaction_witness_set, true, auxiliary_data/ nil
```
Contributor guide
Research direction
Start by locating the CDDL rule for transaction_body, transaction_witness_set, true, auxiliary_data/ nil and the transaction deserialization path that handles it. Remove the backwards-compatible false-flag case while preserving the accepted true and no-flag forms, then run the related serialization or deserialization tests if present.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- blockchain
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100