IntersectMBO / IntersectMBO/ouroboros-consensus

Add an HFC query for which upcoming slots the node will lead

Open
#390 2 comments 0 reactions 1 assignee Claimed by @nfrisby View on GitHub
Dominant language
Haskell
Stars
67
Forks
43
Avg merge
5d 13h
Merged PRs (30d)
43

Description

The Node Team, under our recommendation, has so far used a `Debug*` query in order to build a CLI query that computes the node's upcoming leadership schedule. This is a non-trivial calculation with various pitfalls, and so it should instead be implemented as a proper query in the `ouroboros-consensus` code base.

The design of such a query is unfortunately related to Issue #389. In Slack discussion with architecture stakeholders, we have already decided that the ideal behavior would be for the node to only predict slots for which the answer could not change under ordinary circumstances (ie a rollback of at most `k` blocks). Thus...

This Issue is to design and implement a new `HardForkBlock` (see comment below) query that returns the list of slot numbers with their corresponding UTC times such that BOTH this node's configured leadership credentials will be elected in those slots AND ALSO the slots' UTC times and those election predicates will be correct for any extension of the node's current immutable tip---ie the query's result must not be subject to a rollback of at most `k` blocks.

This is the first query with that constraint, other than the HFC queries which already involve a non-trivial mechanism to ensure it.

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.