Skip to content

Merge proposer set reduction feature branch#75

Merged
tqin7 merged 4 commits into
dydx-fork-v0.50.5from
feature/proposer-set-reduction
Aug 5, 2025
Merged

Merge proposer set reduction feature branch#75
tqin7 merged 4 commits into
dydx-fork-v0.50.5from
feature/proposer-set-reduction

Conversation

@tqin7
Copy link
Copy Markdown

@tqin7 tqin7 commented Aug 5, 2025

Description

Merge feature branch for proposer set reduction into main


Author Checklist

All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.

I have...

  • included the correct type prefix in the PR title
  • added ! to the type prefix if API or client breaking change
  • targeted the correct branch (see PR Targeting)
  • provided a link to the relevant issue or specification
  • followed the guidelines for building modules
  • included the necessary unit and integration tests
  • added a changelog entry to CHANGELOG.md
  • included comments for documenting Go code
  • updated the relevant documentation or specification
  • reviewed "Files changed" and left comments if necessary
  • run make lint and make test
  • confirmed all CI checks have passed

Reviewers Checklist

All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.

I have...

  • confirmed the correct type prefix in the PR title
  • confirmed ! in the type prefix if API or client breaking change
  • confirmed all author checklist items have been addressed
  • reviewed state machine logic
  • reviewed API design and naming
  • reviewed documentation is accurate
  • reviewed tests and test coverage
  • manually tested (if applicable)

tqin7 added 4 commits July 30, 2025 14:22
* add proposer set state to x/staking

* all validators are proposers when none is set and add more tests

* get and set entire proposers list instead of each individual proposer

* have a constant define min num of bonded in proposer set

* fix lint and better error name
* add gov msg that sets and query that reads proposer set

* add comment on invariant checks
…tes (#73)

* send proposer set updates in x/staking EndBlocker ABCI validator updates

* set full update flag in SetProposers keeper method and set CanPropose when constructing validator updates

* update simapp's cometbft dependency

* update cometbft dependency of /tests

* add sanity check on full proposer set update
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Aug 5, 2025

@tqin7 your pull request is missing a changelog!

@tqin7 tqin7 merged commit 32de390 into dydx-fork-v0.50.5 Aug 5, 2025
36 of 37 checks passed
@tqin7 tqin7 deleted the feature/proposer-set-reduction branch August 5, 2025 21:44
switch fd.FullName() {
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.staking.v1beta1.QueryProposersRequest"))

Check warning

Code scanning / CodeQL

Panic in BeginBock or EndBlock consensus methods Warning

Possible panics in BeginBock- or EndBlock-related consensus methods could cause a chain halt
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.staking.v1beta1.QueryProposersRequest"))
}
panic(fmt.Errorf("message cosmos.staking.v1beta1.QueryProposersRequest does not contain field %s", fd.FullName()))

Check warning

Code scanning / CodeQL

Panic in BeginBock or EndBlock consensus methods Warning

Possible panics in BeginBock- or EndBlock-related consensus methods could cause a chain halt
x.Proposers = *clv.list
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.staking.v1beta1.QueryProposersResponse"))

Check warning

Code scanning / CodeQL

Panic in BeginBock or EndBlock consensus methods Warning

Possible panics in BeginBock- or EndBlock-related consensus methods could cause a chain halt
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.staking.v1beta1.QueryProposersResponse"))
}
panic(fmt.Errorf("message cosmos.staking.v1beta1.QueryProposersResponse does not contain field %s", fd.FullName()))

Check warning

Code scanning / CodeQL

Panic in BeginBock or EndBlock consensus methods Warning

Possible panics in BeginBock- or EndBlock-related consensus methods could cause a chain halt
x.Proposers = *clv.list
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.staking.v1beta1.MsgSetProposers"))

Check warning

Code scanning / CodeQL

Panic in BeginBock or EndBlock consensus methods Warning

Possible panics in BeginBock- or EndBlock-related consensus methods could cause a chain halt
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.staking.v1beta1.MsgSetProposers"))
}
panic(fmt.Errorf("message cosmos.staking.v1beta1.MsgSetProposers does not contain field %s", fd.FullName()))

Check warning

Code scanning / CodeQL

Panic in BeginBock or EndBlock consensus methods Warning

Possible panics in BeginBock- or EndBlock-related consensus methods could cause a chain halt
switch fd.FullName() {
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.staking.v1beta1.MsgSetProposersResponse"))

Check warning

Code scanning / CodeQL

Panic in BeginBock or EndBlock consensus methods Warning

Possible panics in BeginBock- or EndBlock-related consensus methods could cause a chain halt
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.staking.v1beta1.MsgSetProposersResponse"))
}
panic(fmt.Errorf("message cosmos.staking.v1beta1.MsgSetProposersResponse does not contain field %s", fd.FullName()))

Check warning

Code scanning / CodeQL

Panic in BeginBock or EndBlock consensus methods Warning

Possible panics in BeginBock- or EndBlock-related consensus methods could cause a chain halt
pthmas pushed a commit to 01builders/dydx-cosmos-sdk that referenced this pull request Aug 8, 2025
* feat(proposer-set-reduction): Add proposer set state to x/staking (dydxprotocol#71)

* add proposer set state to x/staking

* all validators are proposers when none is set and add more tests

* get and set entire proposers list instead of each individual proposer

* have a constant define min num of bonded in proposer set

* fix lint and better error name

* add gov msg that sets and query that reads proposer set (dydxprotocol#72)

* add gov msg that sets and query that reads proposer set

* add comment on invariant checks

* send proposer set updates in x/staking EndBlocker ABCI validator updates (dydxprotocol#73)

* send proposer set updates in x/staking EndBlocker ABCI validator updates

* set full update flag in SetProposers keeper method and set CanPropose when constructing validator updates

* update simapp's cometbft dependency

* update cometbft dependency of /tests

* add sanity check on full proposer set update

* use cometbft commit on main (dydxprotocol#74)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

3 participants