Skip to content

Shadow simulation tooling#79

Draft
kamilsa wants to merge 9 commits into
masterfrom
devnet4-shadow
Draft

Shadow simulation tooling#79
kamilsa wants to merge 9 commits into
masterfrom
devnet4-shadow

Conversation

@kamilsa
Copy link
Copy Markdown
Contributor

@kamilsa kamilsa commented May 25, 2026

Introduces a comprehensive suite of tools for running and analyzing Shadow simulations, including:

  • New simulation scripts (run-real.py and run-shadow.py) with genesis generation and subnet configuration.
  • Docker infrastructure for building and running QLEAN with Shadow-arm runtime.
  • Analysis scripts to track attestation propagation statistics.
  • Fixes for slot parsing and data cleanup to ensure consistent simulation runs.

turuslan and others added 9 commits May 25, 2026 11:47
Signed-off-by: turuslan <turuslan.devbox@gmail.com>

# Conflicts:
#	src/app/impl/http_server.cpp
#	src/commands/test_driver.hpp
Signed-off-by: turuslan <turuslan.devbox@gmail.com>
…pologies

Co-Authored-By: Claude <noreply@anthropic.com>
- Fix attestation slot parsing (parts[3] not parts[2] — head_slot vs slot)
- Clean data directory between runs to prevent stale blocks
- Add build-qlean.py wrapper for rebuilding the Docker image
- Fix shadow --progress flag syntax

Co-Authored-By: Claude <noreply@anthropic.com>
- scripts/run-real.py: run Shadow simulation with real XMSS signing,
  verification and aggregation (QLEAN_ENABLE_SHADOW=OFF). Supports
  --generate-genesis which creates genesis with real key files via
  two-pass (shadow ENRs + real keys, merged).
- simulation/Dockerfile.real: builds qlean with real XMSS provider
  (no -DQLEAN_ENABLE_SHADOW=ON), packages with Shadow-arm runtime.
- scripts/run-shadow.py: add --generate-genesis, --genesis-dir,
  --subnet-count (default 1) flags.
- .gitignore: exclude generated genesis_real and ad-hoc topology dirs.
@kamilsa kamilsa changed the title Implement Shadow simulation tooling and real signature support Shadow simulation tooling May 25, 2026
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.

2 participants