Skip to content

Conversation

@palas
Copy link
Contributor

@palas palas commented Dec 2, 2025

Description

This PR addresses this issue: #6382

Checklist

  • Commit sequence broadly makes sense and commits have useful messages
  • New tests are added if needed and existing tests are updated. These may include:
    • golden tests
    • property tests
    • roundtrip tests
    • integration tests
      See Runnings tests for more details
  • Any changes are noted in the CHANGELOG.md for affected package
  • The version bounds in .cabal files are updated
  • CI passes. See note on CI. The following CI checks are required:
    • Code is linted with hlint. See .github/workflows/check-hlint.yml to get the hlint version
    • Code is formatted with stylish-haskell. See .github/workflows/stylish-haskell.yml to get the stylish-haskell version
    • Code builds on Linux, MacOS and Windows for ghc-9.6 and ghc-9.12
  • Self-reviewed the diff

@palas palas self-assigned this Dec 2, 2025
@palas palas requested a review from a team as a code owner December 2, 2025 19:11
@palas palas linked an issue Dec 2, 2025 that may be closed by this pull request
@palas palas requested review from Jimbo4350 and mkoura December 2, 2025 19:14
Copy link
Contributor

@lehins lehins left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't believe this is correct.
We need to enable protocol version 11 as experimental only
Current node is not fully ready for protocol version 11.

Moreover, when major is bumped, minor should be reset to 0

@palas palas force-pushed the fix-protocol-version branch from 5c5f922 to 78f2bf2 Compare December 2, 2025 23:18
@palas palas requested a review from lehins December 2, 2025 23:18
@palas
Copy link
Contributor Author

palas commented Dec 2, 2025

I don't believe this is correct.
We need to enable protocol version 11 as experimental only
Current node is not fully ready for protocol version 11.

Moreover, when major is bumped, minor should be reset to 0

Thank you, I think I have addressed both points now. I am not 100% sure whether it should be npcExperimentalHardForksEnabled or ncExperimentalProtocolsEnabled the flag that guards this, but my guess is the hard forks one.

Copy link
Contributor

@lehins lehins left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This does look quite reasonable. Although, I am not familiar enough with the internals to approve the PR.
I believe this conditional on npcExperimentalHardForksEnabled should always be there for the current PV. Ledger always allows upgrading to the next protocol version, from the current one. It makes sense to have ability to upgrade to the next one for experimentation.

@disassembler
Copy link
Contributor

@CarlosLopezDeLara @mkoura can you guys test forking with this branch both with and without experimental hard forks enabled? Please fork to both 11 and 12.

@mkoura
Copy link
Contributor

mkoura commented Dec 3, 2025

Thanks @palas, the protocol version 11 now works 🚀

@disassembler The 11 works with "ExperimentalHardForksEnabled": true and doesn't work without it (unwrapEnvelopeErr = ObsoleteNode (Version 11) (Version 10)).
So far I tested only the shortcut "TestConwayHardForkAtEpoch": 0, I'll test the Byron -> Conway PV11 later and comment.

@mkoura
Copy link
Contributor

mkoura commented Dec 3, 2025

@disassembler I believe version 12 was not enabled in this PR: https://github.com/IntersectMBO/cardano-node/pull/6384/files#diff-8c649864fe4b96d142cfd4c2bb9e32a9510fe737c6ad4e13e04b585ee15a6b74R182
The version 12 doesn't work, I'm getting unwrapEnvelopeErr = ObsoleteNode (Version 12) (Version 11) even with

  "ExperimentalHardForksEnabled": true,
  "TestDijkstraHardForkAtEpoch": 0,

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] - ObsoleteNode and no blocks forged on PV11

6 participants