diff --git a/go.mod b/go.mod index d6d3618f..7f764264 100644 --- a/go.mod +++ b/go.mod @@ -8,6 +8,7 @@ require ( github.com/attestantio/go-eth2-client v0.28.0 github.com/cockroachdb/pebble v1.1.5 github.com/ethereum/go-ethereum v1.17.2 + github.com/ethpandaops/eth-das-guardian v0.0.0-20260410123341-c9663e34164d github.com/ethpandaops/ethcore v0.0.0-20260320045412-9cdd5d70a29c github.com/ethpandaops/ethwallclock v0.4.0 github.com/glebarez/go-sqlite v1.22.0 @@ -24,7 +25,6 @@ require ( github.com/mitchellh/mapstructure v1.5.0 github.com/pk910/dynamic-ssz v1.3.1-0.20260407212738-e97de623fd84 github.com/pressly/goose/v3 v3.27.0 - github.com/probe-lab/eth-das-guardian v0.2.2 github.com/protolambda/bls12-381-util v0.1.0 github.com/protolambda/zrnt v0.34.1 github.com/protolambda/ztyp v0.2.2 @@ -255,4 +255,4 @@ require ( modernc.org/sqlite v1.46.1 // indirect ) -replace github.com/attestantio/go-eth2-client => github.com/pk910/go-eth2-client v0.0.0-20260331085057-05aefaa5ce81 +replace github.com/attestantio/go-eth2-client => github.com/pk910/go-eth2-client v0.0.0-20260401105128-4544cf21b737 diff --git a/go.sum b/go.sum index ec1176d6..39441c21 100644 --- a/go.sum +++ b/go.sum @@ -114,6 +114,8 @@ github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab h1:rvv6MJ github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab/go.mod h1:IuLm4IsPipXKF7CW5Lzf68PIbZ5yl7FFd74l/E0o9A8= github.com/ethereum/go-ethereum v1.17.2 h1:ag6geu0kn8Hv5FLKTpH+Hm2DHD+iuFtuqKxEuwUsDOI= github.com/ethereum/go-ethereum v1.17.2/go.mod h1:KHcRXfGOUfUmKg51IhQ0IowiqZ6PqZf08CMtk0g5K1o= +github.com/ethpandaops/eth-das-guardian v0.0.0-20260410123341-c9663e34164d h1:qyBM/DoN7kTrELetvPE/zZbNyESai/Jp0NDtQIV6i24= +github.com/ethpandaops/eth-das-guardian v0.0.0-20260410123341-c9663e34164d/go.mod h1:+1ZU+Z8YZXBp5jWcd1ATJ0xIJfHuj/sufIOL+qJbOLw= github.com/ethpandaops/ethcore v0.0.0-20260320045412-9cdd5d70a29c h1:uBRIitwcuCJlRGioqm0jQRIojiH8DSyLRFSTCCBxN6o= github.com/ethpandaops/ethcore v0.0.0-20260320045412-9cdd5d70a29c/go.mod h1:QsmYTdesob+vQ6pW4KtRVvxLZUNop3cdtd/DgD30hJU= github.com/ethpandaops/ethwallclock v0.4.0 h1:+sgnhf4pk6hLPukP076VxkiLloE4L0Yk1yat+ZyHh1g= @@ -555,8 +557,8 @@ github.com/pion/webrtc/v4 v4.1.4 h1:/gK1ACGHXQmtyVVbJFQDxNoODg4eSRiFLB7t9r9pg8M= github.com/pion/webrtc/v4 v4.1.4/go.mod h1:Oab9npu1iZtQRMic3K3toYq5zFPvToe/QBw7dMI2ok4= github.com/pk910/dynamic-ssz v1.3.1-0.20260407212738-e97de623fd84 h1:J3H3PiaO4+ej5HTK/nG/wnAj0jx+Ek2+0s8o+zujI4I= github.com/pk910/dynamic-ssz v1.3.1-0.20260407212738-e97de623fd84/go.mod h1:NmeFF4jxzVwWC8cnEhUB7xMI++8hd/0OZvZHFrUvFfs= -github.com/pk910/go-eth2-client v0.0.0-20260331085057-05aefaa5ce81 h1:mHgrerDiro/np9FCoJ19EYsCyl/CXMHFi34o+j3T+rE= -github.com/pk910/go-eth2-client v0.0.0-20260331085057-05aefaa5ce81/go.mod h1:lwj0l8l51hIjqdQpODPea01JfE33nyM++1VGjBZau08= +github.com/pk910/go-eth2-client v0.0.0-20260401105128-4544cf21b737 h1:+tHLCpEGiohePzGMb1QhDjNLLPH43/dEeslfS4ajpRc= +github.com/pk910/go-eth2-client v0.0.0-20260401105128-4544cf21b737/go.mod h1:cmccJOSI3vYd1LKyU7jo8tR71vGaLmcWzK4xfefei0I= github.com/pk910/hashtree-bindings v0.1.0 h1:w7NyRWFi2OaYEFvo9ADcE/QU6PMuVLl3hBgx92KiH9c= github.com/pk910/hashtree-bindings v0.1.0/go.mod h1:zrWt88783JmhBfcgni6kkIMYRdXTZi/FL//OyI5T/l4= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= @@ -568,8 +570,6 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRI github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pressly/goose/v3 v3.27.0 h1:/D30gVTuQhu0WsNZYbJi4DMOsx1lNq+6SkLe+Wp59BM= github.com/pressly/goose/v3 v3.27.0/go.mod h1:3ZBeCXqzkgIRvrEMDkYh1guvtoJTU5oMMuDdkutoM78= -github.com/probe-lab/eth-das-guardian v0.2.2 h1:ygQjHt9jVD6yvujtBLuWPA3fYnPe6D5b2S7xOASYfm4= -github.com/probe-lab/eth-das-guardian v0.2.2/go.mod h1:xkhVpnhL1y2tmQERuaJTUGFAMb4eKWSVEBr0rhAB6ZM= github.com/prometheus/client_golang v0.8.0/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.23.2 h1:Je96obch5RDVy3FDMndoUsjAhG5Edi49h0RJWRi/o0o= github.com/prometheus/client_golang v1.23.2/go.mod h1:Tb1a6LWHB3/SPIzCoaDXI4I8UHKeFTEQ1YCr+0Gyqmg= diff --git a/handlers/api/api_das_guardian.go b/handlers/api/api_das_guardian.go index 8d85bfea..4f14c6ef 100644 --- a/handlers/api/api_das_guardian.go +++ b/handlers/api/api_das_guardian.go @@ -12,7 +12,7 @@ import ( "github.com/ethpandaops/dora/dbtypes" "github.com/ethpandaops/dora/services" "github.com/ethpandaops/dora/utils" - dasguardian "github.com/probe-lab/eth-das-guardian" + dasguardian "github.com/ethpandaops/eth-das-guardian" "github.com/sirupsen/logrus" ) diff --git a/handlers/api/api_das_guardian_mass.go b/handlers/api/api_das_guardian_mass.go index d0afbd0b..b890c035 100644 --- a/handlers/api/api_das_guardian_mass.go +++ b/handlers/api/api_das_guardian_mass.go @@ -13,7 +13,7 @@ import ( "github.com/ethpandaops/dora/dbtypes" "github.com/ethpandaops/dora/services" "github.com/ethpandaops/dora/utils" - dasguardian "github.com/probe-lab/eth-das-guardian" + dasguardian "github.com/ethpandaops/eth-das-guardian" "github.com/sirupsen/logrus" ) diff --git a/services/dasguardian.go b/services/dasguardian.go index 40feb624..11f88ab3 100644 --- a/services/dasguardian.go +++ b/services/dasguardian.go @@ -10,8 +10,8 @@ import ( "github.com/attestantio/go-eth2-client/spec" "github.com/attestantio/go-eth2-client/spec/phase0" "github.com/ethereum/go-ethereum/common/hexutil" - dasguardian "github.com/probe-lab/eth-das-guardian" - "github.com/probe-lab/eth-das-guardian/api" + dasguardian "github.com/ethpandaops/eth-das-guardian" + "github.com/ethpandaops/eth-das-guardian/api" "github.com/sirupsen/logrus" ) @@ -131,10 +131,13 @@ func (d *dasGuardianAPI) Init(ctx context.Context) error { } func (d *dasGuardianAPI) GetStateVersion() string { - fuluForkEpoch := d.GetFuluForkEpoch() currentEpoch := GlobalBeaconService.GetChainState().CurrentEpoch() - if currentEpoch >= phase0.Epoch(fuluForkEpoch) { + if currentEpoch >= phase0.Epoch(d.GetGloasForkEpoch()) { + return "gloas" + } + + if currentEpoch >= phase0.Epoch(d.GetFuluForkEpoch()) { return "fulu" } @@ -174,6 +177,19 @@ func (d *dasGuardianAPI) GetFuluForkEpoch() uint64 { return *specs.FuluForkEpoch } +func (d *dasGuardianAPI) GetGloasForkEpoch() uint64 { + specs := GlobalBeaconService.GetChainState().GetSpecs() + if specs == nil { + return 0 + } + + if specs.GloasForkEpoch == nil { + return math.MaxInt64 + } + + return *specs.GloasForkEpoch +} + func (d *dasGuardianAPI) GetNodeIdentity(ctx context.Context) (*api.NodeIdentity, error) { // Get the first available consensus client consensusClients := GlobalBeaconService.GetConsensusClients()