Skip to content

Commit 99d6b0e

Browse files
cryptoAtwillcryptoAtwillphutchins
authored
feat(node): verifying cometbft precommit signatures (#1402)
Co-authored-by: cryptoAtwill <willes.lau@protocol.ai> Co-authored-by: philip <flipture@gmail.com>
1 parent bbb2596 commit 99d6b0e

139 files changed

Lines changed: 7118 additions & 6235 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,6 @@
1313
[submodule "contracts/lib/ExcessivelySafeCall"]
1414
path = contracts/lib/ExcessivelySafeCall
1515
url = https://github.com/nomad-xyz/ExcessivelySafeCall
16+
[submodule "contracts/lib/tendermint-sol"]
17+
path = contracts/lib/tendermint-sol
18+
url = https://github.com/ChorusOne/tendermint-sol

Cargo.lock

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,34 @@ make ( or make build-with-ui )
5353
make test
5454
```
5555

56+
## Local Development with Anvil
57+
58+
For local development and testing, you can use Anvil (local Ethereum node) with your IPC keystore accounts:
59+
60+
```sh
61+
# Quick start - setup Anvil with all IPC keystore accounts funded
62+
./scripts/setup-anvil-with-ipc-keys.sh
63+
64+
# Stop Anvil
65+
/tmp/stop-anvil-ipc.sh
66+
67+
# Save/load Anvil state for persistence across restarts
68+
./scripts/anvil-persistent-state.sh save
69+
./scripts/anvil-persistent-state.sh load
70+
```
71+
72+
This automatically:
73+
- Starts Anvil on port 8545 with chain ID 31337
74+
- Funds all addresses from `~/.ipc/evm_keystore.json` with 10,000 ETH each
75+
- Uses deterministic accounts for consistent testing
76+
77+
For detailed documentation, see [scripts/ANVIL_IPC_SETUP.md](./scripts/ANVIL_IPC_SETUP.md).
78+
79+
**Optional**: Source convenience aliases:
80+
```sh
81+
source scripts/aliases.sh # Adds anvil-start, anvil-stop, etc.
82+
```
83+
5684
## Code organization
5785

5886
- `ipc/cli`: A Rust binary crate for our client `ipc-cli` application that provides a simple and easy-to-use interface to interact with IPC as a user and run all the processes required for the operation of a subnet.

contract-bindings/build.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ fn main() -> color_eyre::Result<()> {
8484
"GatewayMessengerFacet",
8585
"SubnetActorActivityFacet",
8686
"SubnetActorCheckpointingFacet",
87+
"SubnetActorCheckpointFacetMock",
8788
"SubnetActorDiamond",
8889
"SubnetActorGetterFacet",
8990
"SubnetActorManagerFacet",
@@ -95,7 +96,6 @@ fn main() -> color_eyre::Result<()> {
9596
"LibPower",
9697
"LibPowerChangeLog",
9798
"LibGateway",
98-
"LibQuorum",
9999
];
100100

101101
for contract_name in all_contracts {

0 commit comments

Comments
 (0)