Skip to content

feat(tendermint): validators RPC#2310

Merged
onur-ozkan merged 16 commits intodevfrom
validator-rpcs
Jan 8, 2025
Merged

feat(tendermint): validators RPC#2310
onur-ozkan merged 16 commits intodevfrom
validator-rpcs

Conversation

@onur-ozkan
Copy link
Copy Markdown

@onur-ozkan onur-ozkan commented Jan 2, 2025

This is the initial implementation related to Tendermint staking feature on KDF. Remaining parts will be added gradually one by one similar to the validators RPC in this PR.

e.g., RPC payload structure:

https://github.com/KomodoPlatform/komodo-defi-framework/blob/4c63f6efbef97cf5a88a9b58ffb8d49041255de3/mm2src/mm2_test_helpers/src/for_tests.rs#L3102-L3112

filter_by_status can be set to one of All, Bonded and Unbonded. Default is All.

Explanation of Bonded and Unbonded statuses:

https://github.com/KomodoPlatform/komodo-defi-framework/blob/43dbf48d4ae09d1774b2df5dc195a236920b3e64/mm2src/coins/rpc_command/tendermint/staking.rs#L12-L18

Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
@onur-ozkan onur-ozkan marked this pull request as ready for review January 6, 2025 06:09
Signed-off-by: onur-ozkan <work@onurozkan.dev>
borngraced
borngraced previously approved these changes Jan 6, 2025
Copy link
Copy Markdown

@borngraced borngraced left a comment

Choose a reason for hiding this comment

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

great work!

Signed-off-by: onur-ozkan <work@onurozkan.dev>
Copy link
Copy Markdown
Collaborator

@mariocynicys mariocynicys left a comment

Choose a reason for hiding this comment

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

thank YOU :)

Signed-off-by: onur-ozkan <work@onurozkan.dev>
Copy link
Copy Markdown
Collaborator

@mariocynicys mariocynicys left a comment

Choose a reason for hiding this comment

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

Thanks
LGTM!

@onur-ozkan onur-ozkan merged commit 1908a2e into dev Jan 8, 2025
@onur-ozkan onur-ozkan deleted the validator-rpcs branch January 8, 2025 08:12
dimxy pushed a commit that referenced this pull request Jan 8, 2025
* dev:
  feat(tendermint): validators RPC (#2310)
  chore(CI): validate Cargo lock file (#2309)
  test(P2P): add test for peer time sync validation (#2304)
dimxy pushed a commit to dimxy/komodo-defi-framework that referenced this pull request Jan 17, 2025
* dev: (35 commits)
  fix(crypto): allow non bip39 mnemonics storage (GLEECBTC#2312)
  fix(legacy_swap): check for existing maker/taker payment before timeout (GLEECBTC#2283)
  feat(tendermint): validators RPC (GLEECBTC#2310)
  chore(CI): validate Cargo lock file (GLEECBTC#2309)
  test(P2P): add test for peer time sync validation (GLEECBTC#2304)
  fix mm2_p2p dev build (GLEECBTC#2311)
  update Cargo.lock (GLEECBTC#2308)
  chore(CI): unlock wasm-pack version (GLEECBTC#2307)
  add `wasm` feature on WASM for timed-map (GLEECBTC#2306)
  replace broken rpc link (GLEECBTC#2305)
  chore(eth-websocket): remove some unnecessary wrappers (GLEECBTC#2291)
  improvement(CI): switch to proper rust caching (GLEECBTC#2303)
  fix(wasm): add test-ext-api feature to mm2_main and mm2_bin_lib tomls (GLEECBTC#2295)
  chore(ci): Update docker build for wasm (GLEECBTC#2294)
  chore(p2p): follow-up nits (GLEECBTC#2302)
  feat(p2p): ensure time synchronization in the network (GLEECBTC#2255)
  bump libp2p (GLEECBTC#2296)
  chore(adex-cli): use "Komodo DeFi Framework" name in adex_cli  (GLEECBTC#2290)
  chore(ctx): replace gstuff constructible with oncelock (GLEECBTC#2267)
  don't rely on core (GLEECBTC#2289)
  ...
shamardy pushed a commit that referenced this pull request Jan 28, 2025
* save dev state

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* save dev state

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* make proto types serializable for RPC endpoint

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* remove dummy test

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add RPC error type

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add TODO

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* fix status filtering

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* fix clippy warn

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* resolve `todo!()`s

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* remove inline attribute

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* improve `validators_rpc`

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add coverage for tendermint_validators RPC

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* apply nit changes

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* document `ValidatorStatus`

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* use proper error variant on coin filtering

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* apply nits

Signed-off-by: onur-ozkan <work@onurozkan.dev>

---------

Signed-off-by: onur-ozkan <work@onurozkan.dev>
shamardy pushed a commit that referenced this pull request Jan 30, 2025
* save dev state

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* save dev state

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* make proto types serializable for RPC endpoint

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* remove dummy test

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add RPC error type

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add TODO

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* fix status filtering

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* fix clippy warn

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* resolve `todo!()`s

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* remove inline attribute

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* improve `validators_rpc`

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add coverage for tendermint_validators RPC

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* apply nit changes

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* document `ValidatorStatus`

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* use proper error variant on coin filtering

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* apply nits

Signed-off-by: onur-ozkan <work@onurozkan.dev>

---------

Signed-off-by: onur-ozkan <work@onurozkan.dev>
shamardy pushed a commit that referenced this pull request Jan 30, 2025
* save dev state

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* save dev state

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* make proto types serializable for RPC endpoint

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* remove dummy test

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add RPC error type

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add TODO

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* fix status filtering

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* fix clippy warn

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* resolve `todo!()`s

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* remove inline attribute

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* improve `validators_rpc`

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* add coverage for tendermint_validators RPC

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* apply nit changes

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* document `ValidatorStatus`

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* use proper error variant on coin filtering

Signed-off-by: onur-ozkan <work@onurozkan.dev>

* apply nits

Signed-off-by: onur-ozkan <work@onurozkan.dev>

---------

Signed-off-by: onur-ozkan <work@onurozkan.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants