IntersectMBO / IntersectMBO/ouroboros-consensus

Enriched Genesis tests to confirm all Genesis components are disabled when GSM transitions to CaughtUp

Open
#1,491 0 comments 0 reactions 0 assignees View on GitHub
better-tests
Dominant language
Haskell
Stars
67
Forks
43
Avg merge
5d 13h
Merged PRs (30d)
43

Description

Today's test suite doesn't test this, and so didn't catch Issue #1490. It's straight-forward enough that I'm surprised code review didn't catch it. Regardless, it's tech debt to not cover that with tests.

Moreover: for GDD, LoP, LoE, etc the logic for disabling and re-enabling is trivial, but for CSJ the re-enable logic might not be trivial. There is at least one trivial option, but it's somewhat wasteful. So some tests should exercise this.

Contributor guide

Open the contributing guide

Research direction

Start by locating the GSM transition to CaughtUp and the tests covering Genesis components, then inspect how GDD, LoP, LoE, and CSJ are disabled and re-enabled. Add coverage confirming every component is disabled on transition and that CSJ, as well as the other components, is correctly re-enabled; the tests should prevent a regression like Issue #1490.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell
Domain
blockchain, testing
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.