Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .env
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ DRAGON_HEIGHT=-5
WAFFLE_HEIGHT=-4
TUKTUK_HEIGHT=-3
TEEP_HEIGHT=-2
GOLDENWEEK_HEIGHT=100
XX_HEIGHT=1000
GOLDENWEEK_HEIGHT=20
FIREHORSE_HEIGHT=50

# ----------------------------- LOTUS -----------------------------
LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION}
Expand All @@ -43,7 +43,7 @@ LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT}
LOTUS_GOLDENWEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
LOTUS_XX_HEIGHT=${XX_HEIGHT}
LOTUS_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

LOTUS_RPC_PORT=1234
LOTUS_P2P_PORT=1236
Expand Down Expand Up @@ -107,7 +107,7 @@ FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
FOREST_TEEP_HEIGHT=${TEEP_HEIGHT}
FOREST_GOLDEN_WEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
FOREST_XX_HEIGHT=${XX_HEIGHT}
FOREST_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

FOREST_RPC_PORT=3456
FOREST_P2P_PORT=40107
Expand Down
8 changes: 4 additions & 4 deletions env.consensus
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ DRAGON_HEIGHT=-5
WAFFLE_HEIGHT=-4
TUKTUK_HEIGHT=-3
TEEP_HEIGHT=-2
GOLDENWEEK_HEIGHT=100
XX_HEIGHT=1000
GOLDENWEEK_HEIGHT=20
FIREHORSE_HEIGHT=50

# ----------------------------- LOTUS -----------------------------
LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION}
Expand All @@ -43,7 +43,7 @@ LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT}
LOTUS_GOLDENWEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
LOTUS_XX_HEIGHT=${XX_HEIGHT}
LOTUS_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

LOTUS_RPC_PORT=1234
LOTUS_P2P_PORT=1236
Expand Down Expand Up @@ -107,7 +107,7 @@ FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
FOREST_TEEP_HEIGHT=${TEEP_HEIGHT}
FOREST_GOLDEN_WEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
FOREST_XX_HEIGHT=${XX_HEIGHT}
FOREST_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

FOREST_RPC_PORT=3456
FOREST_P2P_PORT=40107
Expand Down
8 changes: 4 additions & 4 deletions env.drand
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ DRAGON_HEIGHT=-5
WAFFLE_HEIGHT=-4
TUKTUK_HEIGHT=-3
TEEP_HEIGHT=-2
GOLDENWEEK_HEIGHT=100
XX_HEIGHT=1000
GOLDENWEEK_HEIGHT=20
FIREHORSE_HEIGHT=50

# ----------------------------- LOTUS -----------------------------
LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION}
Expand All @@ -44,7 +44,7 @@ LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT}
LOTUS_GOLDENWEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
LOTUS_XX_HEIGHT=${XX_HEIGHT}
LOTUS_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

LOTUS_RPC_PORT=1234
LOTUS_P2P_PORT=1236
Expand Down Expand Up @@ -107,7 +107,7 @@ FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
FOREST_TEEP_HEIGHT=${TEEP_HEIGHT}
FOREST_GOLDEN_WEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
FOREST_XX_HEIGHT=${XX_HEIGHT}
FOREST_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

FOREST_RPC_PORT=3456
FOREST_P2P_PORT=40107
Expand Down
24 changes: 15 additions & 9 deletions env.fip
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Profile: fip — state migration + network upgrade focus
# ============================================
# Validates state migration correctness across upgrade epochs.
# GOLDENWEEK_HEIGHT=50 and XX_HEIGHT=200 trigger real upgrades mid-test.
# GOLDENWEEK (NV27) and FIREHORSE (NV28) trigger real upgrades mid-test.
# Heavy state audit, receipt audit, and actor migration weights.

# ----------------------------- SCALE -----------------------------
Expand All @@ -18,7 +18,10 @@ LOTUS_F3_ENABLED=true
# ----------------------------- GENERAL -----------------------------
SHARED_CONFIGS="/shared/configs"

