IntersectMBO / IntersectMBO/ouroboros-consensus

Introduce a new concept for the extra information stored in partial configs

Open
#638 0 comments 0 reactions 0 assignees View on GitHub
technical debt
Dominant language
Haskell
Stars
67
Forks
43
Avg merge
5d 13h
Merged PRs (30d)
43

Description

In the HFC, we have a `PartialConsensus/LedgerConfig` that we can complete to a non-partial one using `EpochInfo Identity`. We're currently abusing this partial config to store *more* information than the non-partial one, i.e., hard-fork only information. For example, the hard-coded transition for Byron (`PartialLedgerConfig`) or the initial nonce for Shelley (`PartialConsensusConfig`). However, we pass the non-partial ones to the translation functions, which means we don't have access to the hard-fork only information from these configs, which would come in handy.

We should introduce a separate concept and type for this "hard-fork only information" that we currently store in the partial configs. We can then pass this type to the translation functions too, in addition to the non-partial configs. The partial config will now truly be partial again.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.