Replace at-tip checks with utils functions from the latest sdk #212
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.
Fixes # .
Motivation
Rosetta CLI checks to see if it is at tip at a few different places. These checks are not consistent.
For instance, before constructing transactions, the CLI checks if it is a tip based on (1) if the stored current block is within tip delay or (2) block returned by network/status is at tip (it is within tip delay or has sync status of true) and it is same as the stored current block.
Before broadcasting transactions, the CLI checks if it is at tip based only on if the stored current block is within tip delay.
These inconsistent checks were leading to the CLI getting stuck during transaction broadcast for chains that use sync status rather than tip delays.
Solution
Use utility functions from the sdk's utils package to do at-tip checks consistently.
Open questions