# Network Heights — GOLDENWEEK and XX set LOW to trigger mid-test upgrades
# Network Heights — GOLDENWEEK (NV27) and FIREHORSE (NV28) set LOW to
# trigger mid-test upgrades. 30-epoch spacing: NV27 boundary window
# [10,50] overlaps NV28 window [40,80] only in [40,50] where NV27 is
# already past its migration so the overlap is harmless.
GENESIS_NETWORK_VERSION=26
SHARK_HEIGHT=-10
HYGGE_HEIGHT=-9
Expand All @@ -29,8 +32,8 @@ DRAGON_HEIGHT=-5
WAFFLE_HEIGHT=-4
TUKTUK_HEIGHT=-3
TEEP_HEIGHT=-2
GOLDENWEEK_HEIGHT=50
XX_HEIGHT=200
GOLDENWEEK_HEIGHT=20
FIREHORSE_HEIGHT=50

# ----------------------------- LOTUS -----------------------------
LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION}
Expand All @@ -44,7 +47,7 @@ LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT}
LOTUS_GOLDENWEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
LOTUS_XX_HEIGHT=${XX_HEIGHT}
LOTUS_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

LOTUS_RPC_PORT=1234
LOTUS_P2P_PORT=1236
Expand Down Expand Up @@ -108,7 +111,7 @@ FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
FOREST_TEEP_HEIGHT=${TEEP_HEIGHT}
FOREST_GOLDEN_WEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
FOREST_XX_HEIGHT=${XX_HEIGHT}
FOREST_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

FOREST_RPC_PORT=3456
FOREST_P2P_PORT=40107
Expand Down Expand Up @@ -143,9 +146,10 @@ YUGABYTE_PORT_5=9042
YB_DATA_DIR=/mnt/master

# ======================== WORKLOAD PROFILE ========================
# FOCUS: Network upgrade correctness (GOLDENWEEK=50, XX=200).
# NEEDS traffic — FIP-0115 changes gas fees, needs full mempool at upgrade.
# Traffic generators ON but assertions come from cross-node consistency checks.
# FOCUS: Network upgrade correctness (GOLDENWEEK=20, FIREHORSE=50).
# Minimal deck — only consensus assertions + enough traffic to produce
# state worth comparing. Every deck slot should answer: "did the
# implementations diverge at the upgrade boundary?"
FUZZER_ENABLED=0
# --- ASSERTIONS (the report) ---
STRESS_WEIGHT_STATE_ROOT=6 # PRIMARY: cross-node state root agreement
Expand All @@ -158,6 +162,8 @@ STRESS_WEIGHT_F3_MONITOR=2 # F3 continuity across upgrade
STRESS_WEIGHT_F3_AGREEMENT=3 # F3 certificate consistency
STRESS_WEIGHT_DRAND_BEACON_AUDIT=2 # beacon consistency
STRESS_WEIGHT_HEAVY_COMPUTE=2 # state recomputation (catches non-deterministic migrations)
# --- UPGRADE SUITE: boundary-specific assertions + state stress ---
STRESS_WEIGHT_UPGRADE_SUITE=5 # NV agreement, migration state roots, boundary stress
# --- TRAFFIC (feeds the mempool for FIP-0115 base fee testing) ---
STRESS_WEIGHT_TRANSFER=2 # FIL transfers
STRESS_WEIGHT_GAS_WAR=2 # gas premium races (exercises FIP-0115 premium percentile)
Expand Down
8 changes: 4 additions & 4 deletions env.foc
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ DRAGON_HEIGHT=-5
WAFFLE_HEIGHT=-4
TUKTUK_HEIGHT=-3
TEEP_HEIGHT=-2
GOLDENWEEK_HEIGHT=100
XX_HEIGHT=1000
GOLDENWEEK_HEIGHT=20
FIREHORSE_HEIGHT=50

# ----------------------------- LOTUS -----------------------------
LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION}
Expand All @@ -43,7 +43,7 @@ LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT}
LOTUS_GOLDENWEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
LOTUS_XX_HEIGHT=${XX_HEIGHT}
LOTUS_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

