Skip to content
Merged
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ require (
github.com/antithesishq/antithesis-sdk-go v0.3.8
github.com/ava-labs/avalanchego/graft/coreth v0.0.0-20251203215505-70148edc6eca
github.com/ava-labs/avalanchego/graft/subnet-evm v0.8.1-0.20251201175023-067762d6ce7d
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300
github.com/btcsuite/btcd/btcutil v1.1.3
github.com/cespare/xxhash/v2 v2.3.0
github.com/cockroachdb/pebble v0.0.0-20230928194634-aa077af62593
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPd
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.16 h1:J+evKZFzlS85Y9AL8z6ThNFthdTIF0YzRT6MTm9S+y8=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.16/go.mod h1:hR/JSGXxST9B9olwu/NpLXHAykfAyNGfyKnYQqiiOeE=
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2 h1:hQ15IJxY7WOKqeJqCXawsiXh0NZTzmoQOemkWHz7rr4=
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2/go.mod h1:DqSotSn4Dx/UJV+d3svfW8raR+cH7+Ohl9BpsQ5HlGU=
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300 h1:9VRvqASGSAnQ9tKVRKGH8Q0Yq8efCwYTBWp0p2creho=
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300/go.mod h1:DqSotSn4Dx/UJV+d3svfW8raR+cH7+Ohl9BpsQ5HlGU=
github.com/ava-labs/simplex v0.0.0-20250919142550-9cdfff10fd19 h1:S6oFasZsplNmw8B2S8cMJQMa62nT5ZKGzZRdCpd+5qQ=
github.com/ava-labs/simplex v0.0.0-20250919142550-9cdfff10fd19/go.mod h1:GVzumIo3zR23/qGRN2AdnVkIPHcKMq/D89EGWZfMGQ0=
github.com/aymerick/raymond v2.0.3-0.20180322193309-b565731e1464+incompatible/go.mod h1:osfaiScAUVup+UC9Nfq76eWqDhXlp+4UYaA8uhTBO6g=
Expand Down
19 changes: 18 additions & 1 deletion graft/coreth/eth/tracers/api_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ package tracers
import (
"context"
"crypto/ecdsa"
"encoding/binary"
"encoding/json"
"errors"
"fmt"
Expand All @@ -54,6 +55,7 @@ import (
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/eth/tracers/logger"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/libevm/ethtest"
ethparams "github.com/ava-labs/libevm/params"
"golang.org/x/exp/slices"
)
Expand Down Expand Up @@ -630,7 +632,9 @@ func TestTracingWithOverrides(t *testing.T) {

func testTracingWithOverrides(t *testing.T, scheme string) {
// Initialize test accounts
accounts := newAccounts(3)
// This test requires deterministic block hashes, since it will fail 1/256 times,
// when the final block hash starts with 0xef.
accounts := UNSAFEDeterministicAccounts(t, 3)
storageAccount := common.Address{0x13, 37}
genesis := &core.Genesis{
Config: params.TestChainConfig,
Expand Down Expand Up @@ -996,6 +1000,19 @@ func newAccounts(n int) (accounts []Account) {
return accounts
}

// WARNING: only use for tests that require deterministic accounts
func UNSAFEDeterministicAccounts(t *testing.T, n int) (accounts []Account) {
seed := make([]byte, 8) // int64 size
for i := 0; i < n; i++ {
binary.BigEndian.PutUint64(seed, uint64(i))
key := ethtest.UNSAFEDeterministicPrivateKey(t, seed)
addr := crypto.PubkeyToAddress(key.PublicKey)
accounts = append(accounts, Account{key: key, addr: addr})
}
slices.SortFunc(accounts, func(a, b Account) int { return a.addr.Cmp(b.addr) })
return accounts
}

func newRPCBalance(balance *big.Int) **hexutil.Big {
rpcBalance := (*hexutil.Big)(balance)
return &rpcBalance
Expand Down
2 changes: 1 addition & 1 deletion graft/coreth/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ require (
github.com/VictoriaMetrics/fastcache v1.12.1
github.com/ava-labs/avalanchego v1.14.1-0.20251120155522-df4a8e531761
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.16
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc
github.com/deckarep/golang-set/v2 v2.1.0
github.com/go-cmd/cmd v1.4.3
Expand Down
4 changes: 2 additions & 2 deletions graft/coreth/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPd
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.16 h1:J+evKZFzlS85Y9AL8z6ThNFthdTIF0YzRT6MTm9S+y8=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.16/go.mod h1:hR/JSGXxST9B9olwu/NpLXHAykfAyNGfyKnYQqiiOeE=
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2 h1:hQ15IJxY7WOKqeJqCXawsiXh0NZTzmoQOemkWHz7rr4=
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2/go.mod h1:DqSotSn4Dx/UJV+d3svfW8raR+cH7+Ohl9BpsQ5HlGU=
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300 h1:9VRvqASGSAnQ9tKVRKGH8Q0Yq8efCwYTBWp0p2creho=
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300/go.mod h1:DqSotSn4Dx/UJV+d3svfW8raR+cH7+Ohl9BpsQ5HlGU=
github.com/aymerick/raymond v2.0.3-0.20180322193309-b565731e1464+incompatible/go.mod h1:osfaiScAUVup+UC9Nfq76eWqDhXlp+4UYaA8uhTBO6g=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
Expand Down
1 change: 1 addition & 0 deletions graft/coreth/scripts/eth-allowed-packages.txt
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
"github.com/ava-labs/libevm/ethdb/pebble"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/libevm/libevm"
"github.com/ava-labs/libevm/libevm/ethtest"
"github.com/ava-labs/libevm/libevm/legacy"
"github.com/ava-labs/libevm/libevm/options"
"github.com/ava-labs/libevm/libevm/stateconf"
Expand Down
19 changes: 18 additions & 1 deletion graft/subnet-evm/eth/tracers/api_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ package tracers
import (
"context"
"crypto/ecdsa"
"encoding/binary"
"encoding/json"
"errors"
"fmt"
Expand All @@ -54,6 +55,7 @@ import (
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/eth/tracers/logger"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/libevm/ethtest"
ethparams "github.com/ava-labs/libevm/params"
"golang.org/x/exp/slices"
)
Expand Down Expand Up @@ -628,7 +630,9 @@ func TestTracingWithOverrides(t *testing.T) {

func testTracingWithOverrides(t *testing.T, scheme string) {
// Initialize test accounts
accounts := newAccounts(3)
// This test requires deterministic block hashes, since it will fail 1/256 times,Expand commentComment on line R635ResolvedCode has comments. Press enter to view.
// when the final block hash starts with 0xef.
accounts := UNSAFEDeterministicAccounts(t, 3)
storageAccount := common.Address{0x13, 37}
genesis := &core.Genesis{
Config: params.TestChainConfig,
Expand Down Expand Up @@ -994,6 +998,19 @@ func newAccounts(n int) (accounts []Account) {
return accounts
}

// WARNING: only use for tests that require deterministic accounts
func UNSAFEDeterministicAccounts(t *testing.T, n int) (accounts []Account) {
seed := make([]byte, 8) // int64 size
for i := 0; i < n; i++ {
binary.BigEndian.PutUint64(seed, uint64(i))
key := ethtest.UNSAFEDeterministicPrivateKey(t, seed)
addr := crypto.PubkeyToAddress(key.PublicKey)
accounts = append(accounts, Account{key: key, addr: addr})
}
slices.SortFunc(accounts, func(a, b Account) int { return a.addr.Cmp(b.addr) })
return accounts
}

func newRPCBalance(balance *big.Int) **hexutil.Big {
rpcBalance := (*hexutil.Big)(balance)
return &rpcBalance
Expand Down
2 changes: 1 addition & 1 deletion graft/subnet-evm/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ require (
github.com/antithesishq/antithesis-sdk-go v0.3.8
github.com/ava-labs/avalanchego v1.14.1-antithesis-docker-image-fix
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.16
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc
github.com/deckarep/golang-set/v2 v2.1.0
github.com/go-cmd/cmd v1.4.3
Expand Down
4 changes: 2 additions & 2 deletions graft/subnet-evm/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ github.com/ava-labs/avalanchego/graft/coreth v0.0.0-20251203215505-70148edc6eca
github.com/ava-labs/avalanchego/graft/coreth v0.0.0-20251203215505-70148edc6eca/go.mod h1:y+/5DAxCTLAXdWRxAYN1V8DV0DIF7uHhOOeNa9oASuU=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.16 h1:J+evKZFzlS85Y9AL8z6ThNFthdTIF0YzRT6MTm9S+y8=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.16/go.mod h1:hR/JSGXxST9B9olwu/NpLXHAykfAyNGfyKnYQqiiOeE=
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2 h1:hQ15IJxY7WOKqeJqCXawsiXh0NZTzmoQOemkWHz7rr4=
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2/go.mod h1:DqSotSn4Dx/UJV+d3svfW8raR+cH7+Ohl9BpsQ5HlGU=
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300 h1:9VRvqASGSAnQ9tKVRKGH8Q0Yq8efCwYTBWp0p2creho=
github.com/ava-labs/libevm v1.13.15-0.20251210210615-b8e76562a300/go.mod h1:DqSotSn4Dx/UJV+d3svfW8raR+cH7+Ohl9BpsQ5HlGU=
github.com/aymerick/raymond v2.0.3-0.20180322193309-b565731e1464+incompatible/go.mod h1:osfaiScAUVup+UC9Nfq76eWqDhXlp+4UYaA8uhTBO6g=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
Expand Down