nimbus-eth2/ncli
Eugene Kabanov e3fcd8b031
REST: getBlockRewards() and getSyncCommitteeRewards() implementation (#6556)
* Initial commit.

* Use temporary state instead of clearance.

* Attempt to fix `finalized`.

* Fix `genesis` response.

* Pre-calculate genesis block rewards response.

* Add implementation for sync committee rewards.

* Add total active balance calculation.

* Add genesis special case.

* Fix negative reward values.

* Address review comments.

* Fix isGenesis implementation and add REST test rules for both calls.
2024-09-18 23:34:32 +00:00
..
.gitignore A simple script for fetching detailed deposit data 2021-05-28 19:34:20 +03:00
README.md docs: fix typos (#5571) 2023-11-06 03:56:07 +00:00
deposit_downloader.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
download_mainnet_deposits.sh A simple script for fetching detailed deposit data 2021-05-28 19:34:20 +03:00
e2store.nim Split era specific code from e2s specific code (#5866) 2024-02-09 08:59:36 +01:00
e2store.py e2store: avoid uint48 (#4625) 2023-02-15 14:51:17 +01:00
era.nim era: speed up index reading (#6305) 2024-05-22 10:21:04 +02:00
logtrace.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
ncli.nim rm outdated/semi-duplicate execution layer withdrawal request processing (#6301) 2024-05-22 01:59:11 +02:00
ncli_common.nim replace validator Bloom filter with partial bucket sort (#6469) 2024-08-02 07:30:22 +02:00
ncli_db.nim add database electra block tests (#6394) 2024-07-01 04:18:41 +00:00
ncli_query.nim add missing `std/` prefix to more imports (#5696) 2024-01-06 07:18:28 +01:00
ncli_split_keystore.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
ncli_testnet.nim rm unused code/type conversoins; re-enable Electra block gossip verification (#6545) 2024-09-12 11:11:08 +02:00
nim.cfg fix most ConvFromXtoItselfNotNeeded hints and unhide remaining ones (#6307) 2024-05-22 13:56:37 +02:00
nimquery.nim add missing `std/` prefix to more imports (#5696) 2024-01-06 07:18:28 +01:00
requirements.txt Bump tornado from 6.3.3 to 6.4.1 in /ncli (#6328) 2024-06-06 23:38:04 +00:00
resttest-rules.json REST: getBlockRewards() and getSyncCommitteeRewards() implementation (#6556) 2024-09-18 23:34:32 +00:00
resttest.nim update some deprecated stew/results to results imports (#5743) 2024-01-16 22:37:14 +00:00
resttest.nim.cfg Keymanager API for the validator client (#3976) 2022-08-19 13:30:07 +03:00
validator_db_aggregator.nim make `Gwei` `distinct` (#6090) 2024-03-19 14:22:07 +01:00
validator_db_reports.ipynb Streamline the validator reward analysis 2022-02-01 11:30:14 +02:00

README.md

Introduction

ncli is a set of low level / debugging tools to interact with the nimbus beacon chain specification implementation, similar to zcli. With it, you explore SSZ, make state transitions and compute hash tree roots.

Tools

  • transition: Perform state transition given a pre-state and a block to apply (both in SSZ format)
  • hash_tree_root: Print tree root of an SSZ object
  • pretty: Pretty-print SSZ object as JSON

Building

Follow the instructions from nimbus-eth2

git clone https://github.com/status-im/nimbus-eth2.git
cd nimbus-eth2
make

Usage

# Build with minimal config
../env.sh nim c -d:const_preset=minimal ncli_transition
# Build with mainnet config
../env.sh nim c -d:const_preset=mainnet ncli_transition

# Run..
./ncli_transition --help