diff --git a/docs/operational-docs/src/architecture/execution-client.md b/docs/operational-docs/src/architecture/execution-client.md index 6cac9cef..18112710 100644 --- a/docs/operational-docs/src/architecture/execution-client.md +++ b/docs/operational-docs/src/architecture/execution-client.md @@ -49,7 +49,7 @@ Emerald is calling the Engine API RPC methods when handling events emitted by th - `AppMsg::ReceivedProposalPart` When all the parts of a proposed blocked have been received, Emerald validates the block against the execution client by calling `newPayload`. - `AppMsg::Decided` Once consensus is reached, the block is validated again against the execution client (via a `newPayload` call). - This is necessary as the proposer has not called `newPayload` in `ReceiveProposalParts` + This is necessary as the proposer has not called `newPayload` in `ReceiveProposalParts`. Then, a call to `forkchoiceUpdated` updates the head of the chain in the execution client. As an optimization, Emerald avoid re-validation by caching blocks that have been validated already so that non-proposing nodes do not have to call `newPayload` twice. @@ -57,4 +57,3 @@ Emerald is calling the Engine API RPC methods when handling events emitted by th - `AppMsg::GetDecidedValue` When other Emerald nodes are syncing, they might ask for blocks that are no longer in the local store. In that case, Emerald is calling `getPayload` to get the block from the execution client. - diff --git a/docs/operational-docs/src/architecture/index.md b/docs/operational-docs/src/architecture/index.md index 78ab72ec..bc85aaeb 100644 --- a/docs/operational-docs/src/architecture/index.md +++ b/docs/operational-docs/src/architecture/index.md @@ -1,7 +1,7 @@ # Architecture Emerald is a modular framework designed with simplicity at its core, enabling users to deploy reliable, easy to operate, high performance, EVM-compatible networks. -Its architecture is intentionally clean and composable, consisting of three key components. +Its architecture is intentionally clean and composable, consisting of three key components: - [Consensus Layer](consensus.md) - [Execution Layer](execution-client.md) diff --git a/docs/operational-docs/src/local-devnet/command-line.md b/docs/operational-docs/src/local-devnet/command-line.md index a20bc1f7..5a487115 100644 --- a/docs/operational-docs/src/local-devnet/command-line.md +++ b/docs/operational-docs/src/local-devnet/command-line.md @@ -147,7 +147,7 @@ Use the following command to check the network status: ``` -For example, checking the status after having started a four-node testnet should results in the following output: +For example, checking the status after having started a four-node testnet should result in the following output:
Output for emerald testnet status @@ -199,7 +199,7 @@ Use the following command to stop a single node: ```
-For example, running this command for Node `1` should results in the following output: +For example, running this command for Node `1` should result in the following output:
Output for emerald stop-node 1 @@ -212,7 +212,7 @@ For example, running this command for Node `1` should results in the following o ```
-And checking the network status should results in the following output: +And checking the network status should result in the following output:
Output for emerald status @@ -261,7 +261,7 @@ Use the following command to restart an existing node: ```
-For example, restarting the node that was previously stopped should results in the following output: +For example, restarting the node that was previously stopped should result in the following output:
Output for emerald start-node 1 @@ -300,7 +300,7 @@ Starting Reth node 1 on ports: ```
-And checking the network status should results in the following output: +And checking the network status should result in the following output:
Output for emerald status @@ -351,7 +351,7 @@ Use the following command to add a new node to the network: ```
-Running this command should results in the following output: +Running this command should result in the following output:
Output for emerald add-node @@ -409,7 +409,7 @@ Starting Reth node 4 on ports: ```
-And checking the network status should results in the following output: +And checking the network status should result in the following output:
Output for emerald status @@ -518,7 +518,7 @@ Gas used: 153301 ```
-And listing the validators should results in the following output: +And listing the validators should result in the following output:
Output for emerald-utils poa -r http://127.0.0.1:8645 list @@ -569,7 +569,7 @@ Use the following command to stop the local testnet: ```
-Running this command should results in the following output: +Running this command should result in the following output:
Output for emerald testnet stop @@ -609,7 +609,7 @@ Use the following command to remove all testnet data: ```
-Running this command should results in the following output: +Running this command should result in the following output:
Output for emerald testnet destroy diff --git a/docs/operational-docs/src/local-devnet/interactions.md b/docs/operational-docs/src/local-devnet/interactions.md index a5192d32..ba42e773 100644 --- a/docs/operational-docs/src/local-devnet/interactions.md +++ b/docs/operational-docs/src/local-devnet/interactions.md @@ -18,23 +18,6 @@ curl -X POST http://127.0.0.1:8645 \ -d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266","latest"],"id":1}' ``` -**Send a transaction:** -```bash -curl -X POST http://127.0.0.1:8645 \ - -H "Content-Type: application/json" \ - -d '{ - "jsonrpc":"2.0", - "method":"eth_sendTransaction", - "params":[{ - "from":"0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "to":"0x70997970C51812dc3A010C7d01b50e0d17dc79C8", - "value":"0x1000000000000000000", - "gas":"0x5208" - }], - "id":1 - }' -``` - ## Using `cast` (Foundry) **Prerequisite:** [Foundry](https://getfoundry.sh/introduction/installation/) @@ -63,7 +46,7 @@ Configure your Web3 library to connect to `http://127.0.0.1:8645`: **ethers.js (JavaScript):** ```javascript -const { ethers } = require('ethers'); +import { ethers } from 'ethers'; const provider = new ethers.JsonRpcProvider('http://127.0.0.1:8645'); const wallet = new ethers.Wallet('0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80', provider); diff --git a/docs/operational-docs/src/local-devnet/membership-changes.md b/docs/operational-docs/src/local-devnet/membership-changes.md index 047e69a8..4b1c2e25 100644 --- a/docs/operational-docs/src/local-devnet/membership-changes.md +++ b/docs/operational-docs/src/local-devnet/membership-changes.md @@ -111,7 +111,7 @@ To remove a validator from the active set: ```bash cargo run --bin emerald-utils poa -r http://127.0.0.1:8645 remove-validator \ - --validator-pubkey 0x04681eaaa34e491e6c8335abc9ea92b024ef52eb91442ca3b84598c79a79f31b75... \ + --validator-identifier 0x04681eaaa34e491e6c8335abc9ea92b024ef52eb91442ca3b84598c79a79f31b75... \ --owner-private-key 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 ``` @@ -121,7 +121,7 @@ To change a validator's voting weight: ```bash cargo run --bin emerald-utils poa -r http://127.0.0.1:8645 update-validator \ - --validator-pubkey 0x04681eaaa34e491e6c8335abc9ea92b024ef52eb91442ca3b84598c79a79f31b75... \ + --validator-identifier 0x04681eaaa34e491e6c8335abc9ea92b024ef52eb91442ca3b84598c79a79f31b75... \ --power 200 \ --owner-private-key 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 ``` \ No newline at end of file diff --git a/docs/operational-docs/src/local-devnet/monitoring.md b/docs/operational-docs/src/local-devnet/monitoring.md index e5a50415..36e5888d 100644 --- a/docs/operational-docs/src/local-devnet/monitoring.md +++ b/docs/operational-docs/src/local-devnet/monitoring.md @@ -61,10 +61,10 @@ View consensus logs for each validator: ```bash # View logs from validator 0 -tail -f nodes/0/emerald.log +tail -f nodes/0/logs/node.log # View logs from all validators simultaneously -tail -f nodes/{0,1,2,3}/emerald.log +tail -f nodes/{0,1,2,3}/logs/node.log ``` **What to look for:** diff --git a/docs/operational-docs/src/local-devnet/setup.md b/docs/operational-docs/src/local-devnet/setup.md index b95e1729..54c0c490 100644 --- a/docs/operational-docs/src/local-devnet/setup.md +++ b/docs/operational-docs/src/local-devnet/setup.md @@ -10,12 +10,14 @@ Before starting, ensure you have: - Docker Compose (usually included with Docker Desktop) - Make (typically pre-installed on Linux/macOS; Windows users can use WSL) - Git (for cloning the repository) +- [Protobuf](https://protobuf.dev/installation) (to compile Emerald `.proto` files) **Verify installations:** ```bash -rustc --version # Should show rustc 1.85+ +rustc --version # Should show rustc 1.88+ docker --version # Should show Docker 20.10+ -make --version # Should show GNU Make +make --version # Should show GNU Make 3.81+ +protoc --version # Should show libprotoc 33.1+ ``` ## Installation diff --git a/docs/operational-docs/src/local-devnet/troubleshooting.md b/docs/operational-docs/src/local-devnet/troubleshooting.md index 1f2146ba..16578f0c 100644 --- a/docs/operational-docs/src/local-devnet/troubleshooting.md +++ b/docs/operational-docs/src/local-devnet/troubleshooting.md @@ -24,7 +24,7 @@ 4. Check emerald logs ```bash - tail -f nodes/0/emerald.log + tail -f nodes/0/logs/node.log ``` ## Validator Operations Fail