-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathengine.e2e.toml
More file actions
72 lines (62 loc) · 2.59 KB
/
Copy pathengine.e2e.toml
File metadata and controls
72 lines (62 loc) · 2.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# E2E testnet integration config for nexum.
#
# Boots all 4 production + example modules on Sepolia simultaneously
# for the 4-6 h E2E run:
#
# - twap-monitor (shepherd/modules/twap-monitor)
# - ethflow-watcher (shepherd/modules/ethflow-watcher)
# - price-alert (nexum/modules/examples/price-alert)
# - balance-tracker (nexum/modules/examples/balance-tracker)
#
# This is the integration step between the M3 single-chain runbook
# (`engine.m3.toml`, 2 modules) and the 7-day soak
# (Sepolia + Arb Sepolia, all modules, no human-in-the-loop). The
# E2E run validates correctness in a real-chain dispatch context;
# the soak validates stability afterwards.
#
# Usage:
# just run-e2e
# # or:
# just build-e2e
# cargo run -p nexum-cli -- --engine-config engine.e2e.toml
#
# Operator runbook: docs/operations/e2e-testnet-runbook.md
[engine]
# Separate from data/m2 and data/m3 so the run starts on a clean
# local-store and the report's UID round-trip section is uncluttered.
state_dir = "./data/e2e"
log_level = "info,nexum_runtime=debug"
# Bind /metrics so the operator can scrape Prometheus at
# 60 s intervals during the run and check the e2e report's metrics
# delta section. 127.0.0.1 is intentional - do not expose a metrics
# port on a public interface.
[engine.metrics]
enabled = true
bind_addr = "127.0.0.1:9100"
# Sepolia. Override with an Alchemy / Infura WS for the run; the
# public node throttles `eth_subscribe` under sustained load (>1
# `eth_call` per module per block = 4 calls/12 s window minimum,
# more under bursts of EthFlow / TWAP activity).
[chains.11155111]
rpc_url = "wss://ethereum-sepolia-rpc.publicnode.com"
# --- modules ----------------------------------------------------------
[[modules]]
path = "target/wasm32-wasip2/release/twap_monitor.wasm"
manifest = "shepherd/modules/twap-monitor/module.toml"
[[modules]]
path = "target/wasm32-wasip2/release/ethflow_watcher.wasm"
manifest = "shepherd/modules/ethflow-watcher/module.toml"
[[modules]]
path = "target/wasm32-wasip2/release/price_alert.wasm"
manifest = "nexum/modules/examples/price-alert/module.toml"
[[modules]]
path = "target/wasm32-wasip2/release/balance_tracker.wasm"
manifest = "nexum/modules/examples/balance-tracker/module.toml"
# --- adapters ---------------------------------------------------------
# The cow venue adapter twap-monitor submits through (`just
# build-cow-venue`). Sepolia manifest: the adapter's orderbook must
# match the chain twap indexes.
[[adapters]]
path = "target/wasm32-wasip2/release/cow_venue.wasm"
manifest = "shepherd/crates/cow-venue/module.sepolia.toml"
http_allow = ["api.cow.fi"]