Skip to content

Add spec compliant zilkworm guest program#38

Open
developeruche wants to merge 11 commits into
eth-act:mainfrom
developeruche:feat/zilkworm
Open

Add spec compliant zilkworm guest program#38
developeruche wants to merge 11 commits into
eth-act:mainfrom
developeruche:feat/zilkworm

Conversation

@developeruche
Copy link
Copy Markdown
Contributor

No description provided.

- Replace successful_validation = false stub with full execution path
- Decode pre-state (accounts/storage/codes) from witness.state[0] via
  read_pre_state_from_rlp()
- Populate FlatNodeStore from witness.state[1] MPT trie nodes
- Load ancestor headers from witness.headers into InMemoryState
- Build silkworm::Block from SSZ ExecutionPayload fields
- Execute via protocol::Blockchain::insert_block(block, false)
- Inline StateTransition::check_root() logic to verify post-state root
  using GridMPT delta reconstruction against block.header.state_root
- Re-add zilk_core subdirectory and silkworm_dev/silkworm_core link deps
- Point zilkworm fetch to developeruche/zilkworm feat/spec-v0.1 branch
- tests/CMakeLists.txt: native x86_64 build using same zilkworm fetch
- tests/json_fixtures.hpp: EF BlockchainTest JSON parser (nlohmann/json)
- tests/skip_list.hpp: port of Rust's should_skip() + uncle/meta skips
- tests/blockchain_test.hpp/.cpp: test execution via Blockchain::insert_block()
  with fork-name → ChainConfig mapping and post-state account validation
- tests/main.cpp: serial runner (1028 pass / 58 skip / 0 fail on available fixtures)
- tests/ethereum-tests: git submodule (ethereum/tests v17.2)
- Makefile: add test, test-build, test-only targets
@developeruche developeruche marked this pull request as ready for review May 6, 2026 09:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant