nimbus-eth2/ncli
Jacek Sieka 045c4cf185
electra attestation updates (#6295)
* electra attestation updates

In Electra, we have two attestation formats: on-chain and on-network -
the former combines all committees of a slot in a single committee bit
list.

This PR makes a number of cleanups to move towards fixing this -
attestation packing however still needs to be fixed as it currently
creates attestations with a single committee only which is very
inefficient.

* more attestations in the blocks

* signing and aggregation fixes

* tool fix

* test, import
2024-05-17 15:37:41 +03: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 Split era specific code from e2s specific code (#5866) 2024-02-09 08:59:36 +01:00
logtrace.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
ncli.nim explicitly scope AttesterSlashing and IndexedAttestation types to phase0 (#6224) 2024-04-21 05:49:11 +00:00
ncli_common.nim electra attestation updates (#6295) 2024-05-17 15:37:41 +03:00
ncli_db.nim remove some debugRaiseAsserts and fill in Electra functionality (#6178) 2024-04-06 07:46:02 +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 Bump nim-web3 to 285d97c2b05bbe2a13dab4b52ea878157fb1a1a1 (#6106) 2024-03-20 14:39:12 +07:00
nim.cfg enable --styleCheck:error in ncli/ and research/ (#6014) 2024-03-02 06:25:17 +01:00
nimquery.nim add missing `std/` prefix to more imports (#5696) 2024-01-06 07:18:28 +01:00
requirements.txt Bump jinja2 from 3.1.3 to 3.1.4 in /ncli (#6268) 2024-05-06 22:35:13 +00:00
resttest-rules.json implement getBlindedBlock REST API (#5829) 2024-01-31 03:18:55 +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