IntersectMBO / IntersectMBO/ouroboros-consensus
Remove Cardano-specific `TxMeasure` dimensions from abstract Consensus layer
- Dominant language
- Haskell
- Stars
- 67
- Forks
- 43
- Avg merge
- 5d 13h
- Merged PRs (30d)
- 43
Description
#1191 introduced an ad-hoc type class to the abstract Consensus layer
https://github.com/IntersectMBO/ouroboros-consensus/blob/447ae7a5c85a32d0cafa2b3325292a6e678e7f7e/ouroboros-consensus/src/ouroboros-consensus/Ouroboros/Consensus/Ledger/SupportsMempool.hs#L432-L436
that is required by `LedgerSupportsMempool blk`. It is used only for the LocalTxMonitor server implementation.
The goal of this ticket is to remove this Cardano-specific notion from the abstract Consensus layer again, eg by changing the class to sth like
```haskell
class TxMeasureMetrics msr where
txMeasureMetricTxSizeBytes :: msr -> Map MeasureName Natural
```
Contributor guide
Research direction
Start in Ouroboros/Consensus/Ledger/SupportsMempool.hs at lines 432-436 and trace the LedgerSupportsMempool constraint into the LocalTxMonitor server implementation. Identify how TxMeasure dimensions enter the abstract Consensus layer, then remove the Cardano-specific notion while preserving the metrics required by LocalTxMonitor.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- blockchain
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100