Bug/fix consensus test canonical tip #6583
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #6564
The main problem was actually the missing call to
which was causing each tenure epoch to reorg the prior block. With that fixed, the tests need to correctly increment the nonce and don't allow redeploy of the same contract name, etc. as expected.
However, after talking with @kantai, we determined that it would be better to directly test
NakamotoChainState::process_next_nakamoto_block
instead ofappend_block
. This not only handles the clarity_commit, chainstate_tx, etc. correctly, but its the actual point of entry to theappend_block
call (it also does some preliminary static checks). However, to use this function, I needed to determine the path of entry into the staging blocks db...I am fairly confident accept_block is the only access (beyond an explicit call to add_shadow_block). See #6585 for confirmation.