datahaven/operator
undercover-cactus a9d0f7157a
feat: storage hub client (#149)
Co-authored-by: Steve Degosserie <723552+stiiifff@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
2025-09-10 08:15:27 +02:00
..
.cargo refactor: 🐳 Improve docker caching (again) (#86) 2025-05-27 16:14:15 +00:00
benchmarking test: init benchmark infra (#110) 2025-08-06 13:44:42 +02:00
node feat: storage hub client (#149) 2025-09-10 08:15:27 +02:00
pallets test: init benchmark infra (#110) 2025-08-06 13:44:42 +02:00
precompiles feat: Add Moonbeam CallPermit precompile (#140) 2025-09-07 15:00:37 +02:00
primitives test: init benchmark infra (#110) 2025-08-06 13:44:42 +02:00
runtime feat: storage hub client (#149) 2025-09-10 08:15:27 +02:00
scripts feat: Implement Moonbeam-style OpenGov governance (#131) 2025-09-02 22:46:35 +02:00
test Fix: 🏗️ Message encoding / decoding (#113) 2025-07-16 07:38:58 +00:00
.dockerignore refactor: 🐳 Improve docker caching (again) (#86) 2025-05-27 16:14:15 +00:00
.gitignore test: Native token transfer e2e tests (#120) 2025-08-22 18:27:14 +02:00
Cargo.lock feat: storage hub client (#149) 2025-09-10 08:15:27 +02:00
Cargo.toml feat: storage hub client (#149) 2025-09-10 08:15:27 +02:00
Dockerfile refactor: 🐳 Improve docker caching (again) (#86) 2025-05-27 16:14:15 +00:00
LICENSE build: 🏗️ DataHaven operator setup (#6) 2025-03-17 17:57:14 +01:00
README.md test: init benchmark infra (#110) 2025-08-06 13:44:42 +02:00
rust-toolchain.toml feat: storage hub client (#149) 2025-09-10 08:15:27 +02:00

DataHaven 🫎

Based on polkadot-sdk-solochain-template

Benchmarking

DataHaven uses runtime benchmarking to generate accurate weight calculations for all pallets. The benchmarking process is automated using frame-omni-bencher.

Requirements

Make sure you have the lastest rust version

  • frame-omni-bencher - Install with: cargo install frame-omni-bencher --profile=production (or cargo install --git https://github.com/paritytech/polkadot-sdk frame-omni-bencher --profile=production --locked)

Running Benchmarks

Execute the benchmarking script from the project root:

# Benchmark all pallets for testnet runtime (default)
./scripts/run-benchmarks.sh

# Benchmark specific runtime
./scripts/run-benchmarks.sh mainnet

# Custom steps and repetitions
./scripts/run-benchmarks.sh testnet 100 50

The script will:

  1. Automatically discover all available pallets
  2. Build the runtime WASM with runtime-benchmarks feature
  3. Generate weight files in runtime/{runtime}/src/weights/
  4. Provide a summary of successful and failed benchmarks

Script Parameters

  • runtime: Runtime to benchmark (testnet, stagenet, mainnet). Default: testnet
  • steps: Number of steps for benchmarking. Default: 50
  • repeat: Number of repetitions. Default: 20

Zombienet testing

First, install zombienet.

To spawn a local solo chain with four validators and BABE finality, run:

zombienet -p native spawn test/config/zombie-datahaven-local.toml