-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(app): Integrate the block-sdk #2
Conversation
temp update branch to latest osmo remove load-test modifications set lane block-space update block-sdk to latest release update go versions in gomod / work files update match handler docs nop process proposal nit
Important Notice This PR modifies an in-repo Go module. It is one of:
The dependent Go modules, especially the root one, will have to be Please follow the instructions below:
Please let us know if you need any help. |
ante.NewSetPubKeyDecorator(ak), // SetPubKeyDecorator must be called before all signature verification decorators | ||
ante.NewValidateSigCountDecorator(ak), | ||
ante.NewSigGasConsumeDecorator(ak, sigGasConsumer), | ||
ante.NewSigVerificationDecorator(ak, signModeHandler), | ||
// ante.NewIncrementSequenceDecorator(ak), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
switching to removing the SigVerificationDecorator
as the block-sdk introduces the PriorityNonceMempool
, which will over-write txs w/ the same nonce, hence it's important that we keep the nonce-increment, while removing the requirement that all txs have the nonces checked + signatures verified
// we use a no-op ProcessProposal, this way, we accept all proposals in avoidance | ||
// of liveness failures due to Prepare / Process inconsistency. In other words, | ||
// this ProcessProposal always returns ACCEPT. | ||
app.SetProcessProposal(baseapp.NoOpProcessProposal()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note: this is set to no-op because the upstream priority nonce mempool that the block SDK utilizes under the hood does not natively support multi-fee denoms. As such the ordering may not be deterministic between proposal creation and verificaiton. This would require an integration with osmosis prices / slinky to turn on the ProcessProposalHandler.
app/lanes.go
Outdated
// WithdrawStakingRewardsMatchHandler is a match handler that matches transactions that contain a withdraw staking rewards message | ||
func WithdrawStakingRewardsMatchHandler() base.MatchHandler { | ||
return func(ctx sdk.Context, tx sdk.Tx) bool { | ||
for _, msg := range tx.GetMsgs() { | ||
if _, ok := msg.(*distrtypes.MsgWithdrawDelegatorReward); ok { | ||
return true | ||
} | ||
} | ||
|
||
return false | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note: This means that any transaction including a MsgWithdrawDelegatorReward
will be considered free. I'm assuming most delegator reward withdraw txs only include a single message?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is worth addressing before this gets merged.
This pull request has been automatically marked as stale because it has not had any recent activity. It will be closed if no further activity occurs. Thank you! |
This pull request has been automatically marked as stale because it has not had any recent activity. It will be closed if no further activity occurs. Thank you! |
🤜 🤛 From Skip!
In This PR
LaneMempool
which will be used as the app'sMempool
x/auction
module, and the correspondingAnteHandler
for the auction moduleante.IgnoreDecorator
with thefreeLane
, and theDeductFees
ante-handler: this will skip theDeductFees
ante-handler for any txs that originate from thefreeLane
Testing
ante_no_seq
ante-handlers to ignore signature verification, while incrementing sequence #s, I leave a comment in the section describing why.Let's Discuss
Auction
module's parameters are here, take a look at these or we can go ahead w/ the defaults, some things to considerdistributiontypes.WithdrawDelegatorRewards
tx, the process of adding more txs to this lane is simple, we just need to identify which types we want!