LOTUS_RPC_PORT=1234
LOTUS_P2P_PORT=1236
Expand Down Expand Up @@ -107,7 +107,7 @@ FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
FOREST_TEEP_HEIGHT=${TEEP_HEIGHT}
FOREST_GOLDEN_WEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
FOREST_XX_HEIGHT=${XX_HEIGHT}
FOREST_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

FOREST_RPC_PORT=3456
FOREST_P2P_PORT=40107
Expand Down
8 changes: 4 additions & 4 deletions env.nightly
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ DRAGON_HEIGHT=-5
WAFFLE_HEIGHT=-4
TUKTUK_HEIGHT=-3
TEEP_HEIGHT=-2
GOLDENWEEK_HEIGHT=100
XX_HEIGHT=1000
GOLDENWEEK_HEIGHT=20
FIREHORSE_HEIGHT=50

# ----------------------------- LOTUS -----------------------------
LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION}
Expand All @@ -43,7 +43,7 @@ LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT}
LOTUS_GOLDENWEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
LOTUS_XX_HEIGHT=${XX_HEIGHT}
LOTUS_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

LOTUS_RPC_PORT=1234
LOTUS_P2P_PORT=1236
Expand Down Expand Up @@ -107,7 +107,7 @@ FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT}
FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT}
FOREST_TEEP_HEIGHT=${TEEP_HEIGHT}
FOREST_GOLDEN_WEEK_HEIGHT=${GOLDENWEEK_HEIGHT}
FOREST_XX_HEIGHT=${XX_HEIGHT}
FOREST_FIREHORSE_HEIGHT=${FIREHORSE_HEIGHT}

FOREST_RPC_PORT=3456
FOREST_P2P_PORT=40107
Expand Down
4 changes: 2 additions & 2 deletions forest/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
FROM docker.io/rust:1.81-bookworm AS builder

# Pin forest to a specific branch
ARG GIT_COMMIT=""
# Pin forest to a specific branch, tag, or commit
ARG GIT_COMMIT="nv28-2k-testing"
ARG LOCAL_BUILD=1
# Step 1: Install dependencies
RUN apt-get update && \
Expand Down
7 changes: 4 additions & 3 deletions lotus/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,11 @@ FROM golang:$GO_VERSION
# installing jq, opencl, and hwloc (required for make 2k step)
RUN apt-get update && apt-get install -y jq libhwloc-dev ocl-icd-opencl-dev && rm -rf /var/lib/apt/lists/*

# cloning lotus
ARG REF="master"
RUN git clone --depth=1 https://github.com/filecoin-project/lotus.git --branch=${REF} /lotus
# cloning lotus — supports branch, tag, or commit SHA
ARG REF="d036ad9521d6621b5393d3d1b707a9994e94feed"
RUN git clone https://github.com/filecoin-project/lotus.git /lotus
WORKDIR /lotus
RUN git checkout ${REF}

# copy & apply lotus patch (local drand; setting bootstrap and finality epoch)
COPY patches/lotus.patch lotus.patch
Expand Down
8 changes: 7 additions & 1 deletion workload/cmd/stress-engine/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,11 @@ func buildDeck() {
{"DoDrandBeaconAudit", "STRESS_WEIGHT_DRAND_BEACON_AUDIT", DoDrandBeaconAudit, 3},
}

// Network upgrade suite — single entry, runs all sub-vectors per invocation.
upgrade := []weightedAction{
{"DoUpgradeSuite", "STRESS_WEIGHT_UPGRADE_SUITE", DoUpgradeSuite, 0},
}

// Non-FOC stress vectors — skipped when FOC profile is active.
// All weights are overridable via STRESS_WEIGHT_* env vars from the profile .env.
stress := []weightedAction{
Expand Down Expand Up @@ -326,8 +331,9 @@ func buildDeck() {
{"DoReorgChaos", "STRESS_WEIGHT_REORG", DoReorgChaos, 0},
}

// Build actions list: consensus always, stress only when FOC is not active
// Build actions list: consensus always, upgrade always, stress only when FOC is not active
actions := append([]weightedAction{}, consensus...)
actions = append(actions, upgrade...)
if focCfg == nil {
actions = append(actions, stress...)
} else {
Expand Down
Loading
Loading